MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtRtiMtdDestinationList Class Reference
+ Inheritance diagram for DtRtiMtdDestinationList:
+ Collaboration diagram for DtRtiMtdDestinationList:

Public Member Functions

 DtRtiMtdDestinationList (caddr_t msg)
 Constructor.
 DtRtiMtdDestinationList (DtRtiMsg *msg)
virtual ~DtRtiMtdDestinationList ()
 Destructor.
virtual int get (DtBitMask &mask) const
 Find the first destination list within the message metadata.
virtual bool set (DtBitMask &destinations, unsigned int maskSize=0)
 Reserves space in RTI message buffer (if necessary) for destination bitmask metadata, encodes (serializes) bitmask, and copies into message buffer.
virtual bool addDestination (DtFederateHandle handle)
 Add destination for routing. Returns true on success, false otherwise.
virtual bool removeDestination (DtFederateHandle handle)
 Remove destination for routing. Returns true on success, false otherwise.
virtual void print (MAKRti::DtOutputStream &stream=MAKRti::DtDebug)
 Print this Metadata List.

Static Public Member Functions

static void setMaxDestinations (unsigned int maxDestinations)
 Set/Get the max number of destinations allowed for message.
static unsigned int getMaxDestinations ()
static unsigned long destinationIndex (unsigned long federateID)
 Return the destination index for the given federate ID.

Protected Attributes

const unsigned int myPayloadAlignment

Static Protected Attributes

static unsigned int theMaxDestinations = 100

Private Member Functions

 DtRtiMtdDestinationList (const DtRtiMtdDestinationList &)
 Copy CTOR Not Implemented – Copy Not Allowed!
DtRtiMtdDestinationListoperator= (const DtRtiMtdDestinationList &)
 Assignment Operator Not Implemented – Assignment Not Allowed!

Additional Inherited Members

Constructor & Destructor Documentation

DtRtiMtdDestinationList::DtRtiMtdDestinationList ( caddr_t  msg)

Constructor.

DtRtiMtdDestinationList::DtRtiMtdDestinationList ( DtRtiMsg msg)
DtRtiMtdDestinationList::~DtRtiMtdDestinationList ( )
virtual

Destructor.

DtRtiMtdDestinationList::DtRtiMtdDestinationList ( const DtRtiMtdDestinationList )
private

Copy CTOR Not Implemented – Copy Not Allowed!

Member Function Documentation

bool DtRtiMtdDestinationList::addDestination ( DtFederateHandle  handle)
virtual
unsigned long DtRtiMtdDestinationList::destinationIndex ( unsigned long  federateID)
static
int DtRtiMtdDestinationList::get ( DtBitMask mask) const
virtual

Find the first destination list within the message metadata.

If none found returns 0. If found copies decoded metatdata to bit mask object supplied (mask) and returns the size of the mask (in bytes). Resizes 'mask' if original supplied is not large enough to accommodate metadata destination list.

References DtBitMask::decode(), and DtRtiMetadata::locate().

Referenced by DtRoutePrinterFilter::doFilter(), DtInternalRoutePrinterFilter::doFilter(), DtUpdateInterRoutingFilter::doFilter(), DtInternalRoutingFilter::doFilter(), DtSmartForwardingProcessor::filterUpdateInterDestinations(), and DtRtiMsg::printHeader().

unsigned int DtRtiMtdDestinationList::getMaxDestinations ( )
static
DtRtiMtdDestinationList& DtRtiMtdDestinationList::operator= ( const DtRtiMtdDestinationList )
private

Assignment Operator Not Implemented – Assignment Not Allowed!

void DtRtiMtdDestinationList::print ( MAKRti::DtOutputStream &  stream = MAKRti::DtDebug)
virtual

Print this Metadata List.

Reimplemented from DtRtiMetadata.

References myPayloadAlignment, and theMaxDestinations.

bool DtRtiMtdDestinationList::removeDestination ( DtFederateHandle  handle)
virtual

Remove destination for routing. Returns true on success, false otherwise.

References destinationIndex(), getMaxDestinations(), and DtBitMask::setBit().

bool DtRtiMtdDestinationList::set ( DtBitMask destinations,
unsigned int  maskSize = 0 
)
virtual

Reserves space in RTI message buffer (if necessary) for destination bitmask metadata, encodes (serializes) bitmask, and copies into message buffer.

Returns true if successful, false otherwise.

References DtRtiMsg::addMetadata(), DtMetadataHeader_s::DtMetadataHeaderLenOrVal_u::DtMetadataHeaderPayloadLen_s::alignPad, DtMetadataHeader_s::DtMetadataHeaderCtl_u::DtMetadataHeaderCtl_s::copy, DtMetadataHeader_s::ctl, DtBitMask::encode(), DtMetadataHeader_s::DtMetadataHeaderCtl_u::field, DtRtiMetadata::getHeaderByType(), getMaxDestinations(), DtMetadataHeader_s::DtMetadataHeaderCtl_u::DtMetadataHeaderCtl_s::hasPayload, DtMetadataHeader_s::DtMetadataHeaderLenOrVal_u::len, DtBitMask::lengthToChars(), DtMetadataHeader_s::lenOrVal, DtRtiMetadata::locate(), DtMetadataHeader_s::DtMetadataHeaderCtl_u::DtMetadataHeaderCtl_s::more, DtRtiMetadata::myCopyEnabled, DtRtiMetadata::myMetaDataType, DtRtiMetadata::myMsg, DtRtiMetadata::myMsgAddr, DtRtiMetadata::myMsgLen, myPayloadAlignment, DtRtiMetadata::myStartAddr, NULL, DtMetadataHeader_s::DtMetadataHeaderLenOrVal_u::DtMetadataHeaderPayloadLen_s::pad, DtMetadataHeader_s::DtMetadataHeaderLenOrVal_u::DtMetadataHeaderPayloadLen_s::payloadAlignment, DtMetadataHeader_s::DtMetadataHeaderLenOrVal_u::DtMetadataHeaderPayloadLen_s::payloadLen, DtRtiMetadata::reverseTransmogrifyHeader(), and DtMetadataHeader_s::DtMetadataHeaderCtl_u::DtMetadataHeaderCtl_s::type.

Referenced by DtConnectionMgr::sendDirectedAndDelete(), DtConnectionMgr::sendDirectedStampedAndDelete(), DtConnectionMgr::sendDirectedStampedAnonymousAndDelete(), DtInteractionMgr::sendInteractionMsg(), DtObjectMgr::sendRegisterMsg(), DtFedExec::sendSyncPointReport(), and DtFedExec::sendSyncPointStatusReport().

void DtRtiMtdDestinationList::setMaxDestinations ( unsigned int  maxDestinations)
static

Set/Get the max number of destinations allowed for message.

References theMaxDestinations.

Referenced by DtConnectionMgr::enableSmartForwarding(), and DtRtiMsgForwarder::init().

Member Data Documentation

const unsigned int DtRtiMtdDestinationList::myPayloadAlignment
protected

Referenced by print(), and set().

unsigned int DtRtiMtdDestinationList::theMaxDestinations = 100
staticprotected

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

Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)