MAK RTIspy API Documentation for HLA 1516
List of all members | Public Slots | Signals | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtAssistantFederationsInfoMgr Class Reference

Compiles federation information from rtiexecs and LRCs. More...

+ Inheritance diagram for DtAssistantFederationsInfoMgr:
+ Collaboration diagram for DtAssistantFederationsInfoMgr:

Public Slots

void processLocalFederateJoined (const DtAssistantComponentInfo *info, const MAKRti::DtString &federateType, const MAKRti::DtString &federateName, unsigned federateHandle, const MAKRti::DtString &federationName, unsigned federationHandle, DtHlaVersionId hlaVersion)
 Processes a local LRC joining a federation.
void processLocalFederateResigned (const DtAssistantComponentInfo *)
 Processes a local LRC resigning from its federation.
void processConnectionsUpdate (const DtRtiConnectionAndConfiguration &conns)
 Processes changes in connection state.
void processConnectionsRemoval (const DtRtiConnectionAndConfiguration &conns)
 Processes removal of known connections.
void sendAllFederationInfo ()
 Sends update messages for all local federations to remote assistants.
void pruneStaleFederationsAndObservers ()
 Removes any federations which have not been heartbeated and remote observers.
void startRtiexec (const DtRtiConnectionInfoDataPair &conn, const DtRtiConnectionConfigurationInfo &config, bool requestedRemotely)
 Processes a request to start an rtiexec.
void updateFederateWarningTickInterval (float interval)
 Updates the interval at which federates must tick in order to prevent warnings.
void sendObserveFederationsMsg ()
 Sends a message indicating the current connection whose federations are being observed by this assistant.
void provideFederateInfo (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, unsigned federateHandle, const DtAssistantFederateInfo **info)
 Response to a query for federate info.
void provideFederationInfo (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, const DtAssistantFederationInfo **info)
 Response to a query for federation info.
void requestFederateLoc (const DtRtiConnectionInfo &connInfo, const MAKRti::DtString &federationName, unsigned federateHdl)
 Respond to a request for a federate location.
void removeFederationsForRtiexec (const DtAssistantComponentInfo *)
 Process the removal of a local rtiexec.
- Public Slots inherited from DtAssistantMgr
void displayWarningDialogs ()
 Displays all warning dialogs.

Signals

void federationAdded (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName)
 Emitted when a new federation is added.
void federationUpdated (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName)
 Emitted when a federation is updated.
void federationRemoved (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName)
 Emitted when a federation is destroyed.
void federateAdded (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, unsigned federateHandle)
 Emitted when a new federate is added.
void federateUpdated (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, unsigned federateHandle)
 Emitted when a federate is updated.
void federateRemoved (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, unsigned federateHandle)
 Emitted when a federate is removed.
void rtiexecHasNoFederations (const DtRtiConnectionInfo &conn)
 Emitted when an rtiexec response message is received with no federations.
void federateLocReceived (const DtRtiConnectionInfo &connInfo, const MAKRti::DtString &federationName, unsigned federateHdl, const DtAssistantInfo &astnt, unsigned compId)
 Emitted when remote federate location is received after processing a requestFederateLoc from another manager.
- Signals inherited from DtAssistantMgr
void warningDialogDisplayed ()
 Emitted when a warning dialog is displayed.
void warningDialogDismissed ()
 Emitted when a warning dialog is dismissed.
void popupRequested (const MAKRti::DtString &text, int sourceCompId, const MAKRti::DtString &advancedText)
 Emitted when a popup dialog should be displayed.
void popupRequested (const MAKRti::DtString &text, const MAKRti::DtString &source, const MAKRti::DtString &advancedText)
 Emitted when a popup dialog should be displayed.
void notificationRequested (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, int sourceCompId, bool logOnly)
 Emitted when a notification should be displayed.
void notificationRequested (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, const MAKRti::DtString &source, bool logOnly)
 Emitted when a notification should be displayed.

Public Member Functions

 DtAssistantFederationsInfoMgr (DtBoost::shared_ptr< DtRtiAssistantServer > server, DtBoost::shared_ptr< DtRtiAssistantPeer > peer, DtAssistantSignalRouter &signalRouter, DtBoost::shared_ptr< DtAssistantComponentMgr > compMgr, DtBoost::shared_ptr< DtAssistantConnectionInfoMgr > connInfoMgr)
 Constructor.
 ~DtAssistantFederationsInfoMgr ()
 Destructor.
virtual const
DtAssistantFederationInfo
federationInfo (const DtRtiConnectionInfo &conn, const MAKRti::DtString &name) const
 Get information on the given federation.
virtual const
DtFederationStateByNameMap
federations (const DtRtiConnectionInfo &conn) const
 Get a list of federates in the given federation.
virtual const
DtAssistantFederateInfo
federateInfo (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName, unsigned federateHandle)
 Get information on the given federate.
virtual const
DtFederateInfoByHandleMap
federates (const DtRtiConnectionInfo &conn, const MAKRti::DtString &federationName) const
 Get a list of federates in the given federation.
virtual bool isLocalRtiexecViewedRemotely (const DtRtiConnectionInfo &conn) const
 Returns true if the connection is for a local rtiexec which is being viewed remotely.
virtual void tick ()
 Performs tasks that need to be completed periodically.
virtual void requestSingleUpdateFromConnectedRtiexecs (int id)
 Performs a single data request of the connected rtiexecs.
virtual void pruneTimedOutSingleUpdates ()
 If there were rtiexec updates that timed out, we send back the incomplete msg.
virtual void viewFederationsForConnection (const DtRtiConnectionInfo &conn)
 Tell the manager that the connection being viewed has changed.
- Public Member Functions inherited from DtAssistantMgr
 DtAssistantMgr (DtBoost::shared_ptr< DtRtiAssistantServer > server, DtBoost::shared_ptr< DtRtiAssistantPeer > peer, DtAssistantSignalRouter &signalRouter)
 Constructor.
virtual ~DtAssistantMgr ()
 Destructor.
virtual void initialize ()
 Initializes this manager just prior to beginning assistant processing.
virtual void startShutdown ()
 Performs any necessary processing at the start of shutdown.
virtual bool dialogsVisible () const
 Determines if there are any visible dialogs for which this manager is responsible.
virtual void configWidget (DtAssistantConfigWidget **widget, QIcon &icon, QString &name, DtPreferencesPage &pageId)
 Retrieves a widget which will be placed in the configuration dialog for configuring user preferences.
virtual void updateConfigWidget ()
 Forces the configuration widget to be updated.
virtual void processConfigWidgetAccept ()
 Process the changes that were accepted in the configuration widget.

Protected Types

typedef std::map
< DtAssistantInfo, bool > 
DtRemoteObserversMap
typedef std::map
< DtRtiConnectionInfo,
DtRemoteObserversMap
DtConnToObserversMap
typedef std::map
< DtRtiConnectionInfo,
DtFederationStateByNameMap
DtConnToFederationStateMap
typedef std::map
< DtRtiConnectionInfo, int > 
DtConnToCompIdMap
typedef std::pair
< MAKRti::DtString, unsigned > 
DtFedexFederatePair
 Federates we are trying to locate.
typedef std::map
< DtRtiConnectionInfo,
std::set< DtFedexFederatePair > > 
DtFedsByConn
typedef std::map< int,
DtAssistantFederateInfo
DtFedInfoByCompIdMap
 Maps of locally joined Federates based off Components.
typedef std::pair
< MAKRti::DtString, unsigned
int > 
FederationNameFederateHandlePair
typedef std::pair
< DtRtiConnectionInfo,
FederationNameFederateHandlePair
DtConnectionFederationNameFedHandleTriple
typedef std::map
< DtConnectionFederationNameFedHandleTriple,
DtAssistantFederateInfo
DtFedInfoByConnFederationPairMap

Protected Member Functions

virtual void processRtiexecConnUpdate (const DtRtiConnectionInfoDataPair &rtiexec)
 Processes an update to an rtiexec connection.
virtual void processLightweightConnUpdate (const DtRtiConnectionInfoDataPair &conn)
 Processes an update to a lightweight connection.
virtual void processConnectionRemoval (const DtRtiConnectionInfoDataPair &conn)
 Processes the removal of a known connection.
virtual bool localFederateInfo (int compId, const DtAssistantFederateInfo **federate, DtAssistantFederationInfo **federation)
 Returns the local federate info matching the given component ID.
- Protected Member Functions inherited from DtAssistantMgr
void startDialog (QDialog *dlg, bool inTaskbar, bool warningDialog)
 Sets up the given widget as a dialog.
void finishDialog (QDialog *dlg)
 Should be called prior to deleting any dialog started with startDialog.
void showDialog (QDialog *dlg)
 Shows the dialog.
void startMainWindow (QMainWindow *dlg)
 Sets up a main window dialog.
void finishMainWindow (QMainWindow *dlg)
 Should be called prior to deleting any dialog started with startMainWindow.
void showMainWindow (QMainWindow *dlg)
 Shows the dialog.
void showPopup (const MAKRti::DtString &text, int sourceCompId=-1, const MAKRti::DtString &advancedText=MAKRti::DtString::nullString())
 Displays a popup message with the given text, advanced text, and name of the given source component.
void showPopup (const MAKRti::DtString &text, const MAKRti::DtString &source, const MAKRti::DtString &advancedText=MAKRti::DtString::nullString())
 Displays a popup message with the given text, advanced text, and source name.
void displayNotification (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, int sourceCompId=-1)
 Displays and logs a notification from the given component.
void displayNotification (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, const MAKRti::DtString &source)
 Displays and logs notification with the given component name.
void logNotification (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, int sourceCompId=-1)
 Logs a notification from the given component, does not display.
void logNotification (const MAKRti::DtString &message, MAKRti::DtNotifyLevelType notifyLevel, const MAKRti::DtString &source)
 Logs a notification with the given component name, does not display.

Protected Attributes

DtBoost::shared_ptr
< DtAssistantComponentMgr
myCompMgr
 The component manager.
DtBoost::shared_ptr
< DtAssistantConnectionInfoMgr
myConnInfoMgr
 The connection info manager.
DtConnToFederationStateMap myKnownFederations
 All known information on all federations mapped by connection.
DtConnToCompIdMap myLocalRtiexecConns
 Map of all connections which have an rtiexec running locally, mapped to the component ID of the local rtiexec.
std::set< DtRtiConnectionInfomyRtiexecsRequestedForRemoteStart
 The list of remote rtiexecs which have been started by this Assistant but have yet to be verified or failed to start.
std::set< DtRtiConnectionInfomyRtiexecsStartedByRemoteRequest
 The list of local rtiexecs whose startup was requested by remote Assistants but have yet to be verified or failed to start.
DtConnToObserversMap myRemotelyViewedConnections
 Local connections currently being viewed by remote Assistants, and the set of all Assistants which are viewing them.
std::set< DtRtiConnectionInfomyRemotelyViewedConnectionsNeedingUpdate
 Local connections currently being viewed by remote Assistants which require an update to be sent as soon as we get one.
DtRtiConnectionInfo myViewedConnection
 The connection currently being viewed at this Assistant.
DtRtiConnectionInfo myToBeViewedConnection
 The connection to be viewed if it ever becomes valid.
MAKRti::DtClock myClock
 Clock used to determine if we need to resend lost messages.
unsigned int myTimeStateUpdateInterval
 The interval, in ms, at which local rtiexecs should be requested to send updated time state information.
std::map< std::pair< int,
MAKRti::DtTime >, std::map
< int, MAKRti::DtString > > 
myRequestedRtiexecUpdates
 One time rtiexec updates that have been requested.
float myWarningTickInterval
 Warning tick interval.
MAKRti::DtTime myLastTickTime
 The last tick time.
std::map< int, bool > myFederateSignalTickMessages
 Set of federate component ids and signal ticks.
DtFedsByConn myFederateLocQueries
DtFedInfoByCompIdMap myLocalJoinedFederatesByCompIdMap
DtFedInfoByConnFederationPairMap myLocalJoinedFederatesByConnFederationNameMap
- Protected Attributes inherited from DtAssistantMgr
DtBoost::shared_ptr
< DtRtiAssistantServer
myServer
 The Assistant server from which new messages will arrive from local RTI components.
DtBoost::shared_ptr
< DtRtiAssistantPeer
myPeer
 The Assistant peer which communicates with other Assistants.
std::set< QDialog * > myUnparentedDialogs
 All unparented dialogs that are created by the GUI should be added to this set.
std::set< QMainWindow * > myMainWindows
 All main windows that are created by the GUI should be added to this set.
std::set< QDialog * > myWarningDialogs
 Set of the popup dialogs, either parented or unparented, which, when active, should cause a warning icon to be displayed.

Static Protected Attributes

static const int theTimeToWaitForExecInfo = 2
 The time, in seconds, to wait for information requested from a remote rtiexec.
- Static Protected Attributes inherited from DtAssistantMgr
static QIcon theRtiIcon
 The icons used by the RTI Assistant.
static QIcon theSmallRtiIcon
static QIcon theWebIcon
static QIcon theNotifyRtiIcon
static QIcon theWarningRtiIcon
static QIcon thePreferencesIcon
static QIcon theAboutIcon
static QIcon theHelpIcon
static bool theIconsAreLoaded = false
 Whether or not the icons have yet been loaded.

Private Member Functions

 DtAssistantFederationsInfoMgr (DtAssistantFederationsInfoMgr const &)
 Copy Constructor not implemented – Copy Not Allowed!
DtAssistantFederationsInfoMgroperator= (DtAssistantFederationsInfoMgr const &)
 Assignment not implemented – Assignment Not Allowed!

Message Callbacks

Callbacks for federation information and command messages

virtual void processObserveMsg (const DtAssistantStateObserveMsg &msg)
 Called by the callback function to process a federation observe message.
virtual void processExecObserveRspMsg (const DtAssistantExecObserveRspMsg &msg)
 Called by the callback function to process an rtiexec observe response message.
virtual void processRemoteRtiexecPopupMsg (const DtAssistantPopupMsg &msg)
 Called by the callback function to process a remote rtiexec popup msg.
virtual void processFederationStateMsg (const DtAssistantFederationStateMsg &msg)
 Called by the callback function to process a federation state message from a local rtiexec or remote assistant.
virtual void processFederateStateMsg (const DtAssistantFederateStateMsg &msg)
 Called by the callback function to process a federate state message from a local rtiexec.
virtual void processExecStateMsgForConnection (const DtAssistantExecStateMsg &msg)
 Called by the callback function to process a federation state message on behalf of an rtiAssistanttoAssistantClient that requested the data.
virtual void processTimeStateMsg (const DtAssistantTimeStateMsg &msg)
 Called by the callback function to process a time state message from a local rtiexec.
virtual void processSyncPtStateMsg (const DtAssistantSyncPtUpdateMsg &msg)
 Called by the callback function to process a synchronization point state message.
virtual void processAssistantCommandMsg (const DtAssistantCommandMsg &msg)
 Processes an RTI Assistant command message.
virtual void processFederateRequestMsg (const DtAssistantFederateReqMsg &msg)
 Called by the callback function to process federate info request.
virtual void processFederateResponseMsg (const DtAssistantFederateRespMsg &msg)
 Called by the callback function to process federate info response.
virtual void forwardMsgToLocalRtiexec (const DtAssistantMsg &msg, bool sendOnlyIfCommandsAccepted=false)
 Called by callback functions to simply forward a message to a local rtiexec.
virtual void forwardMsgFromLocalRtiexec (const DtAssistantMsg &msg)
 Called by the callback function to forward a local rtiexec message to remote assistants.
virtual void processSignalTickedMsg (const DtAssistantSignalTickedMsg &msg)
 Called by the callback function to process the signal ticked message.
static void processObserveMsg (const DtAssistantStateObserveMsg &msg, void *usr)
 Callback to process a federation observe message.
static void processExecObserveRspMsg (const DtAssistantExecObserveRspMsg &msg, void *usr)
 Callback to process an rtiexec observe response message.
static void processRemoteRtiexecPopupMsg (const DtAssistantPopupMsg &msg, void *usr)
 Callback to process a popup message from a remote rtiexec.
static void processFederationStateMsg (const DtAssistantFederationStateMsg &msg, void *usr)
 Callback to process a federation state message from a local rtiexec or remote assistant.
static void processFederateStateMsg (const DtAssistantFederateStateMsg &msg, void *usr)
 Callback to process a federate state message from a local rtiexec.
static void processExecStateMsgForConnection (const DtAssistantExecStateMsg &msg, void *usr)
 Called to process a exec state message on behalf of an rtiAssistanttoAssistantClient that requested the data.
static void processTimeStateMsg (const DtAssistantTimeStateMsg &msg, void *usr)
 Callback to process a time state message from a local rtiexec.
static void processSyncPtStateMsg (const DtAssistantSyncPtUpdateMsg &msg, void *usr)
 Callback to process a synchronization point state message.
static void processAssistantCommandMsg (const DtAssistantCommandMsg &msg, void *usr)
 Processes an RTI Assistant command message.
static void processFederateDeleteMsg (const DtAssistantDeleteFederateMsg &msg, void *usr)
 Callback to process a federate delete message.
static void processFederationDeleteMsg (const DtAssistantDeleteFederationMsg &msg, void *usr)
 Callback to process a federation delete message.
static void processFederateRequestMsg (const DtAssistantFederateReqMsg &msg, void *usr)
 Callback to process a federate info request from a remote peer.
static void processFederateResponseMsg (const DtAssistantFederateRespMsg &msg, void *usr)
 Callback to process a federate info response from a remote peer.
static void forwardRtiexecNotifyMsg (const DtAssistantNotifyMsg &msg, void *usr)
 Callback to forward a notify message from a local rtiexec to a remote assistant.
static void forwardRtiexecPopupMsg (const DtAssistantPopupMsg &msg, void *usr)
 Callback to forward a popup message from a local rtiexec to a remote assistant.
static void forwardRtiexecLogMsg (const DtAssistantLogMsg &msg, void *usr)
 Callback to forward a log message from a local rtiexec to a remote assistant.
static void forwardLogRequestMsg (const DtAssistantLogRequestMsg &msg, void *usr)
 Callback to process a log request from a remote peer for a local rtiexec.
static void forwardRtiexecExitMsg (const DtAssistantExitMsg &msg, void *usr)
 Callback to process a request from a remote peer to shutdown a local rtiexec.
static void processSignalTickedMsg (const DtAssistantSignalTickedMsg &msg, void *usr)
 Callback to process a signal ticked message from a federate.

Detailed Description

Compiles federation information from rtiexecs and LRCs.

Member Typedef Documentation

typedef std::pair<MAKRti::DtString, unsigned> DtAssistantFederationsInfoMgr::DtFedexFederatePair
protected

Federates we are trying to locate.

Maps of locally joined Federates based off Components.

typedef std::pair< MAKRti::DtString, unsigned int > DtAssistantFederationsInfoMgr::FederationNameFederateHandlePair
protected

Constructor & Destructor Documentation

DtAssistantFederationsInfoMgr::DtAssistantFederationsInfoMgr ( DtBoost::shared_ptr< DtRtiAssistantServer server,
DtBoost::shared_ptr< DtRtiAssistantPeer peer,
DtAssistantSignalRouter signalRouter,
DtBoost::shared_ptr< DtAssistantComponentMgr compMgr,
DtBoost::shared_ptr< DtAssistantConnectionInfoMgr connInfoMgr 
)

Constructor.

References DtAssistantSignalTickedMsg::addCallback(), DtAssistantExitMsg::addCallback(), DtAssistantLogRequestMsg::addCallback(), DtAssistantExecObserveRspMsg::addCallback(), DtAssistantDeleteFederationMsg::addCallback(), DtAssistantTimeStateMsg::addCallback(), DtAssistantDeleteFederateMsg::addCallback(), DtAssistantLogMsg::addCallback(), DtAssistantNotifyMsg::addCallback(), DtAssistantPopupMsg::addCallback(), DtAssistantSyncPtUpdateMsg::addCallback(), DtAssistantCommandMsg::addCallback(), DtAssistantStateObserveMsg::addCallback(), DtAssistantFederationStateMsg::addCallback(), DtAssistantFederateStateMsg::addCallback(), DtFederateAddedSig, DtFederateInfoQuery, DtFederateLocReceivedSig, DtFederateRemovedSig, DtFederateUpdatedSig, DtFederationAddedSig, DtFederationInfoQuery, DtFederationRemovedSig, DtFederationUpdatedSig, DtLocalFederateJoinedSig, DtLocalFederateResignedSig, DtRequestFederateLocSig, DtRtiConnHeartbeatSig, DtRtiConnPruneSig, DtRtiConnsAddedOrUpdatedSig, DtRtiexecComponentRemovedSig, DtRtiexecComponentRemovedUnexpectedlySig, DtRtiexecHasNoFederationsSig, DtRtiexecStartupRequestedSig, DtWarningTickIntervalUpdatedSig, federateAdded(), federateLocReceived(), federateRemoved(), federateUpdated(), federationAdded(), federationRemoved(), federationUpdated(), forwardLogRequestMsg(), forwardRtiexecExitMsg(), forwardRtiexecLogMsg(), forwardRtiexecNotifyMsg(), forwardRtiexecPopupMsg(), myClock, DtAssistantMgr::myPeer, DtAssistantMgr::myServer, processAssistantCommandMsg(), processConnectionsUpdate(), processExecObserveRspMsg(), processFederateDeleteMsg(), processFederateRequestMsg(), processFederateResponseMsg(), processFederateStateMsg(), processFederationDeleteMsg(), processFederationStateMsg(), processLocalFederateJoined(), processLocalFederateResigned(), processObserveMsg(), processRemoteRtiexecPopupMsg(), processSignalTickedMsg(), processSyncPtStateMsg(), processTimeStateMsg(), provideFederateInfo(), provideFederationInfo(), pruneStaleFederationsAndObservers(), DtAssistantSignalRouter::registerQueryResponder(), DtAssistantSignalRouter::registerSignal(), DtAssistantSignalRouter::registerSlot(), removeFederationsForRtiexec(), requestFederateLoc(), rtiexecHasNoFederations(), sendAllFederationInfo(), sendObserveFederationsMsg(), startRtiexec(), and updateFederateWarningTickInterval().

DtAssistantFederationsInfoMgr::~DtAssistantFederationsInfoMgr ( )
DtAssistantFederationsInfoMgr::DtAssistantFederationsInfoMgr ( DtAssistantFederationsInfoMgr const &  )
private

Copy Constructor not implemented – Copy Not Allowed!

Member Function Documentation

void DtAssistantFederationsInfoMgr::federateAdded ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
unsigned  federateHandle 
)
signal

Emitted when a new federate is added.

Referenced by DtAssistantFederationsInfoMgr(), processFederateResponseMsg(), and processLocalFederateJoined().

const DtAssistantFederateInfo * DtAssistantFederationsInfoMgr::federateInfo ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
unsigned  federateHandle 
)
virtual
void DtAssistantFederationsInfoMgr::federateLocReceived ( const DtRtiConnectionInfo connInfo,
const MAKRti::DtString &  federationName,
unsigned  federateHdl,
const DtAssistantInfo astnt,
unsigned  compId 
)
signal

Emitted when remote federate location is received after processing a requestFederateLoc from another manager.

Referenced by DtAssistantFederationsInfoMgr(), processFederateResponseMsg(), and requestFederateLoc().

void DtAssistantFederationsInfoMgr::federateRemoved ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
unsigned  federateHandle 
)
signal
const DtFederateInfoByHandleMap * DtAssistantFederationsInfoMgr::federates ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName 
) const
virtual

Get a list of federates in the given federation.

References DtAssistantFederationInfo::federates(), and federationInfo().

Referenced by processFederateRequestMsg().

void DtAssistantFederationsInfoMgr::federateUpdated ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
unsigned  federateHandle 
)
signal

Emitted when a federate is updated.

Referenced by DtAssistantFederationsInfoMgr(), processFederateResponseMsg(), and processFederateStateMsg().

void DtAssistantFederationsInfoMgr::federationAdded ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName 
)
signal

Emitted when a new federation is added.

Referenced by DtAssistantFederationsInfoMgr(), and processLocalFederateJoined().

const DtAssistantFederationInfo * DtAssistantFederationsInfoMgr::federationInfo ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  name 
) const
virtual

Get information on the given federation.

References myKnownFederations.

Referenced by federateInfo(), federates(), processLocalFederateJoined(), and provideFederationInfo().

void DtAssistantFederationsInfoMgr::federationRemoved ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName 
)
signal
const DtFederationStateByNameMap * DtAssistantFederationsInfoMgr::federations ( const DtRtiConnectionInfo conn) const
virtual

Get a list of federates in the given federation.

References myKnownFederations.

Referenced by viewFederationsForConnection().

void DtAssistantFederationsInfoMgr::federationUpdated ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName 
)
signal
void DtAssistantFederationsInfoMgr::forwardLogRequestMsg ( const DtAssistantLogRequestMsg msg,
void *  usr 
)
static

Callback to process a log request from a remote peer for a local rtiexec.

References forwardMsgToLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::forwardMsgFromLocalRtiexec ( const DtAssistantMsg msg)
virtual
void DtAssistantFederationsInfoMgr::forwardMsgToLocalRtiexec ( const DtAssistantMsg msg,
bool  sendOnlyIfCommandsAccepted = false 
)
virtual

Called by callback functions to simply forward a message to a local rtiexec.

Can optionally specify that the command should only be sent if remote commands are accepted.

References myConnInfoMgr, and DtAssistantMgr::myServer.

Referenced by forwardLogRequestMsg(), forwardRtiexecExitMsg(), processFederateDeleteMsg(), and processFederationDeleteMsg().

void DtAssistantFederationsInfoMgr::forwardRtiexecExitMsg ( const DtAssistantExitMsg msg,
void *  usr 
)
static

Callback to process a request from a remote peer to shutdown a local rtiexec.

References forwardMsgToLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::forwardRtiexecLogMsg ( const DtAssistantLogMsg msg,
void *  usr 
)
static

Callback to forward a log message from a local rtiexec to a remote assistant.

References forwardMsgFromLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::forwardRtiexecNotifyMsg ( const DtAssistantNotifyMsg msg,
void *  usr 
)
static

Callback to forward a notify message from a local rtiexec to a remote assistant.

References forwardMsgFromLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::forwardRtiexecPopupMsg ( const DtAssistantPopupMsg msg,
void *  usr 
)
static

Callback to forward a popup message from a local rtiexec to a remote assistant.

References forwardMsgFromLocalRtiexec().

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

bool DtAssistantFederationsInfoMgr::isLocalRtiexecViewedRemotely ( const DtRtiConnectionInfo conn) const
virtual

Returns true if the connection is for a local rtiexec which is being viewed remotely.

References myRemotelyViewedConnections.

bool DtAssistantFederationsInfoMgr::localFederateInfo ( int  compId,
const DtAssistantFederateInfo **  federate,
DtAssistantFederationInfo **  federation 
)
protectedvirtual

Returns the local federate info matching the given component ID.

Returns false if it could not be found.

References DtAssistantComponentInfo::connUsed(), myCompMgr, and myKnownFederations.

Referenced by processLocalFederateResigned(), and tick().

DtAssistantFederationsInfoMgr& DtAssistantFederationsInfoMgr::operator= ( DtAssistantFederationsInfoMgr const &  )
private

Assignment not implemented – Assignment Not Allowed!

void DtAssistantFederationsInfoMgr::processAssistantCommandMsg ( const DtAssistantCommandMsg msg,
void *  usr 
)
static

Processes an RTI Assistant command message.

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

void DtAssistantFederationsInfoMgr::processAssistantCommandMsg ( const DtAssistantCommandMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processConnectionRemoval ( const DtRtiConnectionInfoDataPair conn)
protectedvirtual
void DtAssistantFederationsInfoMgr::processConnectionsRemoval ( const DtRtiConnectionAndConfiguration conns)
slot

Processes removal of known connections.

References DtRtiConnectionAndConfiguration::connections(), and processConnectionRemoval().

void DtAssistantFederationsInfoMgr::processConnectionsUpdate ( const DtRtiConnectionAndConfiguration conns)
slot
void DtAssistantFederationsInfoMgr::processExecObserveRspMsg ( const DtAssistantExecObserveRspMsg msg,
void *  usr 
)
static

Callback to process an rtiexec observe response message.

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

void DtAssistantFederationsInfoMgr::processExecObserveRspMsg ( const DtAssistantExecObserveRspMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processExecStateMsgForConnection ( const DtAssistantExecStateMsg msg,
void *  usr 
)
static

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

Referenced by processExecStateMsgForConnection(), pruneTimedOutSingleUpdates(), and requestSingleUpdateFromConnectedRtiexecs().

void DtAssistantFederationsInfoMgr::processExecStateMsgForConnection ( const DtAssistantExecStateMsg msg)
virtual

Called by the callback function to process a federation state message on behalf of an rtiAssistanttoAssistantClient that requested the data.

References myCompMgr, myRequestedRtiexecUpdates, DtAssistantMgr::myServer, processExecStateMsgForConnection(), and DtAssistantExecStateMsg::removeCallback().

void DtAssistantFederationsInfoMgr::processFederateDeleteMsg ( const DtAssistantDeleteFederateMsg msg,
void *  usr 
)
static

Callback to process a federate delete message.

References forwardMsgToLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::processFederateRequestMsg ( const DtAssistantFederateReqMsg msg,
void *  usr 
)
static

Callback to process a federate info request from a remote peer.

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::processFederateRequestMsg ( const DtAssistantFederateReqMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processFederateResponseMsg ( const DtAssistantFederateRespMsg msg,
void *  usr 
)
static

Callback to process a federate info response from a remote peer.

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::processFederateResponseMsg ( const DtAssistantFederateRespMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processFederateStateMsg ( const DtAssistantFederateStateMsg msg,
void *  usr 
)
static

Callback to process a federate state message from a local rtiexec.

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

void DtAssistantFederationsInfoMgr::processFederateStateMsg ( const DtAssistantFederateStateMsg msg)
virtual

Called by the callback function to process a federate state message from a local rtiexec.

References DtAssistantFederateStateMsg::assistantCompId(), DtAssistantFederateStateMsg::connectionId(), DtAssistantComponentInfo::connUsed(), DtAssistantFederateStateMsg::federateHandle(), DtAssistantFederateInfo::federateHandle(), DtAssistantFederateStateMsg::federateHostIp(), DtAssistantFederateStateMsg::federateHostName(), DtAssistantFederateStateMsg::federateName(), federateRemoved(), DtAssistantFederateStateMsg::federateType(), federateUpdated(), DtAssistantFederateStateMsg::federationName(), DtAssistantFederateStateMsg::hlaVersion(), DtAssistantFederateStateMsg::isContinuousTest(), DtAssistantFederateStateMsg::isDisconnected(), DtAssistantFederateStateMsg::isReconnecting(), DtAssistantFederateStateMsg::isRemoval(), DtAssistantFederateStateMsg::isTestEnabled(), DtAssistantFederateStateMsg::isTestInProgress(), myCompMgr, myKnownFederations, DtAssistantMgr::myServer, DtAssistantFederateStateMsg::numInitiatedTests(), DtAssistantFederateStateMsg::numTestReports(), DtAssistantFederateInfo::setAssistantCompId(), DtAssistantFederateInfo::setConnId(), DtAssistantFederateInfo::setContinuousTest(), DtAssistantFederateInfo::setFederateHandle(), DtAssistantFederateInfo::setFederateHostAddr(), DtAssistantFederateInfo::setFederateHostName(), DtAssistantFederateInfo::setFederateName(), DtAssistantFederateInfo::setFederateType(), DtAssistantFederateInfo::setFederationName(), DtAssistantFederateInfo::setHeartbeated(), DtAssistantFederateInfo::setHlaVersion(), DtAssistantFederateInfo::setIsDisconnected(), DtAssistantFederateInfo::setIsReconnecting(), DtAssistantFederateInfo::setNumInitiatedTests(), DtAssistantFederateInfo::setNumTestReports(), DtAssistantFederateInfo::setTestEnabled(), and DtAssistantFederateInfo::setTestInProgress().

void DtAssistantFederationsInfoMgr::processFederationDeleteMsg ( const DtAssistantDeleteFederationMsg msg,
void *  usr 
)
static

Callback to process a federation delete message.

References forwardMsgToLocalRtiexec().

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

void DtAssistantFederationsInfoMgr::processFederationStateMsg ( const DtAssistantFederationStateMsg msg,
void *  usr 
)
static

Callback to process a federation state message from a local rtiexec or remote assistant.

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

void DtAssistantFederationsInfoMgr::processFederationStateMsg ( const DtAssistantFederationStateMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processLightweightConnUpdate ( const DtRtiConnectionInfoDataPair conn)
protectedvirtual

Processes an update to a lightweight connection.

References myKnownFederations, and processConnectionRemoval().

Referenced by processConnectionsUpdate().

void DtAssistantFederationsInfoMgr::processLocalFederateJoined ( const DtAssistantComponentInfo info,
const MAKRti::DtString &  federateType,
const MAKRti::DtString &  federateName,
unsigned  federateHandle,
const MAKRti::DtString &  federationName,
unsigned  federationHandle,
DtHlaVersionId  hlaVersion 
)
slot
void DtAssistantFederationsInfoMgr::processLocalFederateResigned ( const DtAssistantComponentInfo compInfo)
slot
void DtAssistantFederationsInfoMgr::processObserveMsg ( const DtAssistantStateObserveMsg msg,
void *  usr 
)
static

Callback to process a federation observe message.

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

void DtAssistantFederationsInfoMgr::processObserveMsg ( const DtAssistantStateObserveMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processRemoteRtiexecPopupMsg ( const DtAssistantPopupMsg msg,
void *  usr 
)
static

Callback to process a popup message from a remote rtiexec.

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

void DtAssistantFederationsInfoMgr::processRemoteRtiexecPopupMsg ( const DtAssistantPopupMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processRtiexecConnUpdate ( const DtRtiConnectionInfoDataPair rtiexec)
protectedvirtual
void DtAssistantFederationsInfoMgr::processSignalTickedMsg ( const DtAssistantSignalTickedMsg msg,
void *  usr 
)
static

Callback to process a signal ticked message from a federate.

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

void DtAssistantFederationsInfoMgr::processSignalTickedMsg ( const DtAssistantSignalTickedMsg msg)
virtual

Called by the callback function to process the signal ticked message.

References myFederateSignalTickMessages, DtAssistantMgr::myServer, and true.

void DtAssistantFederationsInfoMgr::processSyncPtStateMsg ( const DtAssistantSyncPtUpdateMsg msg,
void *  usr 
)
static

Callback to process a synchronization point state message.

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

void DtAssistantFederationsInfoMgr::processSyncPtStateMsg ( const DtAssistantSyncPtUpdateMsg msg)
virtual
void DtAssistantFederationsInfoMgr::processTimeStateMsg ( const DtAssistantTimeStateMsg msg,
void *  usr 
)
static

Callback to process a time state message from a local rtiexec.

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

void DtAssistantFederationsInfoMgr::processTimeStateMsg ( const DtAssistantTimeStateMsg msg)
virtual
void DtAssistantFederationsInfoMgr::provideFederateInfo ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
unsigned  federateHandle,
const DtAssistantFederateInfo **  info 
)
slot

Response to a query for federate info.

References federateInfo().

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::provideFederationInfo ( const DtRtiConnectionInfo conn,
const MAKRti::DtString &  federationName,
const DtAssistantFederationInfo **  info 
)
slot

Response to a query for federation info.

References federationInfo().

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::pruneStaleFederationsAndObservers ( )
slot
void DtAssistantFederationsInfoMgr::pruneTimedOutSingleUpdates ( )
virtual

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

References myClock, myCompMgr, myRequestedRtiexecUpdates, DtAssistantMgr::myServer, processExecStateMsgForConnection(), and DtAssistantExecStateMsg::removeCallback().

Referenced by tick().

void DtAssistantFederationsInfoMgr::removeFederationsForRtiexec ( const DtAssistantComponentInfo comp)
slot
void DtAssistantFederationsInfoMgr::requestFederateLoc ( const DtRtiConnectionInfo connInfo,
const MAKRti::DtString &  federationName,
unsigned  federateHdl 
)
slot
void DtAssistantFederationsInfoMgr::requestSingleUpdateFromConnectedRtiexecs ( int  id)
virtual
void DtAssistantFederationsInfoMgr::rtiexecHasNoFederations ( const DtRtiConnectionInfo conn)
signal

Emitted when an rtiexec response message is received with no federations.

Referenced by DtAssistantFederationsInfoMgr(), processFederationStateMsg(), and removeFederationsForRtiexec().

void DtAssistantFederationsInfoMgr::sendAllFederationInfo ( )
slot
void DtAssistantFederationsInfoMgr::sendObserveFederationsMsg ( )
slot

Sends a message indicating the current connection whose federations are being observed by this assistant.

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

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::startRtiexec ( const DtRtiConnectionInfoDataPair conn,
const DtRtiConnectionConfigurationInfo config,
bool  requestedRemotely 
)
slot
void DtAssistantFederationsInfoMgr::tick ( )
virtual
void DtAssistantFederationsInfoMgr::updateFederateWarningTickInterval ( float  interval)
slot

Updates the interval at which federates must tick in order to prevent warnings.

References interval, myFederateSignalTickMessages, DtAssistantMgr::myServer, and myWarningTickInterval.

Referenced by DtAssistantFederationsInfoMgr().

void DtAssistantFederationsInfoMgr::viewFederationsForConnection ( const DtRtiConnectionInfo conn)
virtual

Member Data Documentation

MAKRti::DtClock DtAssistantFederationsInfoMgr::myClock
protected

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

Referenced by DtAssistantFederationsInfoMgr(), pruneTimedOutSingleUpdates(), requestSingleUpdateFromConnectedRtiexecs(), and tick().

DtBoost::shared_ptr<DtAssistantComponentMgr> DtAssistantFederationsInfoMgr::myCompMgr
protected
DtBoost::shared_ptr<DtAssistantConnectionInfoMgr> DtAssistantFederationsInfoMgr::myConnInfoMgr
protected
DtFedsByConn DtAssistantFederationsInfoMgr::myFederateLocQueries
protected
std::map<int, bool> DtAssistantFederationsInfoMgr::myFederateSignalTickMessages
protected

Set of federate component ids and signal ticks.

Referenced by processLocalFederateResigned(), processSignalTickedMsg(), tick(), and updateFederateWarningTickInterval().

DtConnToFederationStateMap DtAssistantFederationsInfoMgr::myKnownFederations
protected
MAKRti::DtTime DtAssistantFederationsInfoMgr::myLastTickTime
protected

The last tick time.

Referenced by tick().

DtFedInfoByCompIdMap DtAssistantFederationsInfoMgr::myLocalJoinedFederatesByCompIdMap
protected
DtFedInfoByConnFederationPairMap DtAssistantFederationsInfoMgr::myLocalJoinedFederatesByConnFederationNameMap
protected
DtConnToCompIdMap DtAssistantFederationsInfoMgr::myLocalRtiexecConns
protected

Map of all connections which have an rtiexec running locally, mapped to the component ID of the local rtiexec.

Referenced by processConnectionRemoval(), processObserveMsg(), processRtiexecConnUpdate(), and pruneStaleFederationsAndObservers().

DtConnToObserversMap DtAssistantFederationsInfoMgr::myRemotelyViewedConnections
protected
std::set< DtRtiConnectionInfo > DtAssistantFederationsInfoMgr::myRemotelyViewedConnectionsNeedingUpdate
protected

Local connections currently being viewed by remote Assistants which require an update to be sent as soon as we get one.

Referenced by processConnectionRemoval(), processFederationStateMsg(), processObserveMsg(), pruneStaleFederationsAndObservers(), removeFederationsForRtiexec(), and sendAllFederationInfo().

std::map<std::pair<int, MAKRti::DtTime>, std::map<int, MAKRti::DtString> > DtAssistantFederationsInfoMgr::myRequestedRtiexecUpdates
protected

One time rtiexec updates that have been requested.

Referenced by processExecStateMsgForConnection(), pruneTimedOutSingleUpdates(), requestSingleUpdateFromConnectedRtiexecs(), and tick().

std::set< DtRtiConnectionInfo > DtAssistantFederationsInfoMgr::myRtiexecsRequestedForRemoteStart
protected

The list of remote rtiexecs which have been started by this Assistant but have yet to be verified or failed to start.

Referenced by processRemoteRtiexecPopupMsg(), and startRtiexec().

std::set< DtRtiConnectionInfo > DtAssistantFederationsInfoMgr::myRtiexecsStartedByRemoteRequest
protected

The list of local rtiexecs whose startup was requested by remote Assistants but have yet to be verified or failed to start.

Referenced by forwardMsgFromLocalRtiexec(), processRtiexecConnUpdate(), and startRtiexec().

unsigned int DtAssistantFederationsInfoMgr::myTimeStateUpdateInterval
protected

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

Also takes into account remote assistants.

Referenced by processObserveMsg(), pruneStaleFederationsAndObservers(), and tick().

DtRtiConnectionInfo DtAssistantFederationsInfoMgr::myToBeViewedConnection
protected

The connection to be viewed if it ever becomes valid.

Referenced by processRtiexecConnUpdate(), and viewFederationsForConnection().

DtRtiConnectionInfo DtAssistantFederationsInfoMgr::myViewedConnection
protected
float DtAssistantFederationsInfoMgr::myWarningTickInterval
protected

Warning tick interval.

Referenced by processLocalFederateJoined(), tick(), and updateFederateWarningTickInterval().

const int DtAssistantFederationsInfoMgr::theTimeToWaitForExecInfo = 2
staticprotected

The time, in seconds, to wait for information requested from a remote rtiexec.

Referenced by requestSingleUpdateFromConnectedRtiexecs().


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

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)