CDI_Execute_CDMMessage
Sends another CDM message request through layers of
CDM filters prior to being received by a translator CDM (also referred
to as a base CDM) where the message is converted to a SuperHACB. This
function is used only by filter CDMs.
- Thread Context:Non-Blocking
Syntax
LONG CDI_Execute_CDMMessage (
LONG npaDeviceID,
LONG msgPutHandle,
LONG cdiBindHandle,
LONG (*callback)(
struct CDMMessageStruct *cdmMessage,
LONG callbackParameter,
LONG returnParameter,
LONG completionCode),
LONG callbackParameter
);
Parameters
- npaDeviceID
- (IN) The Media Manager object ID. (Refer to CDM_Inquiry.)
- msgPutHandle
- Handle to the CDM message (CDMMessageStruct) being passed downward. The value of
this parameter is obtained from the msgPutHandle field
of the CDMMessageStruct.
- cdiBindHandle
- (IN) A unique handle generated by the CDM to identify
the device to which it has bound. From this handle, the CDM must
be able to locate the target device's information, including the HAM-generated deviceHandle and
the NWPA-generated npaBusID.
.
- callback
- (IN) Address of the filter CDM's callback function.
NWPA calls this function when the translator (base) CDM completes
the CDM message associated with the request.
- callbackParameter
- Parameter returned in the CDM's callback routine.
Return Values
The following table lists return values and descriptions.
Remarks
CDI_Execute_Message is used by filter CDMs
to pass messages to the next filter. Messages are allocated using CDI_Allocate_CDMMessage.