MAK RTIspy API Documentation for HLA 1516
Public Slots | Signals | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtAssistantNetworkCompInfoMgr Class Reference

Compiles network component information from RTI Forwarders. More...

+ Inheritance diagram for DtAssistantNetworkCompInfoMgr:
+ Collaboration diagram for DtAssistantNetworkCompInfoMgr:

List of all members.

Public Slots

void processConnectionsUpdate (const DtRtiConnectionAndConfiguration &conns)
 Processes changes in connection state.
void processConnectionsRemoval (const DtRtiConnectionAndConfiguration &conns)
 Processes removal of known connections.
void sendAllForwarderInfo ()
 Sends udpate message for all local conns to remote assistants.
void sendObserveForwarderMsg ()
 Sends a message indicating the current connection whose forwarder is being observed by this assistant.
void federateRemovalTimeChanged (float val)
 Handle a change in the defunct federation removal time.

Signals

void forwarderAdded (const DtRtiConnectionInfo &conn)
 Emitted when a new forwarder is discovered.
void forwarderConnUpdated (const DtRtiConnectionInfo &conn)
 Emitted when the connection info of a known forwarder is updated.
void forwarderUpdated (const DtRtiConnectionInfo &conn)
 Emitted when a known forwarder is updated.
void forwarderRemoved (const DtRtiConnectionInfo &conn)
 Emitted when a known forwarder is removed.

Public Member Functions

 DtAssistantNetworkCompInfoMgr (DtBoost::shared_ptr< DtRtiAssistantServer > server, DtBoost::shared_ptr< DtRtiAssistantPeer > peer, DtBoost::shared_ptr< DtAssistantPreferencesInfoMgr > prefMgr, DtBoost::shared_ptr< DtAssistantComponentMgr > compMgr, DtBoost::shared_ptr< DtAssistantConnectionInfoMgr > connInfoMgr)
 Constructor.
 ~DtAssistantNetworkCompInfoMgr ()
 Destructor.
virtual void tick ()
 Performs tasks that need to be completed periodically.
virtual bool isLocalForwarder (const DtRtiConnectionInfo &conn) const
 Returns true if the given forwarder connection is for an active local forwarder.
virtual bool isRemoteForwarder (const DtRtiConnectionInfo &conn) const
 Returns true if the given forwarder connection is for an active remote forwarder.
virtual void requestSingleUpdateFromConnectedForwarders (int id)
 Performs a single data request of the connected RTI Forwarders.
virtual void viewNetworkComponentsForConnection (const DtRtiConnectionInfo &conn)
 Sets the connection which is currently being viewed.
virtual const
DtAssistantForwarderInfo
forwarderInfo (const DtRtiConnectionInfo &conn) const
 Gets the stored information for the given forwarder.

Protected Types

typedef std::map
< DtRtiConnectionInfo,
DtAssistantInfoSet
DtConnectionToObserversMap
typedef std::map
< DtRtiConnectionInfo,
DtAssistantForwarderInfo
DtForwarderStateByConnectionMap

Protected Member Functions

virtual void pruneTimedOutSingleUpdates ()
 If there were RTI Forwarder updates that timed out, we send back the incomplete msg.

Protected Attributes

DtBoost::shared_ptr
< DtAssistantComponentMgr
myCompMgr
 The local RTI component manager.
DtBoost::shared_ptr
< DtAssistantConnectionInfoMgr
myConnInfoMgr
 The connection info manager.
DtRtiConnectionInfo myViewedRtiForwarder
 The forwarder connection currently being viewed at this Assistant.
DtConnectionToObserversMap myRemotelyViewedRtiForwarders
 Local forwarder connections currently being viewed by remote Assistants, and the set of all Assistants which are viewing them.
DtForwarderStateByConnectionMap myRemoteForwarders
 information on all known remote forwarders.
DtForwarderStateByConnectionMap myLocalForwarders
 information on all local forwarders.
MAKRti::DtClock myClock
 Clock used to determine if we need to resend lost messages.
unsigned int myTimeStateUpdateInterval
 The interval, in ms, at which local rtiForwarders should be requested to send updated time state information from local rtiForwarders.
float myDefunctRemovalTime
 Defunct removal time for dropped federates.
std::map< std::pair< int,
MAKRti::DtTime >, std::map
< int, MAKRti::DtString > > 
myRequestedRtiForwarderUpdates

Static Protected Attributes

static const int theTimeToWaitForForwarderInfo = 2
 The time, in seconds, to wait for information from the remotely viewed RTI Forwarder before resending the observation request.

Private Member Functions

 DtAssistantNetworkCompInfoMgr (DtAssistantNetworkCompInfoMgr const &)
 Copy Constructor not implemented -- Copy Not Allowed!
DtAssistantNetworkCompInfoMgroperator= (DtAssistantNetworkCompInfoMgr const &)
 Assignment not implemented -- Assignment Not Allowed!

Message Callbacks

Callbacks for federation information messages

virtual void processForwarderObserveMsg (const DtAssistantStateObserveMsg &msg)
 Called by the callback function to process a forwarder state message.
virtual void processForwarderStateMsgForConnection (const DtAssistantForwarderStateMsg &msg)
 Called by the callback function to process a federation state message on behalf of an rtiAssistanttoAssistantClient that requested the data.
virtual void handleRtiCommands (const DtAssistantForwarderStateMsg &msg)
 Called by the callback function to process a forwarder state message.
virtual void processAssistantCommandMsg (const DtAssistantCommandMsg &msg)
 Processes an RTI Assistant command message.
static void processForwarderObserveMsg (const DtAssistantStateObserveMsg &msg, void *usr)
 Callback to process a forwarder state message.
static void processForwarderStateMsgForConnection (const DtAssistantForwarderStateMsg &msg, void *usr)
 Called to process a forwarder state message on behalf of an rtiAssistanttoAssistantClient that requested the data.
static void processAssistantCommandMsg (const DtAssistantCommandMsg &msg, void *usr)
 Processes an RTI Assistant command message.

Detailed Description

Compiles network component information from RTI Forwarders.


Member Typedef Documentation


Constructor & Destructor Documentation

DtAssistantNetworkCompInfoMgr::DtAssistantNetworkCompInfoMgr ( DtBoost::shared_ptr< DtRtiAssistantServer server,
DtBoost::shared_ptr< DtRtiAssistantPeer peer,
DtBoost::shared_ptr< DtAssistantPreferencesInfoMgr prefMgr,
DtBoost::shared_ptr< DtAssistantComponentMgr compMgr,
DtBoost::shared_ptr< DtAssistantConnectionInfoMgr connInfoMgr 
)

Copy Constructor not implemented -- Copy Not Allowed!


Member Function Documentation

Emitted when a new forwarder is discovered.

Referenced by processConnectionsUpdate().

Emitted when the connection info of a known forwarder is updated.

Referenced by processConnectionsUpdate().

Gets the stored information for the given forwarder.

References myLocalForwarders, and myRemoteForwarders.

Emitted when a known forwarder is removed.

Referenced by processConnectionsRemoval(), and processConnectionsUpdate().

Emitted when a known forwarder is updated.

Referenced by processForwarderStateMsgForConnection(), and viewNetworkComponentsForConnection().

Called by the callback function to process a forwarder state message.

References myCompMgr, myRequestedRtiForwarderUpdates, DtAssistantMgr::myServer, and DtAssistantForwarderStateMsg::toString().

Referenced by processForwarderStateMsgForConnection().

Returns true if the given forwarder connection is for an active local forwarder.

References myLocalForwarders.

Returns true if the given forwarder connection is for an active remote forwarder.

References myRemoteForwarders.

DtAssistantNetworkCompInfoMgr& DtAssistantNetworkCompInfoMgr::operator= ( DtAssistantNetworkCompInfoMgr const &  ) [private]

Assignment not implemented -- Assignment Not Allowed!

Processes an RTI Assistant command message.

Referenced by DtAssistantNetworkCompInfoMgr(), and ~DtAssistantNetworkCompInfoMgr().

Callback to process a forwarder state message.

Referenced by DtAssistantNetworkCompInfoMgr(), and ~DtAssistantNetworkCompInfoMgr().

Called to process a forwarder state message on behalf of an rtiAssistanttoAssistantClient that requested the data.

Referenced by DtAssistantNetworkCompInfoMgr(), and ~DtAssistantNetworkCompInfoMgr().

If there were RTI Forwarder updates that timed out, we send back the incomplete msg.

References myClock, myCompMgr, myRequestedRtiForwarderUpdates, and DtAssistantMgr::myServer.

Referenced by tick().

Performs a single data request of the connected RTI Forwarders.

References myClock, myCompMgr, myRequestedRtiForwarderUpdates, DtAssistantMgr::myServer, and theTimeToWaitForForwarderInfo.

Referenced by processAssistantCommandMsg().

Sends udpate message for all local conns to remote assistants.

References myConnInfoMgr, myLocalForwarders, DtAssistantMgr::myPeer, and myRemotelyViewedRtiForwarders.

Referenced by DtAssistantNetworkCompInfoMgr().

Sends a message indicating the current connection whose forwarder is being observed by this assistant.

References DtRtiConnectionInfo::isValid(), myConnInfoMgr, DtAssistantMgr::myPeer, and myViewedRtiForwarder.

Referenced by DtAssistantNetworkCompInfoMgr().


Member Data Documentation

MAKRti::DtClock DtAssistantNetworkCompInfoMgr::myClock [protected]

Clock used to determine if we need to resend lost messages.

Referenced by pruneTimedOutSingleUpdates(), and requestSingleUpdateFromConnectedForwarders().

Defunct removal time for dropped federates.

Referenced by federateRemovalTimeChanged(), processForwarderObserveMsg(), tick(), and viewNetworkComponentsForConnection().

Local forwarder connections currently being viewed by remote Assistants, and the set of all Assistants which are viewing them.

Referenced by federateRemovalTimeChanged(), processForwarderObserveMsg(), sendAllForwarderInfo(), tick(), and viewNetworkComponentsForConnection().

std::map<std::pair<int, MAKRti::DtTime>, std::map<int, MAKRti::DtString> > DtAssistantNetworkCompInfoMgr::myRequestedRtiForwarderUpdates [protected]

The interval, in ms, at which local rtiForwarders should be requested to send updated time state information from local rtiForwarders.

Takes into account remote assistants as well.

Referenced by federateRemovalTimeChanged(), processForwarderObserveMsg(), and tick().

The time, in seconds, to wait for information from the remotely viewed RTI Forwarder before resending the observation request.

Referenced by requestSingleUpdateFromConnectedForwarders().


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)