MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Slots | Signals | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions
DtAssistantConnectionInfoMgr Class Reference

Maintains lists of known RTI connections. More...

+ Inheritance diagram for DtAssistantConnectionInfoMgr:
+ Collaboration diagram for DtAssistantConnectionInfoMgr:

Classes

struct  cmpByBoostUuid

Public Types

typedef std::map
< DtAssistantInfo,
DtAssistantState,
cmpByBoostUuid
DtAssistantStateMap
typedef std::pair
< DtAssistantInfo,
DtAssistantState
DtAssistantStatePair

Public Slots

void processLocalRtiComponentConnected (const DtAssistantComponentInfo *compInfo)
 Processes a local component successfully using a connection.
void processLocalRtiComponentNotConnected (const DtAssistantComponentInfo *compInfo)
 Processes a local component no longer using a connection.
void processLocalForwarderHasRtiexec (const DtAssistantComponentInfo *compInfo)
 Processes a local forwarder reporting a connection with an rtiexec.
void processLocalForwarderHasNoRtiexec (const DtAssistantComponentInfo *compInfo)
 Processes a local forwarder reporting no connection with an rtiexec.
void processNewChosenConnection (const DtRtiConnectionInfo &conn)
 Processes the setting of a new chosen connection.
void processNewChosenConfiguration (const DtRtiConnectionConfigurationInfo &config)
 Processes the setting of a new chosen configuration.
void processLocalInterfaceConfiguration (const DtRtiConnectionInfoDataPair &config, const DtRtiConnectionConfigurationInfo &configInfo)
 Processes the setting of local interface configurations.
void processClearChosenConnection ()
 Processes the clearing of the chosen connection and configuration.
void setLightweightMemory (unsigned int newVal)
 Processes the lightweight memory value changing.
void setAssistantUpdateInterval (unsigned int newVal)
 Processes the assistant update interval value changing.
void setAcceptRemoteCommands (bool newVal)
 Processes the accept remote commands setting changing.
void setSendForeignQuery (bool newVal)
 Set whether queries to foreign assistants should be sent at startup.
void provideAssistantInfo (const DtAssistantUuid &assistantUuid, DtAssistantInfo *infoIn)
 Query responder to provide assistant info for the given uuid.
void recoverConnection (const DtRtiConnectionInfo &connInfo, DtRtiConnectionInfo &recoveredConn)
 Query responder to recover the actual connection info from a connecting rtiexec that best matches the connection info it reported but may not match the connection used (i.e., incorrect host and udpInterface).
virtual void addAssistantConnection (const DtAssistantConnectionStruct &connection)
 add/remove assistant connections
virtual bool remoteAddAssistantConnection (const DtAssistantConnectionStruct &connection)
virtual void removeAssistantConnection (const DtAssistantConnectionStruct &connection)
virtual bool isRemoteAddressAssistantConnection (const DtInetAddr &localDeviceAddr, const DtInetAddr &remoteAddr)
void assistantToAssistantConnectionUpdated (const DtAssistantConnectionStruct &, DtAssistantConnectionState)
- Public Slots inherited from DtAssistantMgr
void displayWarningDialogs ()
 Displays all warning dialogs.

Signals

void heartbeat ()
 Emitted when other managers should heartbeat local data to remote assistants.
void prune ()
 Emitted when other managers should prune data from remote assistants.
void connectionsAddedOrUpdated (const DtRtiConnectionAndConfiguration &conns)
 Emitted when a connection is added or updated.
void connectionsAboutToBeRemoved (const DtRtiConnectionAndConfiguration &conns)
 Emitted when a connection is about to be completely removed.
void connectionsRemoved (const DtRtiConnectionAndConfiguration &conns)
 Emitted when a connection is completely removed.
void assistantFound (const DtAssistantInfo &info)
 Emitted when a new assistant is discovered.
void assistantLost (const DtAssistantInfo &info)
 Emitted when a known assistant is lost.
void rtiexecStartupRequested (const DtRtiConnectionInfoDataPair &, const DtRtiConnectionConfigurationInfo &, bool)
 Emitted when a remote request is received to start an rtiexec.
void rtiForwarderStartupRequested (const DtRtiConnectionInfoDataPair &, const DtRtiConnectionConfigurationInfo &, bool)
 Emitted when a remote request is received to start an rtiForwarder.
void assistantConnectionInformationUpdated (const DtAssistantConnectionStruct &, const DtAssistantConnectionStruct &)
- 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

 DtAssistantConnectionInfoMgr (DtBoost::shared_ptr< DtRtiAssistantServer > server, DtBoost::shared_ptr< DtRtiAssistantPeer > peer, DtAssistantSignalRouter &signalRouter, const MAKRti::DtFilename &configDir, const MAKRti::DtString &logFileName)
 Constructor.
virtual ~DtAssistantConnectionInfoMgr ()
 Destructor.
virtual void initialize ()
 Initializes this manager just prior to beginning assistant processing.
virtual void tick ()
 Performs tasks that need to be completed periodically.
virtual void startShutdown ()
 Performs any necessary processing at the start of shutdown.
virtual bool isCacheFileVersionOld () const
 Returns true if the opened cache file had an older version.
virtual unsigned int lightweightMemoryPeriod () const
 Get memory period, in minutes, for remote lightweight connections.
virtual unsigned int lightweightHeartbeatInterval () const
 Get the interval between lightweight conn heartbeat messages.
virtual unsigned int assistantMemoryPeriod () const
 Get memory period, in seconds, for remote assistant information.
virtual unsigned int assistantHeartbeatInterval () const
 Get the interval between assistant heartbeat messages.
virtual unsigned int requestedAssistantHeartbeatInterval () const
 Get the interval at which this assistant requests remote assistant heartbeat messages.
virtual bool acceptRemoteCommands () const
 Get whether or not this assistant accepts commands.
virtual bool sendForeignQuery () const
 Get whether queries to foreign assistants should be sent at startup.
virtual bool remoteAssistantAcceptsCommands (const DtAssistantInfo &assistant) const
 Get whether or not a remote assistant accepts commands.
virtual bool hostHasARemoteAssistantThatAcceptsCommands (const DtHostNameAddress &host, const DtInetAddr &publicAddr, const MAKRti::DtInetAddr &interfaceAddr) const
 Determine whether there are any remote assistants on the given host machine that will accept commands.
virtual int getRemoteAssistants (const DtString &hostName, DtAssistantInfoSet &assistants) const
 Get the remote assistants on the given host.
virtual int getRemoteAssistants (const DtInetAddr &hostIp, DtAssistantInfoSet &assistants) const
 Get the remote assistants on the given host IP.
virtual const DtAssistantInforemoteAssistant (const DtString &hostName) const
 Return the first matching remote assistant on the given host name; NULL if not found.
virtual const DtAssistantInforemoteAssistant (const DtInetAddr &hostIp) const
 Return the first matching remote assistant on the given host ip; NULL if not found.
virtual const DtAssistantInforemoteAssistant (const DtAssistantUuid &uuid) const
 Return the remote assistant with the given UUID; NULL if not found.
virtual const DtInetAddr & assistantPublicAddress (const DtInetAddr &inetAddr) const
 If possible find the Assistant (maybe this one) with this IP address as one of its interfaces and return the Assistant's public address; otherwise, return anyAddr.
virtual int localRtiexecCompId (const DtRtiConnectionInfo &conn) const
 Gets the component ID of the local rtiexec on the given connection, or returns -1 if it cannot be found.
virtual int localRtiForwarderCompId (const DtRtiConnectionInfo &conn) const
 Gets the component ID of the local rtiFrowarder that matches the conn.
virtual bool getRemoteRtiexecLocation (const DtRtiConnectionInfo &conn, DtAssistantInfo &assistant, int &id) const
 Finds the location (assistant and component ID) of the remote rtiexec for the given connection.
virtual bool getRtiExecConnection (const DtRtiConnectionInfo &conn, DtRtiConnectionInfo &rtiExecConn) const
 Find a connection that is hosting an active rtiexec component and whose address and port matches the given connection Return true if the connection was found; otherwise, false.
virtual bool getRemoteRtiForwarderLocation (const DtRtiConnectionInfo &conn, DtAssistantInfo &assistant, int &id) const
 Finds the location (assistant and component ID) of the remote RTI Forwarder for the given connection.
virtual bool getRemoteRtiexecConnInfo (const DtAssistantInfo &assistant, int id, DtRtiConnectionInfoDataPair &conn) const
 Finds connection information for the remote rtiexec based on its location (assistant and component ID)
virtual bool getRemoteForwarderConnInfo (const DtAssistantInfo &assistant, int id, DtRtiConnectionInfoDataPair &conn) const
 Finds connection information for the remote forwarder based on its location (assistant and component ID)
virtual bool getChosenConnection (DtRtiConnectionInfoDataPair &conn)
 Finds the currently chosen connection. Returns false if there is no chosen connection.
virtual bool getChosenConfiguration (DtRtiConfigurationInfoDataPair &config)
 Finds the currently chosen configuration. Returns false if there is no chosen configuration.
virtual bool getConnectionInfo (DtRtiConnectionInfoDataPair &conn)
 Finds and retrieves the full connection info and associated data for the connection.
virtual bool getConfigurationForConn (const DtRtiConnectionInfo &conn, DtRtiConfigurationInfoDataPair &config)
 Finds and retrieves the full connection info and associated data for the connection.
virtual MAKRti::DtString connectionName (const DtRtiConnectionInfo &conn)
 Returns the name for the given connection.
virtual bool isStillDefaultChosen () const
 Returns true if a connection file was not found and loaded when the cache was created and the user has not yet set (or unset) a chosen connection.
virtual const
DtRtiConnectionAndConfiguration
connectionsAndConfigurations ()
 Returns the current list of all connections and configurations.
virtual void addUserDefinedConnections (const DtRtiConnectionAndConfiguration &conns)
 Adds new user defined connections.
virtual void removeUserDeletedConnections (const DtRtiConnectionAndConfiguration &conns)
 Removes user deleted connections.
virtual void removeAllLocalRtiexecsForwarders ()
 Remove all local rtiexecs and forwarders.
virtual void removeAllLocalLightweightConns ()
 Remove all local lightweight connections.
virtual bool isConnConflicting (const DtRtiConnectionInfo &conn, MAKRti::DtString &reason) const
 If the given connection conflicts with any currently active connection, returns true, sets the name of the active conflicting connection, and sets a description of the reason for the conflict.
void saveConnections ()
 Saves the connections to file.
DtNetU128 rawUuid () const
- Public Member Functions inherited from DtAssistantMgr
 DtAssistantMgr (DtBoost::shared_ptr< DtRtiAssistantServer > server, DtBoost::shared_ptr< DtRtiAssistantPeer > peer, DtAssistantSignalRouter &signalRouter)
 Constructor.
virtual ~DtAssistantMgr ()
 Destructor.
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 Member Functions

virtual void processInterfaceFound ()
 Called by the callback function to process discovery of a new network interface.
virtual void heartbeatAssistant ()
 Sends heartbeat messages for majority of assistant information.
virtual void heartbeatLightweightConnections ()
 Sends heartbeat messages for all lightweight connections.
virtual void pruneStaleLightweightConns ()
 Prune remote lightweight connections which have not been heartbeated since the last removal time.
virtual void checkForStaleAssistantsExecsFwrdrs ()
 Prune remote assistants, rtiexecs, and forwarders which have not been heartbeated since the last removal time.
virtual void pruneStaleAssistantExecsFwrdrs (DtRtiConnectionAndConfiguration &connsToRemove, DtRtiConnectionAndConfiguration &updatedConns)
virtual void determineHeartbeatIntervals ()
 From the list of known assistant peers and their respective heartbeat periods, calculate the heartbeat interval (half the shortest interval) for lightweight connection info and other information.
virtual
DtAssistantStateMap::iterator 
addRemoteAssistant (const DtAssistantInfo &assistant)
 Adds the given state information for the given assistant.
virtual void unverifyRtiexecsForwardersForAssistant (const DtAssistantState &assistantState, DtRtiConnectionAndConfiguration &connsToRemove, DtRtiConnectionAndConfiguration &updatedConns)
 Unverify all rtiexecs and forwarders owned by this assistant (assumes iterator is valid).
virtual void unverifyListedRtiexecsForwardersForAssistant (const DtRtiConnectionAndConfiguration &removeList, DtAssistantStateMap::iterator astntIter, DtRtiConnectionAndConfiguration &connsToRemove, DtRtiConnectionAndConfiguration &updatedConns)
 Unverify all of the rtiexecs and forwarders in the given list from the stored list if they are owned by the given assistant (assumes iterator is valid).
virtual void addListedRtiexecsForwardersForAssistant (const DtRtiConnectionAndConfiguration &addList, DtAssistantStateMap::iterator astntIter, DtRtiConnectionAndConfiguration &connsToRemove, DtRtiConnectionAndConfiguration &updatedConns)
 Add all of the rtiexecs and forwarders in the given list to the stored list and assign ownership to the given assistant (assumes iterator is valid).
virtual void checkForConflictingConns (DtRtiConnectionAndConfiguration &updatedConns)
 Checks all connections with unknown or conflicting state to see if they are now conflicting.
virtual void removeConnections (const DtRtiConnectionAndConfiguration &connsToRemove)
 Removes the given connections from the connection list and emits necessary signals.
virtual void setInterfaceForPredefinedConns (const MAKRti::DtInetAddr &interfaceAddr)
 Sets the network interface address to be used for the predefined connections.
- 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.
virtual DtAssistantInfo assistantInfoFromAssistantMsg (const DtAssistantMsg &assistantMsg, DtInetAddrSet *interfaces=0)

Static Protected Member Functions

static void processInterfaceFound (void *usr)
 Callback to process the discovery of a new network interface.

Protected Attributes

DtBoost::shared_ptr
< DtConnectionCache
myConnectionCache
 The cached rtiexec and lightweight connections.
bool myAcceptRemoteCmds
 Whether or not remote commands are accepted.
bool mySendForeignQuery
 Whether queries to foreign assistants should be sent at startup.
DtClock myClock
 Clock for timeouts and periodic update messages.
DtTime myNextAssistantHeartbeatTime
 Time at which we will next send information on our own assistant and local rtiexecs, forwarders, and licenses.
DtTime myNextLightweightHeartbeatTime
 Time at which we will next send information on our own local lightweight connections.
DtTime myNextAssistantInfoRemovalTime
 Time at which we will next remove any un-heartbeated remote assistants, rtiexecs, and forwarders.
DtTime myNextLightweightRemovalTime
 Time at which we will next remove any un-heartbeated remote lightweight connections.
unsigned int myAssistantHeartbeatInterval
 Interval, in secs, at which we will send assistant info heartbeat msgs.
unsigned int myLightweightHeartbeatInterval
 Interval, in secs, at which we will send lightweight conn heartbeat msgs.
unsigned int myAssistantInfoRemovalPeriod
 Interval at which we will check for remote assistants, rtiexecs, and forwarders have not been heartbeated.
unsigned int myLightweightRemovalPeriod
 Interval at which we will check for remote lightweight connections that have not been heartbeated.
MAKRti::DtString myHostName
 Name of this host.
DtRtiConnectionAndConfiguration myRemovedLocalExecsAndFwrdrs
 Sets of removed local rtiexecs and forwarders.
DtAssistantStateMap myRemoteAssistantStates
 All known remote assistants and their current rtiexecs and forwarders.
DtRtiConnectionAndConfiguration myConnsAndConfigs
 All of the connections and configurations.
bool myStillDefaultChosen
 Indicates that the default chosen connection state is still in use (no connection file existed and user has not chosen or unchosen a connection to be used without prompting).
bool myPredefinedConnsNeedInterface
 If there was no network interface when the assistant started, the predefined connections will be invalid.
MAKRti::DtInetAddr myPotentialPredefinedConnsInterface
 A network interface to potentially use for the predefined connections, if it stays active long enough.
DtTime mySetPredefinedConnsInterfaceTime
 Time at which predefined connections should be set with the myPotentialPredefinedConnsInterface.
MAKRti::DtString myLogFileName
 The name of the log file.
- 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.

Private Member Functions

 DtAssistantConnectionInfoMgr (DtAssistantConnectionInfoMgr const &)
 Copy Constructor not implemented – Copy Not Allowed!
DtAssistantConnectionInfoMgroperator= (DtAssistantConnectionInfoMgr const &)
 Assignment not implemented – Assignment Not Allowed!

Message Callbacks

Callbacks for remote assistant info messages

static void processQueryMsg (const DtAssistantQueryMsg &queryMsg, void *usr)
 Query message callback.
static void processInfoMsg (const DtAssistantInfoMsg &infoMsg, void *usr)
 Assistant information message callback.
static void processLightweightInfoMsg (const DtAssistantLightweightInfoMsg &infoMsg, void *usr)
 Assistant lightweight information message callback.
static void processRemovalMsg (const DtAssistantRemovalMsg &remMsg, void *usr)
 Assistant removal message callback.
static void processStartRtiexecMsg (const DtAssistantStartRtiexecMsg &msg, void *usr)
 Start rtiexec message callback.
static void processStartRtiForwarderMsg (const DtAssistantStartRtiForwarderMsg &msg, void *usr)
 Start rtiForwarder message callback.
virtual void processQueryMsg (const DtAssistantQueryMsg &queryMsg)
 Query message callback.
virtual void processInfoMsg (const DtAssistantInfoMsg &infoMsg)
 Query message callback.
virtual void processLightweightInfoMsg (const DtAssistantLightweightInfoMsg &infoMsg)
 Query message callback.
virtual void processRemovalMsg (const DtAssistantRemovalMsg &remMsg)
 Query message callback.
virtual void processStartRtiexecMsg (const DtAssistantStartRtiexecMsg &msg)
 Query message callback.
virtual void processStartRtiForwarderMsg (const DtAssistantStartRtiForwarderMsg &msg)
 Query message callback.

Additional Inherited Members

- 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
 Whether or not the icons have yet been loaded.

Detailed Description

Maintains lists of known RTI connections.

This includes all lightweight and rtiexec, remote and local, active and inactive connections.

Member Typedef Documentation

Constructor & Destructor Documentation

DtAssistantConnectionInfoMgr::DtAssistantConnectionInfoMgr ( DtBoost::shared_ptr< DtRtiAssistantServer server,
DtBoost::shared_ptr< DtRtiAssistantPeer peer,
DtAssistantSignalRouter signalRouter,
const MAKRti::DtFilename &  configDir,
const MAKRti::DtString &  logFileName 
)

Constructor.

virtual DtAssistantConnectionInfoMgr::~DtAssistantConnectionInfoMgr ( )
virtual

Destructor.

DtAssistantConnectionInfoMgr::DtAssistantConnectionInfoMgr ( DtAssistantConnectionInfoMgr const &  )
private

Copy Constructor not implemented – Copy Not Allowed!

Member Function Documentation

virtual bool DtAssistantConnectionInfoMgr::acceptRemoteCommands ( ) const
virtual

Get whether or not this assistant accepts commands.

virtual void DtAssistantConnectionInfoMgr::addAssistantConnection ( const DtAssistantConnectionStruct connection)
virtualslot

add/remove assistant connections

virtual void DtAssistantConnectionInfoMgr::addListedRtiexecsForwardersForAssistant ( const DtRtiConnectionAndConfiguration addList,
DtAssistantStateMap::iterator  astntIter,
DtRtiConnectionAndConfiguration connsToRemove,
DtRtiConnectionAndConfiguration updatedConns 
)
protectedvirtual

Add all of the rtiexecs and forwarders in the given list to the stored list and assign ownership to the given assistant (assumes iterator is valid).

Adds updated connections as well as connection which need to be removed to the specified lists.

virtual DtAssistantStateMap::iterator DtAssistantConnectionInfoMgr::addRemoteAssistant ( const DtAssistantInfo assistant)
protectedvirtual

Adds the given state information for the given assistant.

virtual void DtAssistantConnectionInfoMgr::addUserDefinedConnections ( const DtRtiConnectionAndConfiguration conns)
virtual

Adds new user defined connections.

void DtAssistantConnectionInfoMgr::assistantConnectionInformationUpdated ( const DtAssistantConnectionStruct ,
const DtAssistantConnectionStruct  
)
signal
void DtAssistantConnectionInfoMgr::assistantFound ( const DtAssistantInfo info)
signal

Emitted when a new assistant is discovered.

virtual unsigned int DtAssistantConnectionInfoMgr::assistantHeartbeatInterval ( ) const
virtual

Get the interval between assistant heartbeat messages.

This interval is based on the desired update rates of the remote assistants.

void DtAssistantConnectionInfoMgr::assistantLost ( const DtAssistantInfo info)
signal

Emitted when a known assistant is lost.

virtual unsigned int DtAssistantConnectionInfoMgr::assistantMemoryPeriod ( ) const
virtual

Get memory period, in seconds, for remote assistant information.

virtual const DtInetAddr& DtAssistantConnectionInfoMgr::assistantPublicAddress ( const DtInetAddr &  inetAddr) const
virtual

If possible find the Assistant (maybe this one) with this IP address as one of its interfaces and return the Assistant's public address; otherwise, return anyAddr.

void DtAssistantConnectionInfoMgr::assistantToAssistantConnectionUpdated ( const DtAssistantConnectionStruct ,
DtAssistantConnectionState   
)
slot
virtual void DtAssistantConnectionInfoMgr::checkForConflictingConns ( DtRtiConnectionAndConfiguration updatedConns)
protectedvirtual

Checks all connections with unknown or conflicting state to see if they are now conflicting.

virtual void DtAssistantConnectionInfoMgr::checkForStaleAssistantsExecsFwrdrs ( )
protectedvirtual

Prune remote assistants, rtiexecs, and forwarders which have not been heartbeated since the last removal time.

virtual MAKRti::DtString DtAssistantConnectionInfoMgr::connectionName ( const DtRtiConnectionInfo conn)
virtual

Returns the name for the given connection.

void DtAssistantConnectionInfoMgr::connectionsAboutToBeRemoved ( const DtRtiConnectionAndConfiguration conns)
signal

Emitted when a connection is about to be completely removed.

void DtAssistantConnectionInfoMgr::connectionsAddedOrUpdated ( const DtRtiConnectionAndConfiguration conns)
signal

Emitted when a connection is added or updated.

virtual const DtRtiConnectionAndConfiguration& DtAssistantConnectionInfoMgr::connectionsAndConfigurations ( )
virtual

Returns the current list of all connections and configurations.

void DtAssistantConnectionInfoMgr::connectionsRemoved ( const DtRtiConnectionAndConfiguration conns)
signal

Emitted when a connection is completely removed.

virtual void DtAssistantConnectionInfoMgr::determineHeartbeatIntervals ( )
protectedvirtual

From the list of known assistant peers and their respective heartbeat periods, calculate the heartbeat interval (half the shortest interval) for lightweight connection info and other information.

virtual bool DtAssistantConnectionInfoMgr::getChosenConfiguration ( DtRtiConfigurationInfoDataPair config)
virtual

Finds the currently chosen configuration. Returns false if there is no chosen configuration.

virtual bool DtAssistantConnectionInfoMgr::getChosenConnection ( DtRtiConnectionInfoDataPair conn)
virtual

Finds the currently chosen connection. Returns false if there is no chosen connection.

virtual bool DtAssistantConnectionInfoMgr::getConfigurationForConn ( const DtRtiConnectionInfo conn,
DtRtiConfigurationInfoDataPair config 
)
virtual

Finds and retrieves the full connection info and associated data for the connection.

Returns false if the connection could not be found or if it had no associated configuration.

virtual bool DtAssistantConnectionInfoMgr::getConnectionInfo ( DtRtiConnectionInfoDataPair conn)
virtual

Finds and retrieves the full connection info and associated data for the connection.

Returns false if the connection could not be found.

virtual int DtAssistantConnectionInfoMgr::getRemoteAssistants ( const DtString &  hostName,
DtAssistantInfoSet assistants 
) const
virtual

Get the remote assistants on the given host.

virtual int DtAssistantConnectionInfoMgr::getRemoteAssistants ( const DtInetAddr &  hostIp,
DtAssistantInfoSet assistants 
) const
virtual

Get the remote assistants on the given host IP.

virtual bool DtAssistantConnectionInfoMgr::getRemoteForwarderConnInfo ( const DtAssistantInfo assistant,
int  id,
DtRtiConnectionInfoDataPair conn 
) const
virtual

Finds connection information for the remote forwarder based on its location (assistant and component ID)

virtual bool DtAssistantConnectionInfoMgr::getRemoteRtiexecConnInfo ( const DtAssistantInfo assistant,
int  id,
DtRtiConnectionInfoDataPair conn 
) const
virtual

Finds connection information for the remote rtiexec based on its location (assistant and component ID)

virtual bool DtAssistantConnectionInfoMgr::getRemoteRtiexecLocation ( const DtRtiConnectionInfo conn,
DtAssistantInfo assistant,
int &  id 
) const
virtual

Finds the location (assistant and component ID) of the remote rtiexec for the given connection.

virtual bool DtAssistantConnectionInfoMgr::getRemoteRtiForwarderLocation ( const DtRtiConnectionInfo conn,
DtAssistantInfo assistant,
int &  id 
) const
virtual

Finds the location (assistant and component ID) of the remote RTI Forwarder for the given connection.

virtual bool DtAssistantConnectionInfoMgr::getRtiExecConnection ( const DtRtiConnectionInfo conn,
DtRtiConnectionInfo rtiExecConn 
) const
virtual

Find a connection that is hosting an active rtiexec component and whose address and port matches the given connection Return true if the connection was found; otherwise, false.

void DtAssistantConnectionInfoMgr::heartbeat ( )
signal

Emitted when other managers should heartbeat local data to remote assistants.

virtual void DtAssistantConnectionInfoMgr::heartbeatAssistant ( )
protectedvirtual

Sends heartbeat messages for majority of assistant information.

virtual void DtAssistantConnectionInfoMgr::heartbeatLightweightConnections ( )
protectedvirtual

Sends heartbeat messages for all lightweight connections.

virtual bool DtAssistantConnectionInfoMgr::hostHasARemoteAssistantThatAcceptsCommands ( const DtHostNameAddress host,
const DtInetAddr &  publicAddr,
const MAKRti::DtInetAddr &  interfaceAddr 
) const
virtual

Determine whether there are any remote assistants on the given host machine that will accept commands.

virtual void DtAssistantConnectionInfoMgr::initialize ( )
virtual

Initializes this manager just prior to beginning assistant processing.

Reimplemented from DtAssistantMgr.

virtual bool DtAssistantConnectionInfoMgr::isCacheFileVersionOld ( ) const
virtual

Returns true if the opened cache file had an older version.

virtual bool DtAssistantConnectionInfoMgr::isConnConflicting ( const DtRtiConnectionInfo conn,
MAKRti::DtString &  reason 
) const
virtual

If the given connection conflicts with any currently active connection, returns true, sets the name of the active conflicting connection, and sets a description of the reason for the conflict.

virtual bool DtAssistantConnectionInfoMgr::isRemoteAddressAssistantConnection ( const DtInetAddr &  localDeviceAddr,
const DtInetAddr &  remoteAddr 
)
virtualslot
virtual bool DtAssistantConnectionInfoMgr::isStillDefaultChosen ( ) const
virtual

Returns true if a connection file was not found and loaded when the cache was created and the user has not yet set (or unset) a chosen connection.

virtual unsigned int DtAssistantConnectionInfoMgr::lightweightHeartbeatInterval ( ) const
virtual

Get the interval between lightweight conn heartbeat messages.

virtual unsigned int DtAssistantConnectionInfoMgr::lightweightMemoryPeriod ( ) const
virtual

Get memory period, in minutes, for remote lightweight connections.

virtual int DtAssistantConnectionInfoMgr::localRtiexecCompId ( const DtRtiConnectionInfo conn) const
virtual

Gets the component ID of the local rtiexec on the given connection, or returns -1 if it cannot be found.

virtual int DtAssistantConnectionInfoMgr::localRtiForwarderCompId ( const DtRtiConnectionInfo conn) const
virtual

Gets the component ID of the local rtiFrowarder that matches the conn.

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

Assignment not implemented – Assignment Not Allowed!

void DtAssistantConnectionInfoMgr::processClearChosenConnection ( )
slot

Processes the clearing of the chosen connection and configuration.

static void DtAssistantConnectionInfoMgr::processInfoMsg ( const DtAssistantInfoMsg infoMsg,
void *  usr 
)
staticprotected

Assistant information message callback.

virtual void DtAssistantConnectionInfoMgr::processInfoMsg ( const DtAssistantInfoMsg infoMsg)
protectedvirtual

Query message callback.

static void DtAssistantConnectionInfoMgr::processInterfaceFound ( void *  usr)
staticprotected

Callback to process the discovery of a new network interface.

virtual void DtAssistantConnectionInfoMgr::processInterfaceFound ( )
protectedvirtual

Called by the callback function to process discovery of a new network interface.

static void DtAssistantConnectionInfoMgr::processLightweightInfoMsg ( const DtAssistantLightweightInfoMsg infoMsg,
void *  usr 
)
staticprotected

Assistant lightweight information message callback.

virtual void DtAssistantConnectionInfoMgr::processLightweightInfoMsg ( const DtAssistantLightweightInfoMsg infoMsg)
protectedvirtual

Query message callback.

void DtAssistantConnectionInfoMgr::processLocalForwarderHasNoRtiexec ( const DtAssistantComponentInfo compInfo)
slot

Processes a local forwarder reporting no connection with an rtiexec.

void DtAssistantConnectionInfoMgr::processLocalForwarderHasRtiexec ( const DtAssistantComponentInfo compInfo)
slot

Processes a local forwarder reporting a connection with an rtiexec.

void DtAssistantConnectionInfoMgr::processLocalInterfaceConfiguration ( const DtRtiConnectionInfoDataPair config,
const DtRtiConnectionConfigurationInfo configInfo 
)
slot

Processes the setting of local interface configurations.

void DtAssistantConnectionInfoMgr::processLocalRtiComponentConnected ( const DtAssistantComponentInfo compInfo)
slot

Processes a local component successfully using a connection.

void DtAssistantConnectionInfoMgr::processLocalRtiComponentNotConnected ( const DtAssistantComponentInfo compInfo)
slot

Processes a local component no longer using a connection.

void DtAssistantConnectionInfoMgr::processNewChosenConfiguration ( const DtRtiConnectionConfigurationInfo config)
slot

Processes the setting of a new chosen configuration.

void DtAssistantConnectionInfoMgr::processNewChosenConnection ( const DtRtiConnectionInfo conn)
slot

Processes the setting of a new chosen connection.

static void DtAssistantConnectionInfoMgr::processQueryMsg ( const DtAssistantQueryMsg queryMsg,
void *  usr 
)
staticprotected

Query message callback.

virtual void DtAssistantConnectionInfoMgr::processQueryMsg ( const DtAssistantQueryMsg queryMsg)
protectedvirtual

Query message callback.

static void DtAssistantConnectionInfoMgr::processRemovalMsg ( const DtAssistantRemovalMsg remMsg,
void *  usr 
)
staticprotected

Assistant removal message callback.

virtual void DtAssistantConnectionInfoMgr::processRemovalMsg ( const DtAssistantRemovalMsg remMsg)
protectedvirtual

Query message callback.

static void DtAssistantConnectionInfoMgr::processStartRtiexecMsg ( const DtAssistantStartRtiexecMsg msg,
void *  usr 
)
staticprotected

Start rtiexec message callback.

virtual void DtAssistantConnectionInfoMgr::processStartRtiexecMsg ( const DtAssistantStartRtiexecMsg msg)
protectedvirtual

Query message callback.

static void DtAssistantConnectionInfoMgr::processStartRtiForwarderMsg ( const DtAssistantStartRtiForwarderMsg msg,
void *  usr 
)
staticprotected

Start rtiForwarder message callback.

virtual void DtAssistantConnectionInfoMgr::processStartRtiForwarderMsg ( const DtAssistantStartRtiForwarderMsg msg)
protectedvirtual

Query message callback.

void DtAssistantConnectionInfoMgr::provideAssistantInfo ( const DtAssistantUuid assistantUuid,
DtAssistantInfo infoIn 
)
slot

Query responder to provide assistant info for the given uuid.

void DtAssistantConnectionInfoMgr::prune ( )
signal

Emitted when other managers should prune data from remote assistants.

virtual void DtAssistantConnectionInfoMgr::pruneStaleAssistantExecsFwrdrs ( DtRtiConnectionAndConfiguration connsToRemove,
DtRtiConnectionAndConfiguration updatedConns 
)
protectedvirtual
virtual void DtAssistantConnectionInfoMgr::pruneStaleLightweightConns ( )
protectedvirtual

Prune remote lightweight connections which have not been heartbeated since the last removal time.

DtNetU128 DtAssistantConnectionInfoMgr::rawUuid ( ) const
void DtAssistantConnectionInfoMgr::recoverConnection ( const DtRtiConnectionInfo connInfo,
DtRtiConnectionInfo recoveredConn 
)
slot

Query responder to recover the actual connection info from a connecting rtiexec that best matches the connection info it reported but may not match the connection used (i.e., incorrect host and udpInterface).

The the reported connection's TCP address is used to identify the connection's Assistant and pull from it the host name and udp interfaces.

virtual bool DtAssistantConnectionInfoMgr::remoteAddAssistantConnection ( const DtAssistantConnectionStruct connection)
virtualslot
virtual const DtAssistantInfo* DtAssistantConnectionInfoMgr::remoteAssistant ( const DtString &  hostName) const
virtual

Return the first matching remote assistant on the given host name; NULL if not found.

virtual const DtAssistantInfo* DtAssistantConnectionInfoMgr::remoteAssistant ( const DtInetAddr &  hostIp) const
virtual

Return the first matching remote assistant on the given host ip; NULL if not found.

virtual const DtAssistantInfo* DtAssistantConnectionInfoMgr::remoteAssistant ( const DtAssistantUuid uuid) const
virtual

Return the remote assistant with the given UUID; NULL if not found.

virtual bool DtAssistantConnectionInfoMgr::remoteAssistantAcceptsCommands ( const DtAssistantInfo assistant) const
virtual

Get whether or not a remote assistant accepts commands.

virtual void DtAssistantConnectionInfoMgr::removeAllLocalLightweightConns ( )
virtual

Remove all local lightweight connections.

virtual void DtAssistantConnectionInfoMgr::removeAllLocalRtiexecsForwarders ( )
virtual

Remove all local rtiexecs and forwarders.

virtual void DtAssistantConnectionInfoMgr::removeAssistantConnection ( const DtAssistantConnectionStruct connection)
virtualslot
virtual void DtAssistantConnectionInfoMgr::removeConnections ( const DtRtiConnectionAndConfiguration connsToRemove)
protectedvirtual

Removes the given connections from the connection list and emits necessary signals.

virtual void DtAssistantConnectionInfoMgr::removeUserDeletedConnections ( const DtRtiConnectionAndConfiguration conns)
virtual

Removes user deleted connections.

virtual unsigned int DtAssistantConnectionInfoMgr::requestedAssistantHeartbeatInterval ( ) const
virtual

Get the interval at which this assistant requests remote assistant heartbeat messages.

void DtAssistantConnectionInfoMgr::rtiexecStartupRequested ( const DtRtiConnectionInfoDataPair ,
const DtRtiConnectionConfigurationInfo ,
bool   
)
signal

Emitted when a remote request is received to start an rtiexec.

void DtAssistantConnectionInfoMgr::rtiForwarderStartupRequested ( const DtRtiConnectionInfoDataPair ,
const DtRtiConnectionConfigurationInfo ,
bool   
)
signal

Emitted when a remote request is received to start an rtiForwarder.

void DtAssistantConnectionInfoMgr::saveConnections ( )

Saves the connections to file.

virtual bool DtAssistantConnectionInfoMgr::sendForeignQuery ( ) const
virtual

Get whether queries to foreign assistants should be sent at startup.

void DtAssistantConnectionInfoMgr::setAcceptRemoteCommands ( bool  newVal)
slot

Processes the accept remote commands setting changing.

void DtAssistantConnectionInfoMgr::setAssistantUpdateInterval ( unsigned int  newVal)
slot

Processes the assistant update interval value changing.

virtual void DtAssistantConnectionInfoMgr::setInterfaceForPredefinedConns ( const MAKRti::DtInetAddr &  interfaceAddr)
protectedvirtual

Sets the network interface address to be used for the predefined connections.

void DtAssistantConnectionInfoMgr::setLightweightMemory ( unsigned int  newVal)
slot

Processes the lightweight memory value changing.

void DtAssistantConnectionInfoMgr::setSendForeignQuery ( bool  newVal)
slot

Set whether queries to foreign assistants should be sent at startup.

virtual void DtAssistantConnectionInfoMgr::startShutdown ( )
virtual

Performs any necessary processing at the start of shutdown.

Reimplemented from DtAssistantMgr.

virtual void DtAssistantConnectionInfoMgr::tick ( )
virtual

Performs tasks that need to be completed periodically.

Reimplemented from DtAssistantMgr.

virtual void DtAssistantConnectionInfoMgr::unverifyListedRtiexecsForwardersForAssistant ( const DtRtiConnectionAndConfiguration removeList,
DtAssistantStateMap::iterator  astntIter,
DtRtiConnectionAndConfiguration connsToRemove,
DtRtiConnectionAndConfiguration updatedConns 
)
protectedvirtual

Unverify all of the rtiexecs and forwarders in the given list from the stored list if they are owned by the given assistant (assumes iterator is valid).

Adds updated connections as well as connection which need to be removed to the specified lists.

virtual void DtAssistantConnectionInfoMgr::unverifyRtiexecsForwardersForAssistant ( const DtAssistantState assistantState,
DtRtiConnectionAndConfiguration connsToRemove,
DtRtiConnectionAndConfiguration updatedConns 
)
protectedvirtual

Unverify all rtiexecs and forwarders owned by this assistant (assumes iterator is valid).

Returns lists of conns that have been updated or need to be removed.

Member Data Documentation

bool DtAssistantConnectionInfoMgr::myAcceptRemoteCmds
protected

Whether or not remote commands are accepted.

unsigned int DtAssistantConnectionInfoMgr::myAssistantHeartbeatInterval
protected

Interval, in secs, at which we will send assistant info heartbeat msgs.

unsigned int DtAssistantConnectionInfoMgr::myAssistantInfoRemovalPeriod
protected

Interval at which we will check for remote assistants, rtiexecs, and forwarders have not been heartbeated.

DtClock DtAssistantConnectionInfoMgr::myClock
protected

Clock for timeouts and periodic update messages.

DtBoost::shared_ptr<DtConnectionCache> DtAssistantConnectionInfoMgr::myConnectionCache
protected

The cached rtiexec and lightweight connections.

DtRtiConnectionAndConfiguration DtAssistantConnectionInfoMgr::myConnsAndConfigs
protected

All of the connections and configurations.

MAKRti::DtString DtAssistantConnectionInfoMgr::myHostName
protected

Name of this host.

unsigned int DtAssistantConnectionInfoMgr::myLightweightHeartbeatInterval
protected

Interval, in secs, at which we will send lightweight conn heartbeat msgs.

unsigned int DtAssistantConnectionInfoMgr::myLightweightRemovalPeriod
protected

Interval at which we will check for remote lightweight connections that have not been heartbeated.

MAKRti::DtString DtAssistantConnectionInfoMgr::myLogFileName
protected

The name of the log file.

DtTime DtAssistantConnectionInfoMgr::myNextAssistantHeartbeatTime
protected

Time at which we will next send information on our own assistant and local rtiexecs, forwarders, and licenses.

DtTime DtAssistantConnectionInfoMgr::myNextAssistantInfoRemovalTime
protected

Time at which we will next remove any un-heartbeated remote assistants, rtiexecs, and forwarders.

DtTime DtAssistantConnectionInfoMgr::myNextLightweightHeartbeatTime
protected

Time at which we will next send information on our own local lightweight connections.

DtTime DtAssistantConnectionInfoMgr::myNextLightweightRemovalTime
protected

Time at which we will next remove any un-heartbeated remote lightweight connections.

MAKRti::DtInetAddr DtAssistantConnectionInfoMgr::myPotentialPredefinedConnsInterface
protected

A network interface to potentially use for the predefined connections, if it stays active long enough.

bool DtAssistantConnectionInfoMgr::myPredefinedConnsNeedInterface
protected

If there was no network interface when the assistant started, the predefined connections will be invalid.

DtAssistantStateMap DtAssistantConnectionInfoMgr::myRemoteAssistantStates
protected

All known remote assistants and their current rtiexecs and forwarders.

DtRtiConnectionAndConfiguration DtAssistantConnectionInfoMgr::myRemovedLocalExecsAndFwrdrs
protected

Sets of removed local rtiexecs and forwarders.

bool DtAssistantConnectionInfoMgr::mySendForeignQuery
protected

Whether queries to foreign assistants should be sent at startup.

DtTime DtAssistantConnectionInfoMgr::mySetPredefinedConnsInterfaceTime
protected

Time at which predefined connections should be set with the myPotentialPredefinedConnsInterface.

bool DtAssistantConnectionInfoMgr::myStillDefaultChosen
protected

Indicates that the default chosen connection state is still in use (no connection file existed and user has not chosen or unchosen a connection to be used without prompting).


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

Document ID: Generated on Fri Sep 27 00:57:56 EDT 2019 from SVN revision 201708
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)