This 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; }
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.