ISpNotifySource::SetNotifyCallbackFunction (Microsoft Speech Platform)

Microsoft Speech Platform SDK 11

Microsoft Speech Platform

ISpNotifySource::SetNotifyCallbackFunction

ISpNotifySource::SetNotifyCallbackFunction sets up this instance to send notifications using a standard C-style callback function.

HRESULT SetNotifyCallbackFunction(
   SPNOTIFYCALLBACK   *pfnCallback,
   WPARAM              wParam,
   LPARAM              lParam
);

Parameters

pfnCallback
[in] The notification callback function to be used.
wParam
[in] Constant WPARAM value that will be passed to the pfnCallback function when it is called.
lParam
[in] Constant LPARAM value that will be passed to the pfnCallback function when it is called.

Return values

Value Description
S_OK Function completed successfully.
E_INVALIDARG Callback function is invalid.
FAILED (hr) Appropriate error message.

Remarks

It is the responsibility of the client code to control the lifetime of a notification. To remove an installed notify callback, call ISpEventSource::SetNotifySink (NULL). The final release of an object that supports ISpEventSource will automatically remove an installed notify callback.

The SAPI implementation uses a hidden window to call back the client on the same thread that was used to initialize the event source. Notification callbacks are the result of processing a window message. When this notification mechanism is used:

  1. The SPNOTIFYCALLBACK method will always be called on the thread that initialized the event source or notify translator object.
  2. The thread must have a window message pump.

The SPNOTIFYCALLBACK function is declared as follows:

    typedef void __stdcall SPNOTIFYCALLBACK(WPARAM wParam, LPARAM lParam);