MAK RTIspy API Documentation for HLA 1.3
Public Member Functions | Protected Types | Protected Attributes
DtSmRtiConnection Class Reference
+ Inheritance diagram for DtSmRtiConnection:
+ Collaboration diagram for DtSmRtiConnection:

List of all members.

Public Member Functions

 DtSmRtiConnection (DtRtiSmSocket *socket)
 Constructors.
virtual ~DtSmRtiConnection ()
 Destructor.
virtual int send (const DtRtiMsg &msg, const MAKRti::DtInetAddr &addr=MAKRti::DtInetAddr::inaddrAny())
 Override DtConnection send method and assert if invoked.
virtual int send (const DtRtiMsg &msg, MAKRti::DtTransportType transport, const MAKRti::DtInetAddr &addr=MAKRti::DtInetAddr::inaddrAny(), unsigned int priority=0)
 Send a message. Non-blocking.
virtual bool flush ()
 Send buffered messages.
virtual int getMessageNetInfo (MAKRti::DtInetAddr *addr, MAKRti::DtTransportType *trans, DtU32 *priority=NULL)
 This method returns the size of the next available message in the shared memory queue along with additional information (e.g.
virtual bool isReliable ()
 Return true if the queue is in reliable delivery mode.
virtual int waitForMessages (MAKRti::DtTime waitTime=0.0)
 Wait (block) for the specified time until a message can be read.
virtual int waitUntilFull (MAKRti::DtTime waitTime=0.0)
 Wait (block) for the specified time until the shared memory is full.
virtual bool sm_shutdown (bool ruthless=false)
 Attempt to shutdown the queue.
virtual int subscriberCount () const
 Return count of subscribers connected to the shared memory queue.

Protected Types

typedef std::list< DtRtiMsg * > DtOutboundPendingList
 for reliable connections only

Protected Attributes

DtRtiSmSocketmySmSocket
DtOutboundPendingList myObPendingMessages

Member Typedef Documentation

typedef std::list< DtRtiMsg* > DtSmRtiConnection::DtOutboundPendingList [protected]

for reliable connections only


Constructor & Destructor Documentation

Constructors.

Destructor.


Member Function Documentation

Send buffered messages.

Returns indication of whether the flush is complete or incomplete.

Reimplemented from DtRtiConnection.

References DtSMQ_MSG_BESTEFFORT, DtSMQ_MSG_RELIABLE, DtRtiSmSocket::flush(), myObPendingMessages, mySmSocket, and DtRtiSmSocket::sendMessage().

Referenced by DtSmConnectionMgr::processConnections().

int DtSmRtiConnection::getMessageNetInfo ( MAKRti::DtInetAddr *  addr,
MAKRti::DtTransportType *  trans,
DtU32 *  priority = NULL 
) [virtual]

This method returns the size of the next available message in the shared memory queue along with additional information (e.g.

destination address, transport method, and priority) needed by a forwarder or shared memory queue manager net I/O handler to pass messages to a network.

References DtSMQ_MSG_RELIABLE, DtSMQ_PRIO_MASK, DtRtiSmSocket::getMsgTransportInfo(), and mySmSocket.

Return true if the queue is in reliable delivery mode.

References mySmSocket, and DtRtiSmSocket::queueIsReliable().

Referenced by DtSmConnectionMgr::send().

int DtSmRtiConnection::send ( const DtRtiMsg msg,
const MAKRti::DtInetAddr &  addr = MAKRti::DtInetAddr::inaddrAny() 
) [virtual]

Override DtConnection send method and assert if invoked.

Shared memory connections require the additional transport parameter at a minimum so the shared memory queue manager can forward message via the appropriate net I/O socket

Reimplemented from DtRtiConnection.

Referenced by DtSmConnectionMgr::send().

int DtSmRtiConnection::send ( const DtRtiMsg msg,
MAKRti::DtTransportType  transport,
const MAKRti::DtInetAddr &  addr = MAKRti::DtInetAddr::inaddrAny(),
unsigned int  priority = 0 
) [virtual]
bool DtSmRtiConnection::sm_shutdown ( bool  ruthless = false) [virtual]

Attempt to shutdown the queue.

This should only be invoked by the queue manager before destroying the shared memory pool.

References mySmSocket, and DtSmSocket__rti__::shutdownQueue().

Referenced by DtSmConnectionMgr::sm_shutdown().

int DtSmRtiConnection::subscriberCount ( ) const [virtual]

Return count of subscribers connected to the shared memory queue.

References mySmSocket, and DtSmSocket__rti__::subscriberCount().

Referenced by DtSmConnectionMgr::subscriberCount().

int DtSmRtiConnection::waitForMessages ( MAKRti::DtTime  waitTime = 0.0) [virtual]

Wait (block) for the specified time until a message can be read.

Return status: 0 if messages are ready, > 0 if wait expired, or < 0 if error

References mySmSocket, and DtRtiSmSocket::waitForMessages().

Referenced by DtSmConnectionMgr::wait().

int DtSmRtiConnection::waitUntilFull ( MAKRti::DtTime  waitTime = 0.0) [virtual]

Wait (block) for the specified time until the shared memory is full.

Return status: 0 if full, > 0 if wait expired, or < 0 if error

References mySmSocket, and DtRtiSmSocket::waitUntilFull().


Member Data Documentation

Referenced by flush(), and send().


The documentation for this class was generated from the following files:

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)