diff -r 578be2adaf3e -r 307f4279f433 Adaptation/GUID-30978E00-D244-44CD-8F4E-9676DF172A52.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Adaptation/GUID-30978E00-D244-44CD-8F4E-9676DF172A52.dita Fri Oct 15 14:32:18 2010 +0100 @@ -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