CCommsChannelSendQueue Class Reference

class CCommsChannelSendQueue : public CActive

This class adds an input buffer to a comms framework CFChannel using an array to store unsent messages.

Inherits from

Constructor & Destructor Documentation

CCommsChannelSendQueue(RCFChannel &)

CCommsChannelSendQueue(RCFChannel &aChannel)[private]

Constructor for CCommsChannelSendQueue

Parameters

RCFChannel & aChannel

~CCommsChannelSendQueue()

~CCommsChannelSendQueue()

Destructor for CCommsChannelSendQueue

Member Functions Documentation

DoCancel()

voidDoCancel()[protected, virtual]

Cancel CCommsChannelSendQueue NotifySpaceAvailable().

NewL(RCFChannel &)

CCommsChannelSendQueue *NewL(RCFChannel &aChannel)[static]
Generates a new CCommsChannelSendQueue object
leave
KErrNoMemory

Parameters

RCFChannel & aChannelthe send channel on which to send messages

ReserveSpace()

TInt ReserveSpace()

Called to make sure a message can be put on the queue at this time in this context. For the purpose it is used it would be a nice optimization to also check whether there is actually room in the output channel first as well, as the space then wouldn't be needed.

RunL()

voidRunL()[protected, virtual]
Active object RunL method is called when space becomes available on the send queue. Attempts to send the first message in the queue.
leave
any code from RCFChannel.Send() except KErrOverflow

Send(const TCFMessage &)

TInt Send(const TCFMessage &aMsg)

Send method either sends the requested message immediately or stores it internally to send when space is available param aMsg the message to be sent

Parameters

const TCFMessage & aMsg

Member Data Documentation

RCFChannel & iChannel

RCFChannel &iChannel[private]

RArray< TCFMessage > iMsgQueue

RArray< TCFMessage >iMsgQueue[private]