![]() |
MAK RTIspy API Documentation for HLA 1516
|
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. | |
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! | |
| DtRtiMtdDestinationList & | operator= (const DtRtiMtdDestinationList &) |
| Assignment Operator Not Implemented -- Assignment Not Allowed! | |
| DtRtiMtdDestinationList::DtRtiMtdDestinationList | ( | caddr_t | msg | ) |
Constructor.
| DtRtiMtdDestinationList::~DtRtiMtdDestinationList | ( | ) | [virtual] |
Destructor.
| DtRtiMtdDestinationList::DtRtiMtdDestinationList | ( | const DtRtiMtdDestinationList & | ) | [private] |
Copy CTOR Not Implemented -- Copy Not Allowed!
| bool DtRtiMtdDestinationList::addDestination | ( | DtFederateHandle | handle | ) | [virtual] |
Add destination for routing. Returns true on success, false otherwise.
References destinationIndex(), getMaxDestinations(), and DtBitMask::setBit().
| unsigned long DtRtiMtdDestinationList::destinationIndex | ( | unsigned long | federateID | ) | [static] |
Return the destination index for the given federate ID.
References getMaxDestinations().
Referenced by addDestination(), DtInteractionClassInfo::addRemotePassiveSubscription(), DtRtiObject::addRemoteSubscribe(), DtInteractionClassInfo::addRemoteSubscription(), DtRtiMsgForwarder::ConnectionInfo::ConnectionInfo(), DtFedExec::deleteFederate(), DtInteractionClassInfo::deleteRemoteSubscription(), DtSmartForwardingProcessor::federateJoined(), DtSmartForwardingProcessor::federateResigned(), DtFedExec::getNextFreeFedHandle(), DtFedExec::processJoinConfirm(), DtFedExec::processResign(), DtRtiObject::remotePassiveSubscribe(), removeDestination(), DtRtiObject::removeDiscoveredClass(), DtFedExec::removeFederateConnection(), DtRtiObject::removeRemoteSubscribe(), DtFedExec::restore(), DtInteractionMgr::sendInteractionMsg(), DtRtiObject::setDiscoveredClass(), DtRtiMsgForwarder::ConnectionInfo::setFederateInfo(), and DtFedExec::tickJoin().
| 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(), DtUpdateInterRoutingFilter::doFilter(), DtSmartForwardingProcessor::filterUpdateInterDestinations(), and DtRtiMsg::printHeader().
| unsigned int DtRtiMtdDestinationList::getMaxDestinations | ( | ) | [static] |
References theMaxDestinations.
Referenced by addDestination(), destinationIndex(), DtFedExec::DtFedExec(), DtSmartForwardingProcessor::federateJoined(), DtSmartForwardingProcessor::filterUpdateInterDestinations(), DtRtiObject::getDestinations(), DtFedExec::getNextFreeFedHandle(), DtRtiMsg::printHeader(), DtInteractionClassInfo::publish(), DtObjectClassInfo::publish(), removeDestination(), DtFedExec::restore(), and set().
| DtRtiMtdDestinationList& DtRtiMtdDestinationList::operator= | ( | const DtRtiMtdDestinationList & | ) | [private] |
Assignment Operator Not Implemented -- Assignment Not Allowed!
| 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 DtInteractionMgr::sendInteractionMsg(), DtObjectMgr::sendReliableUpdateMsg(), 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().
const unsigned int DtRtiMtdDestinationList::myPayloadAlignment [protected] |
Referenced by set().
unsigned int DtRtiMtdDestinationList::theMaxDestinations = 100 [static, protected] |
Referenced by getMaxDestinations(), and setMaxDestinations().