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 | Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Protected Member Functions
DtRtiAssistantPeer Class Reference

DtRtiAssistantPeer manages the sharing of information between one Assistant to other Assistants using the same multicast address. More...

+ Collaboration diagram for DtRtiAssistantPeer:

Classes

struct  cmpByMacAddr
struct  cmpByMacAddrThenFam
struct  DtPeerMsgStats

Public Types

typedef std::map< std::pair
< DtString,
DtInetUtils::DtInetAddrFamily >
, DtTcpMsgSocketMgr
*, cmpByMacAddrThenFam
DtTcpServerMap

Public Member Functions

 DtRtiAssistantPeer (int id, int port, const MAKRti::DtInetAddr &ipv4Addr, const MAKRti::DtInetAddr &ipv6Addr, int ttl, bool disableMulticast, const DtNetU128 &uuid)
 Constructor.
virtual ~DtRtiAssistantPeer ()
 Destructor.
virtual bool tick (double timeout=0)
 Do the actual message processing.
virtual void setMsgFactory (DtAssistantMessageFactory *fact)
 Set the message factory.
virtual DtAssistantMessageFactorymsgFactory () const
 Get the message factory.
virtual void sendQueryMsg ()
 Sends a query message to the other Assistants for their information.
virtual void sendForeignQueryMsg (const DtAssistantInfo &assistant)
 Sends a query message to the other Assistants for their information.
virtual void sendForeignQueryMsg (const DtAssistantConnectionStruct &assistant)
 Sends a query message to the other Assistants for their information.
virtual void sendForeignBreakMsg (const DtAssistantInfo &assistant)
 Sends a break message to the other Assistant.
virtual void sendAssistantConnMsg (const DtAssistantConnectionStruct &assistant, DtAssistantHandshakeType handshakeType, const DtAssistantConnectionId &id, const DtAssistantConnectionId &ackId=DtAssistantUuidNIL)
 Sends a Assistant Connection message.
virtual void sendInfoMsg (const DtRtiConnectionAndConfiguration &connsAndConfigs, unsigned memoryPeriod, bool acceptRemoteCommands, bool removal)
 Sends the information from this Assistant to the other Assistants.
virtual void sendLightweightInfoMsg (const DtRtiConnectionAndConfiguration &connsAndConfigs, unsigned memoryPeriod)
 Sends the local lightweight connection information from this Assistant to the other Assistants.
virtual void sendLicServerInfoMsg (const DtLicServerSet &licServers, bool removal)
 Sends the information from this Assistant to the other Assistants.
virtual void sendForwarderConnectMsg (int compId, const DtString &targetHost, const MAKRti::DtInetAddr &targetAddress, int targetPort, const DtAssistantInfo &assistant)
 Sends a connect to forwarder message to a forwarder component.
virtual void sendStartRtiForwarderMsg (const DtRtiConnectionInfoDataPair &conn, const DtRtiConnectionConfigurationInfo &config, const DtAssistantInfo &assistant=DtAssistantInfo())
 Sends a message to another Assistant to start an rtiexec with the given connection parameters.
virtual void sendStartRtiexecMsg (const DtRtiConnectionInfoDataPair &conn, const DtRtiConnectionConfigurationInfo &config, const DtAssistantInfo &assistant=DtAssistantInfo())
 Sends a message to another Assistant to start an rtiexec with the given connection parameters.
virtual void sendObserveFederationsMsg (const DtRtiConnectionInfo &conn, bool observe, const DtAssistantInfo &assistant=DtAssistantInfo(), int compId=-1)
 Sends a message to another Assistant to either begin or stop observing the federations of the given connection.
virtual void sendObserveRtiExecLogMsg (const DtAssistantInfo &assistant, int compId, bool observe)
 Sends a message to another Assistant to either begin or stop observing the given rtiExec printer connection.
virtual void sendObserveRtiexecRspMsg (DtNotifyLevelType notifyLevel, int compId, const DtAssistantInfo &destination)
 Sends an observe response message to a remote Assistant observing a local rtiexec.
virtual void sendObserveRtiForwarderMsg (const DtRtiConnectionInfo &conn, bool observe, const DtAssistantInfo &assistant, int compId)
 Sends a message to another Assistant to either begin or stop observing the RTI Forwarder on the given connection.
virtual void sendFederationStateMsg (const DtRtiConnectionInfoDataPair &conn, const DtAssistantFederationInfo &federation, bool isRemoval)
 Sends a message to the other Assistants with the state of the given federation.
virtual void sendNoFederationMsg (const DtRtiConnectionInfoDataPair &conn)
 Sends a message to the other Assistants informing them that a local rtiexec has no federations.
virtual void sendFederateResignMsg (const DtAssistantInfo &assistant, int compId, int federationHdl, int federateHdl)
 Sends a force federate resign message to a remote Assistant to be forwarded to a remote rtiexec.
virtual void sendFederationDestroyMsg (const DtAssistantInfo &assistant, int compId, int federationHdl)
 Sends a force federation destroy message to a remote Assistant to be forwarded to a remote rtiexec.
virtual void sendRidParamsRequestMsg (const DtAssistantInfo &assistant, int compId)
 Sends a message to a remote Assistant to get the RID parameters of one of its rtiexecs.
virtual void sendLogRequestMsg (const DtAssistantInfo &assistant, int compId, unsigned maxLogSize)
 Sends a message to a remote Assistant to get the log, or at least the most recent entries up to a size of maxLogSize bytes, of one of its rtiexecs.
virtual bool sendLatencyTestRequestMsg (const DtAssistantInfo &assistant, int compId, int federationHdl, int federateHdl, bool runTest, bool continuous, bool shouldHalt, bool observing, unsigned int interactionPeriod, unsigned int numInteractions, unsigned int payloadBytes)
 Sends a latency test request message to a remote Assistant to be forwarded to a remote rtiexec.
virtual void sendNetworkTestEnableMsg (const DtAssistantInfo &assistant, int compId, int federationHdl, bool enable)
 Sends a message enabling or disabling network testing for the given federation.
virtual void sendRtiexecExitMsg (const DtAssistantInfo &assistant, int compId)
 Sends a message to a remote Assistant asking it to shutdown one of its local rtiexecs.
virtual void sendNotifyObserveMsg (bool isObserving)
 Sends a message to other assistants letting them know that we are observing notification messages.
virtual void sendNotifyMsg (const MAKRti::DtString &text, DtNotifyLevelType notifyLevel, const MAKRti::DtString &sourceName)
 Sends a notification message to other assistants.
virtual void sendRemovalMsg ()
 Sends a removal message to the other Assistants to inform them that this Assistant should be removed from their lists of known Assistants.
virtual void sendFederateInfoReqMsg (const DtAssistantInfo &astnt, const DtRtiConnectionInfo &conn, const MAKRti::DtString &federation=MAKRti::DtString::nullString(), unsigned federateHandle=0)
 Sends a message to the other Assistants which queries for federate info.
virtual void sendFederateInfoRespMsg (const DtRtiConnectionInfo &conn, std::vector< const DtAssistantFederateInfo * > federates)
 Sends a message to the other Assistants in response to a federate info request with information on one or more matching federates.
virtual void sendNetStatsObservationRequestMsg (const DtAssistantInfo &astnt, DtAssistantObservationType observationType, int compId, bool observe=false, unsigned int interval=0)
 Sends a Observation Request to an assistant.
virtual void sendNetStatsObservationResponseMsg (const DtAssistantInfo &astnt, DtAssistantObservationType observationType, int compId, bool observe)
virtual void sendNetStatsStringUpdateReqMsg (const DtAssistantInfo &assistant, int compId, DtAssistantHandleType handletype, const std::set< DtU32 > &handles)
virtual void sendNetStatsStringUpdate (const DtAssistantInfo &assistant, int compId, DtAssistantHandleType handletype, const std::vector< DtU32 > &objectInstanceHandles, const std::vector< MAKRti::DtString > &objectInstanceNames)
virtual void forwardNetStatsUpdate (const DtAssistantMsg &msg, const std::set< DtAssistantInfo > &observers)
virtual void sendFedDisconnectNetStatsObsRespMsg (DtAssistantObservationType observationType, int compId, const std::set< DtAssistantInfo > &observers)
virtual void sendNetStatsInitStateRequestMsg (const DtAssistantInfo &astnt, DtAssistantObservationType observationType, int compId)
virtual void sendFomTreeData (const DtAssistantInfo &astnt, int compId, const std::vector< MAKRti::DtU32 > &objectClassHandles, const std::vector< MAKRti::DtU32 > &parentObjectClassHandles, const std::vector< MAKRti::DtString > &objectClassNames, const std::vector< MAKRti::DtU32 > &interactionClassHandles, const std::vector< MAKRti::DtU32 > &parentInteractionClassHandles, const std::vector< MAKRti::DtString > &interactionClassNames)
virtual void sendNetStatsAttrStringUpdate (const DtAssistantInfo &astnt, int compId, const std::vector< MAKRti::DtU32 > &objectClassHandles, const std::vector< MAKRti::DtU32 > &attributeHandles, const std::vector< MAKRti::DtString > &attributeNames, const std::vector< MAKRti::DtU32 > &parentClassHandles, const std::vector< MAKRti::DtU32 > &totalObjHandles)
virtual void sendNetStatsParamStringUpdate (const DtAssistantInfo &astnt, int compId, const std::vector< MAKRti::DtU32 > &interClassHandles, const std::vector< MAKRti::DtU32 > &parameterHandles, const std::vector< MAKRti::DtString > &parameterNames, const std::vector< MAKRti::DtU32 > &parentInterHandles, const std::vector< MAKRti::DtU32 > &totalInterHandles)
virtual void sendNetStatsAttrParamStringUpdate (const DtAssistantInfo &astnt, int compId, const std::vector< MAKRti::DtU32 > &objectClassHandles, const std::vector< MAKRti::DtU32 > &attributeHandles, const std::vector< MAKRti::DtString > &attributeNames, const std::vector< MAKRti::DtU32 > &parentClassHandles, const std::vector< MAKRti::DtU32 > &totalObjHandles, DtAssistantHandleType objInterType, DtAssistantHandleType attrParamType, DtAssistantHandleType parentClassType)
virtual void sendNetStatsFomAttrParamUpdate (const DtAssistantInfo &astnt, int compId, DtAssistantHandleType handleType, bool isInit, const std::vector< MAKRti::DtU32 > &objectClassHandles, const std::vector< MAKRti::DtU32 > &attributeHandles, const std::vector< bool > &attributePub, const std::vector< bool > &attributeSub, const std::vector< DtTransportType > &attributeTransport, const std::vector< DtOrderType > &attributeOrder, const std::vector< bool > &objectPub, const std::vector< bool > &objectSub, const std::vector< MAKRti::DtU32 > &objPubSubHandles)
virtual void forwardMsg (const DtAssistantMsg &msg, int astntCompId, const DtAssistantInfo &dest=DtAssistantInfo())
 Forwards the given message to the other Assistants over the given interface.
virtual int port () const
 Returns the Assistant peer port.
virtual MAKRti::DtInetAddr ipv4Address () const
 Returns the Assistant IPv4 peer address.
virtual MAKRti::DtInetAddr ipv6Address () const
 Returns the Assistant IPv6 peer address.
virtual int id () const
 Returns the Assistant peer ID.
virtual const MAKRti::DtInetAddr & currentNetworkInterfaceAddr () const
 Returns the network interface address of the current socket being processed.
virtual const DtInetEndpoint & currentReceivedEndpoint () const
 Returns the endpoint for the current message being processed.
virtual const MAKRti::DtInetAddr & destinationAddress (const DtInetAddr &msgDestination) const
 Returns the message destination if not ANY; otherwise, the current networkInterface address.
virtual void getMsgStats (unsigned &totalRecv, double &recvPerSecOverall, double &recvPerSecCurr, unsigned &totalProc, double &procPerSecOverall, double &procPerSecCurr, unsigned &totalSent, double &sentPerSecOverall, double &sentPerSecCurr)
 Get message statistics.
virtual DtU32 maxMsgSize () const
 Gets the maximum message size.
void sendMsgToAssistant (const DtAssistantInfo &ifAddr, DtAssistantMsg &msg)
 Sends the message to the specified Assistant.
virtual void addForeignAssistantConnection (const DtAssistantConnectionStruct &ipAddr, const MAKRti::DtInetAddr &ifAddr)
 Add connection information for a foreign assistant.
virtual void removeForeignAssistantConnection (const DtAssistantConnectionStruct &ipAddr)
 Remove connection information for a foreign assistant.
virtual void setUuid (const DtAssistantUuid &uuid)
 Set the UUID. This should be done outside of the peer once its determined (via file read in connection manager or other means)
virtual const DtAssistantUuiduuid () const
virtual const DtHostNameAddresshostNameAddress () const
virtual void setIgnoreAllPeerCommunication (bool valToSet)
 set/get myIgnoreAllPeerCommunication
virtual bool isIgnoreAllPeerCommunication () const
virtual void addIgnoredAddress (const MAKRti::DtInetAddr &ipAddr)
 Add address to ignore.
virtual void removeIgnoredAddress (const MAKRti::DtInetAddr &ipAddr)
 Remove address to ignore.
void addConnectionLostCallback (DtAssistantConnectionLostCallback cb, void *usr)
void removeConnectionLostCallback (DtAssistantConnectionLostCallback cb, void *usr)
Callback addition and removal methods

Adds/removes callback for a particular message kind

virtual void addMsgCallback (DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn, void *usr)
 Adds a callback for notification for the discovery of a new network interface on the local machine.
virtual void removeMsgCallback (DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn, void *usr)
 Adds a callback for notification for the discovery of a new network interface on the local machine.
virtual void addInterfaceFoundCallback (DtInterfaceFoundCb cb, void *usr)
 Adds a callback for notification for the discovery of a new network interface on the local machine.
virtual void removeInterfaceFoundCallback (DtInterfaceFoundCb cb, void *usr)
 Adds a callback for notification for the discovery of a new network interface on the local machine.

Public Attributes

DtCbInfoStruct(DtInterfaceFoundCb)
protected MAKRti::DtInetAddr 
myIpv4Addr
 The IPv4 multicast or broadcast address used by the assistant peer.
MAKRti::DtInetAddr myIpv6Addr
 The IPv6 multicast address used by the assistant peer.
int myTtl
 The TTL (Time To Live) for Assistant communication.
int myId
 A unique ID assigned to this assistant peer.
std::map< MAKRti::DtInetAddr,
DtUdpMsgSocket * > 
mySockets
 A map of network interface addresses to the sockets used on those interfaces to communicate with other Assistants.
std::map< MAKRti::DtInetAddr,
DtRemoteAssistantSet
myInterfaceToUdpForeignConnections
 A map of network interface addresses to foreign connections reachable from that interface.
std::map
< DtAssistantConnectionStruct,
MAKRti::DtInetAddr,
cmpByPublicAddress
myUdpForeignConnectionToInterface
 A map of foreign connections to the interfaces used to reach them.
std::map
< DtAssistantConnectionStruct,
std::pair< DtTcpMsgSocket
*, MAKRti::DtInetAddr >
, cmpByConnectionId
myTcpForeignConnections
std::set< DtTcpMsgSocket * > myServerSocketsToDelete
std::vector< std::pair
< DtAssistantConnectionStruct,
DtTime > > 
myClientSocketsDeleted
std::map< DtTcpMsgSocket
*, DtAssistantConnectionStruct
myAssistantConnectionsRemoved
std::map< MAKRti::DtInetAddr,
DtUdpMsgSocket * >::iterator 
mySocketIter
 Iterator of the current socket being processed or the next one that will be processed.
DtTcpMsgSocketmyCurTcpSocket
 The current TCP socket being processed or the next one that will be processed.
MAKRti::DtInetAddr myCurrNetworkInterfaceAddr
 The address of the current network interface being read from.
MAKRti::DtInetEndpoint myCurrReceivedEndpoint
 The endpoint.
DtAssistantMsgCbMgr myMsgCbMgr
 Message callback manager.
DtAssistantMessageFactorymyMessageFactory
 The message factory.
DtAssistantDfltMsgFactory myDefaultMessageFactory
 Default message factory.
DtClock myClock
 Clock for timeouts and periodic update messages.
DtTime myNextCheckInterfacesTime
 Time to recheck the interfaces that are available.
DtTime myNextClearCheckedInterfacesTime
 Time to clear checked interfaces.
DtTime myNextCheckDeadTcpConnections
 Time to check the TCP connections.
DtTime myCheckInterfacesInterval
 Interval at which periodic interface checking should be performed.
DtTime myClearCheckedInterfacesInterval
 Interval at which periodic clearing of checked interfaces should be performed.
DtTime myCheckTcpConnectionsInterval
 Interval at which periodic interface checking should be performed.
DtTime myNextProcessConnectionsTime
 Time to process connections (TCP)
DtTime myNextProcessConnectionsInterval
 Interval at which periodic interface checking should be performed.
DtTime myBeginProcessingTime
 The time when this assistant began processing messages.
DtTime myNextStatsTime
 The next time to compute message statistics.
DtTime myLastStatsTime
 The last time message statistics were computed.
DtPeerMsgStats myReceivedMsgStats
 Message statistics for messages received from other assistants.
DtPeerMsgStats myProcessedMsgStats
 Message statistics for messages processed from other assistants.
DtPeerMsgStats mySentMsgStats
 Message statistics for messages sent to other assistants.
std::list< DtInterfaceFoundCbInfo > myInterfaceFoundCallbacks
 The list of network interface discovery callbacks.
bool myUsingIpv4
 Indicates whether any IPv4 sockets are currently in use.
bool myUsingIpv6
 Indicates whether any IPv4 sockets are currently in use.
unsigned long mySequence
 Message sequence number.
bool myDisableMulticast
 Indicates whether multicast is disabled.
bool myIgnoreAllPeerCommunication
 Indicates whether peer communication is ignored. This includes sending/receiving UDP.
std::set< DtInetAddr > myIgnoredAddresses
DtAssistantUuid myUuid
DtString myHostname
 The hostname used by the peer when populating messages it sends.
DtHostNameAddress myHostNameAddress
DtTcpServerMap myPeerTcpServerSockets
bool myProcessingConnections
std::map< DtTcpMsgSocket
*, MAKRti::DtTime > 
myPendingConnections
unsigned int myPendingConnectionsTimeout
std::map< DtTcpMsgSocket
*, DtAssistantToAssistantConnectionMsg * > 
myPendingTcpSynMessages
std::map
< DtAssistantConnectionId,
DtTcpMsgSocket * > 
myConnectingTcpClientSockets
std::set< DtTcpMsgSocket * > myConnectingTcpServerSockets
DtAssistantPeerSocketAdditionCallbackList myTcpClientAdditionCallbacks
DtAssistantPeerSocketRemovalCallbackList myTcpClientRemovalCallbacks
std::set
< DtAssistanConnectionCbInfo * > 
myConnectionLostCallbacks
std::set< std::pair< DtString,
DtInetUtils::DtInetAddrFamily >
, cmpByMacAddrThenFam
myDevicesChecked

Static Public Attributes

static const DtTime theStatisticsInterval
 The interval at which message statistics are calculated.

Protected Member Functions

virtual void sendStartRtiexecOrForwarderMsg (DtAssistantMsgKind msgKind, const DtRtiConnectionInfoDataPair &conn, const DtRtiConnectionConfigurationInfo &config, const DtAssistantInfo &assistant=DtAssistantInfo())
 Sends a message to another Assistant to start an rtiexec with the given connection parameters.
bool needsProcessing (const DtAssistantMsg &msg)
 Returns true if the message should be processed by this assistant.
bool addSocketsForInterfaces ()
 Adds a new socket for each new interface.
bool addTcpServerSocketsForInterfaces (const DtTime &now=0)
 Adds a new TCP server socket for each new interface.
bool readAndProcess (DtTime maxTime)
 Read and process the messages on the socket for up to the maximum time.
bool readAndProcessConnectingTcpSockets (DtTime maxTime)
 Read and process the messages on the connecting TCP socket for up to the maximum time.
bool readAndProcessTcpSockets (DtTime maxTime)
void retransmitToForeignConnections (const DtAssistantMsg &msg)
 Retransmit received messages to foreign Connects excluding source.
void checkForDeadTcpConnections ()
void calculateMsgStatistics ()
 Calculate message statistics.
void sendMsgOnInterface (const MAKRti::DtInetAddr &ifAddr, DtAssistantMsg &msg, const DtInetAddr &destAddr=DtInetAddr::inaddrAny(), int port=0)
 Sends the message on the specified interface.
void sendMsg (std::map< MAKRti::DtInetAddr, DtUdpMsgSocket * >::iterator sockIter, DtAssistantMsg &msg, const DtInetAddr &destAddr=DtInetAddr::inaddrAny(), int port=0, bool sendToForeignAssistants=true)
 Sends the message to the other Assistants on the given socket If provided, the message is directed to the given destination.
void sendToForeignConnection (std::map< DtInetAddr, DtUdpMsgSocket * >::iterator sockIter, DtAssistantMsg &msg, const DtInetAddr &destAddr, int port)
void sendToUDPForeignConnection (std::map< DtInetAddr, DtUdpMsgSocket * >::iterator sockIter, DtAssistantMsg *ptToPtMsg, const DtInetAddr &destAddr, int port)
void sendToTCPForeignConnection (std::map< DtInetAddr, DtUdpMsgSocket * >::iterator sockIter, DtTcpMsgSocket *tcpSock, DtAssistantMsg *ptToPtMsg)
void sendMsgToAll (DtAssistantMsg &msg, const DtInetAddr &destAddr=DtInetAddr::inaddrAny(), int port=0, bool sentToForeignAssistants=true)
 Sends the message to the other Assistants on all sockets.
virtual void flushTcpSockets (DtTime maxTime)
 Flushes the TCP sockets.
std::auto_ptr< DtAssistantMsgnetRead (DtMsgSocket *sock, int *retCode, DtInetEndpoint &ep) const
 Read a message from the socket.
virtual void sendTcpMsg (const DtAssistantConnectionStruct &connection, DtAssistantHandshakeType handshakeType, DtAssistantToAssistantConnectionMsg *msgToSend)
virtual DtTcpMsgSocketinitiateTcpConnection (const DtAssistantConnectionStruct &connection)
virtual void queueTcpSynMessage (DtTcpMsgSocket *sock, DtAssistantToAssistantConnectionMsg *msgToSend)
virtual void addConnectingSocket (DtTcpMsgSocket *sock)
virtual void deletePendingSyns (DtTcpMsgSocket *sock)
virtual void processConnections ()
virtual void reset (const DtAssistantConnectionStruct &connection)
virtual void tcpSocketAdditionCb (DtTcpMsgSocket *sock)
virtual void tcpSocketRemovalCb (DtTcpMsgSocket *sock)
virtual void invokeRemovalCallbacks (const DtAssistantConnectionStruct &second)
virtual void removeSocket (DtTcpMsgSocket *sock, const DtAssistantConnectionStruct &conn)

Static Protected Member Functions

static void tcpSocketAdditionCb (DtTcpMsgSocket *sock, void *usr)
 Callbacks on addition/removal of TCP sockets.
static void tcpSocketRemovalCb (DtTcpMsgSocket *sock, void *usr)

Detailed Description

DtRtiAssistantPeer manages the sharing of information between one Assistant to other Assistants using the same multicast address.

Member Typedef Documentation

typedef std::map<std::pair<DtString, DtInetUtils::DtInetAddrFamily>, DtTcpMsgSocketMgr*, cmpByMacAddrThenFam> DtRtiAssistantPeer::DtTcpServerMap

Constructor & Destructor Documentation

DtRtiAssistantPeer::DtRtiAssistantPeer ( int  id,
int  port,
const MAKRti::DtInetAddr &  ipv4Addr,
const MAKRti::DtInetAddr &  ipv6Addr,
int  ttl,
bool  disableMulticast,
const DtNetU128 &  uuid 
)

Constructor.

virtual DtRtiAssistantPeer::~DtRtiAssistantPeer ( )
virtual

Destructor.

Member Function Documentation

virtual void DtRtiAssistantPeer::addConnectingSocket ( DtTcpMsgSocket sock)
protectedvirtual
void DtRtiAssistantPeer::addConnectionLostCallback ( DtAssistantConnectionLostCallback  cb,
void *  usr 
)
virtual void DtRtiAssistantPeer::addForeignAssistantConnection ( const DtAssistantConnectionStruct ipAddr,
const MAKRti::DtInetAddr &  ifAddr 
)
virtual

Add connection information for a foreign assistant.

virtual void DtRtiAssistantPeer::addIgnoredAddress ( const MAKRti::DtInetAddr &  ipAddr)
virtual

Add address to ignore.

virtual void DtRtiAssistantPeer::addInterfaceFoundCallback ( DtInterfaceFoundCb  cb,
void *  usr 
)
virtual

Adds a callback for notification for the discovery of a new network interface on the local machine.

virtual void DtRtiAssistantPeer::addMsgCallback ( DtAssistantMsgKind  msgKind,
DtAssistantMsgCbMgr::DtCallbackFcn  fcn,
void *  usr 
)
virtual

Adds a callback for notification for the discovery of a new network interface on the local machine.

bool DtRtiAssistantPeer::addSocketsForInterfaces ( )
protected

Adds a new socket for each new interface.

Returns true if any sockets were added.

bool DtRtiAssistantPeer::addTcpServerSocketsForInterfaces ( const DtTime &  now = 0)
protected

Adds a new TCP server socket for each new interface.

Returns true if any sockets were added.

void DtRtiAssistantPeer::calculateMsgStatistics ( )
protected

Calculate message statistics.

void DtRtiAssistantPeer::checkForDeadTcpConnections ( )
protected
virtual const MAKRti::DtInetAddr& DtRtiAssistantPeer::currentNetworkInterfaceAddr ( ) const
virtual

Returns the network interface address of the current socket being processed.

virtual const DtInetEndpoint& DtRtiAssistantPeer::currentReceivedEndpoint ( ) const
virtual

Returns the endpoint for the current message being processed.

virtual void DtRtiAssistantPeer::deletePendingSyns ( DtTcpMsgSocket sock)
protectedvirtual
virtual const MAKRti::DtInetAddr& DtRtiAssistantPeer::destinationAddress ( const DtInetAddr &  msgDestination) const
virtual

Returns the message destination if not ANY; otherwise, the current networkInterface address.

virtual void DtRtiAssistantPeer::flushTcpSockets ( DtTime  maxTime)
protectedvirtual

Flushes the TCP sockets.

virtual void DtRtiAssistantPeer::forwardMsg ( const DtAssistantMsg msg,
int  astntCompId,
const DtAssistantInfo dest = DtAssistantInfo() 
)
virtual

Forwards the given message to the other Assistants over the given interface.

The local assistant component ID will be included in the message to indicate the original message sender. Optional parameter specifies a specific assistant to send the message to.

virtual void DtRtiAssistantPeer::forwardNetStatsUpdate ( const DtAssistantMsg msg,
const std::set< DtAssistantInfo > &  observers 
)
virtual
virtual void DtRtiAssistantPeer::getMsgStats ( unsigned &  totalRecv,
double &  recvPerSecOverall,
double &  recvPerSecCurr,
unsigned &  totalProc,
double &  procPerSecOverall,
double &  procPerSecCurr,
unsigned &  totalSent,
double &  sentPerSecOverall,
double &  sentPerSecCurr 
)
virtual

Get message statistics.

virtual const DtHostNameAddress& DtRtiAssistantPeer::hostNameAddress ( ) const
virtual
virtual int DtRtiAssistantPeer::id ( ) const
virtual

Returns the Assistant peer ID.

virtual DtTcpMsgSocket* DtRtiAssistantPeer::initiateTcpConnection ( const DtAssistantConnectionStruct connection)
protectedvirtual
virtual void DtRtiAssistantPeer::invokeRemovalCallbacks ( const DtAssistantConnectionStruct second)
protectedvirtual
virtual MAKRti::DtInetAddr DtRtiAssistantPeer::ipv4Address ( ) const
virtual

Returns the Assistant IPv4 peer address.

Returns inaddr_any address if IPv4 is not in use.

virtual MAKRti::DtInetAddr DtRtiAssistantPeer::ipv6Address ( ) const
virtual

Returns the Assistant IPv6 peer address.

Returns in6addr_any address if IPv6 is not in use.

virtual bool DtRtiAssistantPeer::isIgnoreAllPeerCommunication ( ) const
inlinevirtual
virtual DtU32 DtRtiAssistantPeer::maxMsgSize ( ) const
virtual

Gets the maximum message size.

virtual DtAssistantMessageFactory* DtRtiAssistantPeer::msgFactory ( ) const
virtual

Get the message factory.

bool DtRtiAssistantPeer::needsProcessing ( const DtAssistantMsg msg)
protected

Returns true if the message should be processed by this assistant.

Filters out messages that were either sent by the local assistant or are specifically targeted to another assistant.

std::auto_ptr<DtAssistantMsg> DtRtiAssistantPeer::netRead ( DtMsgSocket sock,
int *  retCode,
DtInetEndpoint &  ep 
) const
protected

Read a message from the socket.

virtual int DtRtiAssistantPeer::port ( ) const
virtual

Returns the Assistant peer port.

virtual void DtRtiAssistantPeer::processConnections ( )
protectedvirtual
virtual void DtRtiAssistantPeer::queueTcpSynMessage ( DtTcpMsgSocket sock,
DtAssistantToAssistantConnectionMsg msgToSend 
)
protectedvirtual
bool DtRtiAssistantPeer::readAndProcess ( DtTime  maxTime)
protected

Read and process the messages on the socket for up to the maximum time.

bool DtRtiAssistantPeer::readAndProcessConnectingTcpSockets ( DtTime  maxTime)
protected

Read and process the messages on the connecting TCP socket for up to the maximum time.

bool DtRtiAssistantPeer::readAndProcessTcpSockets ( DtTime  maxTime)
protected
void DtRtiAssistantPeer::removeConnectionLostCallback ( DtAssistantConnectionLostCallback  cb,
void *  usr 
)
virtual void DtRtiAssistantPeer::removeForeignAssistantConnection ( const DtAssistantConnectionStruct ipAddr)
virtual

Remove connection information for a foreign assistant.

virtual void DtRtiAssistantPeer::removeIgnoredAddress ( const MAKRti::DtInetAddr &  ipAddr)
virtual

Remove address to ignore.

virtual void DtRtiAssistantPeer::removeInterfaceFoundCallback ( DtInterfaceFoundCb  cb,
void *  usr 
)
virtual

Adds a callback for notification for the discovery of a new network interface on the local machine.

virtual void DtRtiAssistantPeer::removeMsgCallback ( DtAssistantMsgKind  msgKind,
DtAssistantMsgCbMgr::DtCallbackFcn  fcn,
void *  usr 
)
virtual

Adds a callback for notification for the discovery of a new network interface on the local machine.

virtual void DtRtiAssistantPeer::removeSocket ( DtTcpMsgSocket sock,
const DtAssistantConnectionStruct conn 
)
protectedvirtual
virtual void DtRtiAssistantPeer::reset ( const DtAssistantConnectionStruct connection)
protectedvirtual
void DtRtiAssistantPeer::retransmitToForeignConnections ( const DtAssistantMsg msg)
protected

Retransmit received messages to foreign Connects excluding source.

virtual void DtRtiAssistantPeer::sendAssistantConnMsg ( const DtAssistantConnectionStruct assistant,
DtAssistantHandshakeType  handshakeType,
const DtAssistantConnectionId id,
const DtAssistantConnectionId ackId = DtAssistantUuidNIL 
)
virtual

Sends a Assistant Connection message.

virtual void DtRtiAssistantPeer::sendFedDisconnectNetStatsObsRespMsg ( DtAssistantObservationType  observationType,
int  compId,
const std::set< DtAssistantInfo > &  observers 
)
virtual
virtual void DtRtiAssistantPeer::sendFederateInfoReqMsg ( const DtAssistantInfo astnt,
const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federation = MAKRti::DtString::nullString(),
unsigned  federateHandle = 0 
)
virtual

Sends a message to the other Assistants which queries for federate info.

Can be as specific as desired. The remote assistant will respond with all federates that match any specified criteria.

virtual void DtRtiAssistantPeer::sendFederateInfoRespMsg ( const DtRtiConnectionInfo conn,
std::vector< const DtAssistantFederateInfo * >  federates 
)
virtual

Sends a message to the other Assistants in response to a federate info request with information on one or more matching federates.

virtual void DtRtiAssistantPeer::sendFederateResignMsg ( const DtAssistantInfo assistant,
int  compId,
int  federationHdl,
int  federateHdl 
)
virtual

Sends a force federate resign message to a remote Assistant to be forwarded to a remote rtiexec.

virtual void DtRtiAssistantPeer::sendFederationDestroyMsg ( const DtAssistantInfo assistant,
int  compId,
int  federationHdl 
)
virtual

Sends a force federation destroy message to a remote Assistant to be forwarded to a remote rtiexec.

virtual void DtRtiAssistantPeer::sendFederationStateMsg ( const DtRtiConnectionInfoDataPair conn,
const DtAssistantFederationInfo federation,
bool  isRemoval 
)
virtual

Sends a message to the other Assistants with the state of the given federation.

virtual void DtRtiAssistantPeer::sendFomTreeData ( const DtAssistantInfo astnt,
int  compId,
const std::vector< MAKRti::DtU32 > &  objectClassHandles,
const std::vector< MAKRti::DtU32 > &  parentObjectClassHandles,
const std::vector< MAKRti::DtString > &  objectClassNames,
const std::vector< MAKRti::DtU32 > &  interactionClassHandles,
const std::vector< MAKRti::DtU32 > &  parentInteractionClassHandles,
const std::vector< MAKRti::DtString > &  interactionClassNames 
)
virtual
virtual void DtRtiAssistantPeer::sendForeignBreakMsg ( const DtAssistantInfo assistant)
virtual

Sends a break message to the other Assistant.

virtual void DtRtiAssistantPeer::sendForeignQueryMsg ( const DtAssistantInfo assistant)
virtual

Sends a query message to the other Assistants for their information.

virtual void DtRtiAssistantPeer::sendForeignQueryMsg ( const DtAssistantConnectionStruct assistant)
virtual

Sends a query message to the other Assistants for their information.

virtual void DtRtiAssistantPeer::sendForwarderConnectMsg ( int  compId,
const DtString &  targetHost,
const MAKRti::DtInetAddr &  targetAddress,
int  targetPort,
const DtAssistantInfo assistant 
)
virtual

Sends a connect to forwarder message to a forwarder component.

virtual void DtRtiAssistantPeer::sendInfoMsg ( const DtRtiConnectionAndConfiguration connsAndConfigs,
unsigned  memoryPeriod,
bool  acceptRemoteCommands,
bool  removal 
)
virtual

Sends the information from this Assistant to the other Assistants.

This message includes rtiexecs, forwarders, and assistant settings

virtual bool DtRtiAssistantPeer::sendLatencyTestRequestMsg ( const DtAssistantInfo assistant,
int  compId,
int  federationHdl,
int  federateHdl,
bool  runTest,
bool  continuous,
bool  shouldHalt,
bool  observing,
unsigned int  interactionPeriod,
unsigned int  numInteractions,
unsigned int  payloadBytes 
)
virtual

Sends a latency test request message to a remote Assistant to be forwarded to a remote rtiexec.

virtual void DtRtiAssistantPeer::sendLicServerInfoMsg ( const DtLicServerSet licServers,
bool  removal 
)
virtual

Sends the information from this Assistant to the other Assistants.

This message includes rtiexecs, forwarders, and licenses

virtual void DtRtiAssistantPeer::sendLightweightInfoMsg ( const DtRtiConnectionAndConfiguration connsAndConfigs,
unsigned  memoryPeriod 
)
virtual

Sends the local lightweight connection information from this Assistant to the other Assistants.

virtual void DtRtiAssistantPeer::sendLogRequestMsg ( const DtAssistantInfo assistant,
int  compId,
unsigned  maxLogSize 
)
virtual

Sends a message to a remote Assistant to get the log, or at least the most recent entries up to a size of maxLogSize bytes, of one of its rtiexecs.

void DtRtiAssistantPeer::sendMsg ( std::map< MAKRti::DtInetAddr, DtUdpMsgSocket * >::iterator  sockIter,
DtAssistantMsg msg,
const DtInetAddr &  destAddr = DtInetAddr::inaddrAny(),
int  port = 0,
bool  sendToForeignAssistants = true 
)
protected

Sends the message to the other Assistants on the given socket If provided, the message is directed to the given destination.

void DtRtiAssistantPeer::sendMsgOnInterface ( const MAKRti::DtInetAddr &  ifAddr,
DtAssistantMsg msg,
const DtInetAddr &  destAddr = DtInetAddr::inaddrAny(),
int  port = 0 
)
protected

Sends the message on the specified interface.

If interface is not found, sends to all interfaces.

void DtRtiAssistantPeer::sendMsgToAll ( DtAssistantMsg msg,
const DtInetAddr &  destAddr = DtInetAddr::inaddrAny(),
int  port = 0,
bool  sentToForeignAssistants = true 
)
protected

Sends the message to the other Assistants on all sockets.

void DtRtiAssistantPeer::sendMsgToAssistant ( const DtAssistantInfo ifAddr,
DtAssistantMsg msg 
)

Sends the message to the specified Assistant.

virtual void DtRtiAssistantPeer::sendNetStatsAttrParamStringUpdate ( const DtAssistantInfo astnt,
int  compId,
const std::vector< MAKRti::DtU32 > &  objectClassHandles,
const std::vector< MAKRti::DtU32 > &  attributeHandles,
const std::vector< MAKRti::DtString > &  attributeNames,
const std::vector< MAKRti::DtU32 > &  parentClassHandles,
const std::vector< MAKRti::DtU32 > &  totalObjHandles,
DtAssistantHandleType  objInterType,
DtAssistantHandleType  attrParamType,
DtAssistantHandleType  parentClassType 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsAttrStringUpdate ( const DtAssistantInfo astnt,
int  compId,
const std::vector< MAKRti::DtU32 > &  objectClassHandles,
const std::vector< MAKRti::DtU32 > &  attributeHandles,
const std::vector< MAKRti::DtString > &  attributeNames,
const std::vector< MAKRti::DtU32 > &  parentClassHandles,
const std::vector< MAKRti::DtU32 > &  totalObjHandles 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsFomAttrParamUpdate ( const DtAssistantInfo astnt,
int  compId,
DtAssistantHandleType  handleType,
bool  isInit,
const std::vector< MAKRti::DtU32 > &  objectClassHandles,
const std::vector< MAKRti::DtU32 > &  attributeHandles,
const std::vector< bool > &  attributePub,
const std::vector< bool > &  attributeSub,
const std::vector< DtTransportType > &  attributeTransport,
const std::vector< DtOrderType > &  attributeOrder,
const std::vector< bool > &  objectPub,
const std::vector< bool > &  objectSub,
const std::vector< MAKRti::DtU32 > &  objPubSubHandles 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsInitStateRequestMsg ( const DtAssistantInfo astnt,
DtAssistantObservationType  observationType,
int  compId 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsObservationRequestMsg ( const DtAssistantInfo astnt,
DtAssistantObservationType  observationType,
int  compId,
bool  observe = false,
unsigned int  interval = 0 
)
virtual

Sends a Observation Request to an assistant.

It will either request that it observe and interval the federate should send, or tell the federate not observing.

virtual void DtRtiAssistantPeer::sendNetStatsObservationResponseMsg ( const DtAssistantInfo astnt,
DtAssistantObservationType  observationType,
int  compId,
bool  observe 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsParamStringUpdate ( const DtAssistantInfo astnt,
int  compId,
const std::vector< MAKRti::DtU32 > &  interClassHandles,
const std::vector< MAKRti::DtU32 > &  parameterHandles,
const std::vector< MAKRti::DtString > &  parameterNames,
const std::vector< MAKRti::DtU32 > &  parentInterHandles,
const std::vector< MAKRti::DtU32 > &  totalInterHandles 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsStringUpdate ( const DtAssistantInfo assistant,
int  compId,
DtAssistantHandleType  handletype,
const std::vector< DtU32 > &  objectInstanceHandles,
const std::vector< MAKRti::DtString > &  objectInstanceNames 
)
virtual
virtual void DtRtiAssistantPeer::sendNetStatsStringUpdateReqMsg ( const DtAssistantInfo assistant,
int  compId,
DtAssistantHandleType  handletype,
const std::set< DtU32 > &  handles 
)
virtual
virtual void DtRtiAssistantPeer::sendNetworkTestEnableMsg ( const DtAssistantInfo assistant,
int  compId,
int  federationHdl,
bool  enable 
)
virtual

Sends a message enabling or disabling network testing for the given federation.

virtual void DtRtiAssistantPeer::sendNoFederationMsg ( const DtRtiConnectionInfoDataPair conn)
virtual

Sends a message to the other Assistants informing them that a local rtiexec has no federations.

virtual void DtRtiAssistantPeer::sendNotifyMsg ( const MAKRti::DtString &  text,
DtNotifyLevelType  notifyLevel,
const MAKRti::DtString &  sourceName 
)
virtual

Sends a notification message to other assistants.

virtual void DtRtiAssistantPeer::sendNotifyObserveMsg ( bool  isObserving)
virtual

Sends a message to other assistants letting them know that we are observing notification messages.

virtual void DtRtiAssistantPeer::sendObserveFederationsMsg ( const DtRtiConnectionInfo conn,
bool  observe,
const DtAssistantInfo assistant = DtAssistantInfo(),
int  compId = -1 
)
virtual

Sends a message to another Assistant to either begin or stop observing the federations of the given connection.

Can optionally specify the specific location (Assistant and component ID) of the rtiexec.

virtual void DtRtiAssistantPeer::sendObserveRtiExecLogMsg ( const DtAssistantInfo assistant,
int  compId,
bool  observe 
)
virtual

Sends a message to another Assistant to either begin or stop observing the given rtiExec printer connection.

virtual void DtRtiAssistantPeer::sendObserveRtiexecRspMsg ( DtNotifyLevelType  notifyLevel,
int  compId,
const DtAssistantInfo destination 
)
virtual

Sends an observe response message to a remote Assistant observing a local rtiexec.

virtual void DtRtiAssistantPeer::sendObserveRtiForwarderMsg ( const DtRtiConnectionInfo conn,
bool  observe,
const DtAssistantInfo assistant,
int  compId 
)
virtual

Sends a message to another Assistant to either begin or stop observing the RTI Forwarder on the given connection.

virtual void DtRtiAssistantPeer::sendQueryMsg ( )
virtual

Sends a query message to the other Assistants for their information.

virtual void DtRtiAssistantPeer::sendRemovalMsg ( )
virtual

Sends a removal message to the other Assistants to inform them that this Assistant should be removed from their lists of known Assistants.

virtual void DtRtiAssistantPeer::sendRidParamsRequestMsg ( const DtAssistantInfo assistant,
int  compId 
)
virtual

Sends a message to a remote Assistant to get the RID parameters of one of its rtiexecs.

virtual void DtRtiAssistantPeer::sendRtiexecExitMsg ( const DtAssistantInfo assistant,
int  compId 
)
virtual

Sends a message to a remote Assistant asking it to shutdown one of its local rtiexecs.

virtual void DtRtiAssistantPeer::sendStartRtiexecMsg ( const DtRtiConnectionInfoDataPair conn,
const DtRtiConnectionConfigurationInfo config,
const DtAssistantInfo assistant = DtAssistantInfo() 
)
virtual

Sends a message to another Assistant to start an rtiexec with the given connection parameters.

Requires the RID lisp to be set in the config (if RID is a user configuration).

virtual void DtRtiAssistantPeer::sendStartRtiexecOrForwarderMsg ( DtAssistantMsgKind  msgKind,
const DtRtiConnectionInfoDataPair conn,
const DtRtiConnectionConfigurationInfo config,
const DtAssistantInfo assistant = DtAssistantInfo() 
)
protectedvirtual

Sends a message to another Assistant to start an rtiexec with the given connection parameters.

Requires the RID lisp to be set in the config (if RID is a user configuration).

virtual void DtRtiAssistantPeer::sendStartRtiForwarderMsg ( const DtRtiConnectionInfoDataPair conn,
const DtRtiConnectionConfigurationInfo config,
const DtAssistantInfo assistant = DtAssistantInfo() 
)
virtual

Sends a message to another Assistant to start an rtiexec with the given connection parameters.

Requires the RID lisp to be set in the config (if RID is a user configuration).

virtual void DtRtiAssistantPeer::sendTcpMsg ( const DtAssistantConnectionStruct connection,
DtAssistantHandshakeType  handshakeType,
DtAssistantToAssistantConnectionMsg msgToSend 
)
protectedvirtual
void DtRtiAssistantPeer::sendToForeignConnection ( std::map< DtInetAddr, DtUdpMsgSocket * >::iterator  sockIter,
DtAssistantMsg msg,
const DtInetAddr &  destAddr,
int  port 
)
protected
void DtRtiAssistantPeer::sendToTCPForeignConnection ( std::map< DtInetAddr, DtUdpMsgSocket * >::iterator  sockIter,
DtTcpMsgSocket tcpSock,
DtAssistantMsg ptToPtMsg 
)
protected
void DtRtiAssistantPeer::sendToUDPForeignConnection ( std::map< DtInetAddr, DtUdpMsgSocket * >::iterator  sockIter,
DtAssistantMsg ptToPtMsg,
const DtInetAddr &  destAddr,
int  port 
)
protected
virtual void DtRtiAssistantPeer::setIgnoreAllPeerCommunication ( bool  valToSet)
inlinevirtual

set/get myIgnoreAllPeerCommunication

virtual void DtRtiAssistantPeer::setMsgFactory ( DtAssistantMessageFactory fact)
virtual

Set the message factory.

virtual void DtRtiAssistantPeer::setUuid ( const DtAssistantUuid uuid)
virtual

Set the UUID. This should be done outside of the peer once its determined (via file read in connection manager or other means)

static void DtRtiAssistantPeer::tcpSocketAdditionCb ( DtTcpMsgSocket sock,
void *  usr 
)
staticprotected

Callbacks on addition/removal of TCP sockets.

virtual void DtRtiAssistantPeer::tcpSocketAdditionCb ( DtTcpMsgSocket sock)
protectedvirtual
static void DtRtiAssistantPeer::tcpSocketRemovalCb ( DtTcpMsgSocket sock,
void *  usr 
)
staticprotected
virtual void DtRtiAssistantPeer::tcpSocketRemovalCb ( DtTcpMsgSocket sock)
protectedvirtual
virtual bool DtRtiAssistantPeer::tick ( double  timeout = 0)
virtual

Do the actual message processing.

  • RTI connections are treated as synchronous in main thread.
virtual const DtAssistantUuid& DtRtiAssistantPeer::uuid ( ) const
virtual

Member Data Documentation

std::map<DtTcpMsgSocket*, DtAssistantConnectionStruct> DtRtiAssistantPeer::myAssistantConnectionsRemoved
DtTime DtRtiAssistantPeer::myBeginProcessingTime

The time when this assistant began processing messages.

DtTime DtRtiAssistantPeer::myCheckInterfacesInterval

Interval at which periodic interface checking should be performed.

DtTime DtRtiAssistantPeer::myCheckTcpConnectionsInterval

Interval at which periodic interface checking should be performed.

DtTime DtRtiAssistantPeer::myClearCheckedInterfacesInterval

Interval at which periodic clearing of checked interfaces should be performed.

std::vector<std::pair<DtAssistantConnectionStruct, DtTime> > DtRtiAssistantPeer::myClientSocketsDeleted
DtClock DtRtiAssistantPeer::myClock

Clock for timeouts and periodic update messages.

std::map<DtAssistantConnectionId, DtTcpMsgSocket*> DtRtiAssistantPeer::myConnectingTcpClientSockets
std::set<DtTcpMsgSocket*> DtRtiAssistantPeer::myConnectingTcpServerSockets
std::set<DtAssistanConnectionCbInfo*> DtRtiAssistantPeer::myConnectionLostCallbacks
MAKRti::DtInetAddr DtRtiAssistantPeer::myCurrNetworkInterfaceAddr

The address of the current network interface being read from.

Will have an invalid value if no messages are currently being processed.

MAKRti::DtInetEndpoint DtRtiAssistantPeer::myCurrReceivedEndpoint

The endpoint.

DtTcpMsgSocket* DtRtiAssistantPeer::myCurTcpSocket

The current TCP socket being processed or the next one that will be processed.

DtAssistantDfltMsgFactory DtRtiAssistantPeer::myDefaultMessageFactory

Default message factory.

std::set<std::pair<DtString, DtInetUtils::DtInetAddrFamily>, cmpByMacAddrThenFam> DtRtiAssistantPeer::myDevicesChecked
bool DtRtiAssistantPeer::myDisableMulticast

Indicates whether multicast is disabled.

DtString DtRtiAssistantPeer::myHostname

The hostname used by the peer when populating messages it sends.

DtHostNameAddress DtRtiAssistantPeer::myHostNameAddress
int DtRtiAssistantPeer::myId

A unique ID assigned to this assistant peer.

This ID, along with the IP address of this machine, should uniquely identify this Assistant.

bool DtRtiAssistantPeer::myIgnoreAllPeerCommunication

Indicates whether peer communication is ignored. This includes sending/receiving UDP.

std::set<DtInetAddr> DtRtiAssistantPeer::myIgnoredAddresses
std::list<DtInterfaceFoundCbInfo> DtRtiAssistantPeer::myInterfaceFoundCallbacks

The list of network interface discovery callbacks.

std::map< MAKRti::DtInetAddr, DtRemoteAssistantSet> DtRtiAssistantPeer::myInterfaceToUdpForeignConnections

A map of network interface addresses to foreign connections reachable from that interface.

DtCbInfoStruct (DtInterfaceFoundCb) protected MAKRti::DtInetAddr DtRtiAssistantPeer::myIpv4Addr

The IPv4 multicast or broadcast address used by the assistant peer.

MAKRti::DtInetAddr DtRtiAssistantPeer::myIpv6Addr

The IPv6 multicast address used by the assistant peer.

DtTime DtRtiAssistantPeer::myLastStatsTime

The last time message statistics were computed.

DtAssistantMessageFactory* DtRtiAssistantPeer::myMessageFactory

The message factory.

DtAssistantMsgCbMgr DtRtiAssistantPeer::myMsgCbMgr

Message callback manager.

DtTime DtRtiAssistantPeer::myNextCheckDeadTcpConnections

Time to check the TCP connections.

DtTime DtRtiAssistantPeer::myNextCheckInterfacesTime

Time to recheck the interfaces that are available.

DtTime DtRtiAssistantPeer::myNextClearCheckedInterfacesTime

Time to clear checked interfaces.

DtTime DtRtiAssistantPeer::myNextProcessConnectionsInterval

Interval at which periodic interface checking should be performed.

DtTime DtRtiAssistantPeer::myNextProcessConnectionsTime

Time to process connections (TCP)

DtTime DtRtiAssistantPeer::myNextStatsTime

The next time to compute message statistics.

DtTcpServerMap DtRtiAssistantPeer::myPeerTcpServerSockets
std::map<DtTcpMsgSocket*, MAKRti::DtTime> DtRtiAssistantPeer::myPendingConnections
unsigned int DtRtiAssistantPeer::myPendingConnectionsTimeout
std::map<DtTcpMsgSocket*, DtAssistantToAssistantConnectionMsg*> DtRtiAssistantPeer::myPendingTcpSynMessages
DtPeerMsgStats DtRtiAssistantPeer::myProcessedMsgStats

Message statistics for messages processed from other assistants.

bool DtRtiAssistantPeer::myProcessingConnections
DtPeerMsgStats DtRtiAssistantPeer::myReceivedMsgStats

Message statistics for messages received from other assistants.

DtPeerMsgStats DtRtiAssistantPeer::mySentMsgStats

Message statistics for messages sent to other assistants.

unsigned long DtRtiAssistantPeer::mySequence

Message sequence number.

std::set<DtTcpMsgSocket*> DtRtiAssistantPeer::myServerSocketsToDelete
std::map< MAKRti::DtInetAddr, DtUdpMsgSocket*>::iterator DtRtiAssistantPeer::mySocketIter

Iterator of the current socket being processed or the next one that will be processed.

std::map< MAKRti::DtInetAddr, DtUdpMsgSocket*> DtRtiAssistantPeer::mySockets

A map of network interface addresses to the sockets used on those interfaces to communicate with other Assistants.

DtAssistantPeerSocketAdditionCallbackList DtRtiAssistantPeer::myTcpClientAdditionCallbacks
DtAssistantPeerSocketRemovalCallbackList DtRtiAssistantPeer::myTcpClientRemovalCallbacks
std::map< DtAssistantConnectionStruct, std::pair< DtTcpMsgSocket*, MAKRti::DtInetAddr >, cmpByConnectionId > DtRtiAssistantPeer::myTcpForeignConnections
int DtRtiAssistantPeer::myTtl

The TTL (Time To Live) for Assistant communication.

std::map< DtAssistantConnectionStruct, MAKRti::DtInetAddr, cmpByPublicAddress> DtRtiAssistantPeer::myUdpForeignConnectionToInterface

A map of foreign connections to the interfaces used to reach them.

bool DtRtiAssistantPeer::myUsingIpv4

Indicates whether any IPv4 sockets are currently in use.

bool DtRtiAssistantPeer::myUsingIpv6

Indicates whether any IPv4 sockets are currently in use.

DtAssistantUuid DtRtiAssistantPeer::myUuid
const DtTime DtRtiAssistantPeer::theStatisticsInterval
static

The interval at which message statistics are calculated.


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

Document ID: Generated on Mon Jul 9 10:30:41 EDT 2018 from SVN revision 190224
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)