Enables the MSPP channel to begin processing data.
DWORD mspEnableChannel ( MSPHD chnhd )
Argument |
Description |
chnhd |
MSPP channel handle. |
Return value |
Description |
SUCCESS |
|
CTAERR_BAD_ARGUMENT |
Function argument includes an invalid value or a required pointer argument is NULL. |
CTAERR_INVALID_CTAHD |
Handle is invalid. |
CTAERR_INVALID_HANDLE |
Invalid handle was passed as an argument to this function. |
MSPERR_CHANNEL_NOT_CONNECTED |
Specified MSPP channel is not connected to any endpoints. |
MSPERR_DRIVER_COMMAND_FAILED |
SPI command failed. |
MSPERR_INTERNAL_HANDLE |
Specified MSPP channel is not valid. |
MSPERR_INVALID_HANDLE |
Specified MSPP channel is not valid. |
Event |
Description |
MSPEVN_ENABLE_CHANNEL_DONE |
Generated when the data flow through an MSPP channel is enabled or resumed in response to an mspEnableChannel function call. The event.value field can contain the following: CTA_REASON_FINISHED MSPRSN_FAILED_TO_START MSPP service is unable to start the on-board resource. The event.objhd indicates the chnhd of the enabled channel. |
Created MSPP channels are disabled, by default, and must be enabled before data is sent or received. When invoking mspEnableChannel, specify the channel handle (chnhd) of the connected channel. As soon as data is transferred, the connection channel processes the data and passes it on to the endpoint at the opposite end of the connection.
mspEnableChannel can also be used to re-establish data flow through a channel that had previously been disabled.
mspCreateChannel, mspDisableChannel
ret = mspEnableChannel( hChan);
if (ret != SUCCESS)
return FAILURE;
// Wait for event
ctaWaitEvent( hCtaQueHd, &Event, CTA_WAIT_FOREVER );
// Check the reason code
if ( Event.id != MSPEVN_ENABLE_CHANNEL_DONE ||
Event.value != CTA_REASON_FINISHED )
return FAILURE;