CommsFW::MCommsTransportSender Class Reference

class CommsFW::MCommsTransportSender : public Messages::MTransportSender

Inherits from

Public Member Functions
void PostMessage (const Messages::TRuntimeCtxId &, const Messages::TRuntimeCtxId &, const Meta::SMetaData &)
void PostMessage (const TCFMessage &)
void PostMessage (const Messages::TRuntimeCtxId &, const Messages::TRuntimeCtxId &, const TDesC8 &)
void SendMessageSync (const TCFMessage &)

Member Functions Documentation

PostMessage(const Messages::TRuntimeCtxId &, const Messages::TRuntimeCtxId &, const Meta::SMetaData &)

void PostMessage ( const Messages::TRuntimeCtxId & aPostFrom,
const Messages::TRuntimeCtxId & aPostTo,
const Meta::SMetaData & aMessage
) [virtual]

Blocking send functions. If no outbound queue space is available they block until either space becomes available or a GENEROUS time limit is exceeded, in which case it panics diagnostically. This relieves the caller of the burden of supporting an error case which will only be seen in a grossly malfunctioning system and so will be hard to test and difficult to recover from. To avoid deadlock due to the peer being in the same state the inbound queue is drained while waiting for space. The receipt order is always preserved.

Parameters

const Messages::TRuntimeCtxId & aPostFrom
const Messages::TRuntimeCtxId & aPostTo
const Meta::SMetaData & aMessage

PostMessage(const TCFMessage &)

void PostMessage ( const TCFMessage & aMessage ) [pure virtual]

Parameters

const TCFMessage & aMessage

PostMessage(const Messages::TRuntimeCtxId &, const Messages::TRuntimeCtxId &, const TDesC8 &)

void PostMessage ( const Messages::TRuntimeCtxId & aPostFrom,
const Messages::TRuntimeCtxId & aPostTo,
const TDesC8 & aMessage
) [pure virtual]

Parameters

const Messages::TRuntimeCtxId & aPostFrom
const Messages::TRuntimeCtxId & aPostTo
const TDesC8 & aMessage

SendMessageSync(const TCFMessage &)

void SendMessageSync ( const TCFMessage & aMessage ) [pure virtual]

The caller intends to block for some out-of-band synchronisation mechanism (eg a semaphore) and so dispatch must be done immediately as part of this sending call if the peer object is running in the same worker thread, so that the recipient can signal the caller if appropriate. Such synchronisation mechanisms are strongly discouraged but exist in some legacy code.

Parameters

const TCFMessage & aMessage