diff -r 89d6a7a84779 -r 25a17d01db0c Symbian3/PDK/Source/GUID-30978E00-D244-44CD-8F4E-9676DF172A52.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/PDK/Source/GUID-30978E00-D244-44CD-8F4E-9676DF172A52.dita Fri Jan 22 18:26:19 2010 +0000 @@ -0,0 +1,39 @@ + + + + + +Driver-side +HandlingThis document describes how device drivers handle asynchronous +requests. +

Drivers generally implement the DoRequest() function +in the LDD to handle the received asynchronous messages.

+

The implementation reads the request type and other passed arguments, and +initiates handling of the request appropriately.

+

The return value of this function only indicates the status of the message +reception to the driver. It does not actually indicate the request completion +result.

+TInt DExDriverLogicalChannel::DoRequest(TInt aReqNo, TRequestStatus* aStatus, + TAny* a1, TAny* a2) + { + switch (aReqNo) + { + case RExDriverChannel::ERequestTransmitData: + // Call TransmitData function + r = TransmitData ((const TDesC8*)a1); + // The status object is stored + // to be used when notifying the completion of the + // request at a later point. + // + iTxDataStatus = aStatus; + break; + } + return r; + } +
\ No newline at end of file