SAPI - Implement Get/SetObjectToken.

This commit is contained in:
Reece H. Dunn
2016-01-24 18:56:37 +00:00
parent bc0b445281
commit fe3053f849
+17 -2
View File
@@ -59,10 +59,12 @@ struct TtsEngine
WAVEFORMATEX **format);
private:
ULONG refCount;
ISpObjectToken *objectToken;
};
TtsEngine::TtsEngine()
: refCount(1)
, objectToken(NULL)
{
InterlockedIncrement(&ObjectCount);
}
@@ -70,6 +72,8 @@ TtsEngine::TtsEngine()
TtsEngine::~TtsEngine()
{
InterlockedDecrement(&ObjectCount);
if (objectToken)
objectToken->Release();
}
ULONG __stdcall TtsEngine::AddRef()
@@ -101,12 +105,23 @@ HRESULT __stdcall TtsEngine::QueryInterface(REFIID iid, void **object)
HRESULT __stdcall TtsEngine::GetObjectToken(ISpObjectToken **token)
{
return E_NOTIMPL;
if (!token)
return E_POINTER;
*token = objectToken;
if (objectToken)
objectToken->AddRef();
return S_OK;
}
HRESULT __stdcall TtsEngine::SetObjectToken(ISpObjectToken *token)
{
return E_NOTIMPL;
if (objectToken)
objectToken->Release();
objectToken = token;
if (objectToken)
objectToken->AddRef();
return S_OK;
}
HRESULT __stdcall