20 #include <boost/uuid/uuid.hpp>
55 DtBoost::shared_ptr<DtRtiAssistantPeer> peer,
57 const MAKRti::DtFilename& configDir,
58 const MAKRti::DtString& logFileName);
65 return *
reinterpret_cast<const boost::uuids::uuid*
>(&a.
uuid()) < *reinterpret_cast<const boost::uuids::uuid*>(&b.
uuid());
91 virtual bool isCacheFileVersionOld()
const;
94 virtual unsigned int lightweightMemoryPeriod()
const;
97 virtual unsigned int lightweightHeartbeatInterval()
const;
100 virtual unsigned int assistantMemoryPeriod()
const;
104 virtual unsigned int assistantHeartbeatInterval()
const;
108 virtual unsigned int requestedAssistantHeartbeatInterval()
const;
111 virtual bool acceptRemoteCommands()
const;
114 virtual bool sendForeignQuery()
const;
117 virtual bool remoteAssistantAcceptsCommands(
const DtAssistantInfo& assistant )
const;
121 virtual bool hostHasARemoteAssistantThatAcceptsCommands(
122 const DtHostNameAddress& host,
const DtInetAddr& publicAddr,
const MAKRti::DtInetAddr& interfaceAddr)
const;
125 virtual int getRemoteAssistants(
const DtString& hostName,
DtAssistantInfoSet& assistants)
const;
128 virtual int getRemoteAssistants(
const DtInetAddr& hostIp,
DtAssistantInfoSet& assistants)
const;
131 virtual const DtAssistantInfo* remoteAssistant(
const DtString& hostName)
const;
134 virtual const DtAssistantInfo* remoteAssistant(
const DtInetAddr& hostIp)
const;
141 virtual const DtInetAddr& assistantPublicAddress(
const DtInetAddr& inetAddr)
const;
168 virtual bool getRemoteRtiexecConnInfo(
const DtAssistantInfo& assistant,
173 virtual bool getRemoteForwarderConnInfo(
const DtAssistantInfo& assistant,
198 virtual bool isStillDefaultChosen()
const;
210 virtual void removeAllLocalRtiexecsForwarders();
213 virtual void removeAllLocalLightweightConns();
219 MAKRti::DtString& reason )
const;
222 void saveConnections();
224 DtNetU128 rawUuid()
const;
258 static void processInterfaceFound(
void* usr );
262 virtual void processInterfaceFound();
323 void processClearChosenConnection();
326 void setLightweightMemory(
unsigned int newVal );
329 void setAssistantUpdateInterval(
unsigned int newVal );
332 void setAcceptRemoteCommands(
bool newVal );
335 void setSendForeignQuery(
bool newVal );
351 virtual bool isRemoteAddressAssistantConnection(
const DtInetAddr& localDeviceAddr,
const DtInetAddr& remoteAddr);
357 virtual void heartbeatAssistant();
360 virtual void heartbeatLightweightConnections();
364 virtual void pruneStaleLightweightConns();
368 virtual void checkForStaleAssistantsExecsFwrdrs();
376 virtual void determineHeartbeatIntervals();
379 virtual DtAssistantStateMap::iterator addRemoteAssistant(
const DtAssistantInfo& assistant);
384 virtual void unverifyRtiexecsForwardersForAssistant(
const DtAssistantState& assistantState,
392 virtual void unverifyListedRtiexecsForwardersForAssistant(
394 DtAssistantStateMap::iterator astntIter,
402 virtual void addListedRtiexecsForwardersForAssistant(
404 DtAssistantStateMap::iterator astntIter,
415 virtual void setInterfaceForPredefinedConns(
const MAKRti::DtInetAddr& interfaceAddr );
DtAssistantStateMap myRemoteAssistantStates
All known remote assistants and their current rtiexecs and forwarders.
Definition: connInfoMgr.h:469
This file contains the declaration of DtAssistantInfo.
DtUuid DtAssistantUuid
Definition: assistantUtil.h:17
Contains the DtRtiConnectionAndConfiguration class declaration.
The DtAssistantInfoMsg defines a wrapper for the RTI Assistant information message used by the Assist...
Definition: assistantInfoMsg.h:33
The DtAssistantRemovalMsg defines a wrapper for the RTI Assistant removal message used by Assistants ...
Definition: assistantRemovalMsg.h:29
unsigned int myLightweightRemovalPeriod
Interval at which we will check for remote lightweight connections that have not been heartbeated...
Definition: connInfoMgr.h:460
At startup all of the assistant manager classes will register their signals and slots with the signal...
Definition: assistantSignalRouter.h:29
std::set< DtAssistantInfo > DtAssistantInfoSet
Definition: assistantInfo.h:25
unsigned int assistantInactivePeriod
Definition: connInfoMgr.h:40
unsigned int myAssistantInfoRemovalPeriod
Interval at which we will check for remote assistants, rtiexecs, and forwarders have not been heartbe...
Definition: connInfoMgr.h:456
Stores basic information about a remote assistant.
Definition: assistantInfo.h:96
std::pair< DtRtiConnectionInfo, DtRtiAssociatedConnectionData > DtRtiConnectionInfoDataPair
Pair of connection with associated data.
Definition: assistantConnectionInfo.h:29
Structure Remote Assistant to be displayed.
Definition: assistantInfo.h:39
The DtAssistantStartRtiexecMsg defines a wrapper for the RTI Assistant message used to instruct anoth...
Definition: assistantStartRtiexecMsg.h:30
DtTime myNextLightweightRemovalTime
Time at which we will next remove any un-heartbeated remote lightweight connections.
Definition: connInfoMgr.h:446
Definition: connInfoMgr.h:63
DtRtiConnectionAndConfiguration myConnsAndConfigs
All of the connections and configurations.
Definition: connInfoMgr.h:472
bool operator()(const DtAssistantInfo &a, const DtAssistantInfo &b) const
Definition: connInfoMgr.h:64
virtual void startShutdown()
Performs any necessary processing at the start of shutdown.
Definition: assistantMgr.h:62
unsigned int lightweightInactivePeriod
Definition: connInfoMgr.h:39
std::pair< DtAssistantInfo, DtAssistantState > DtAssistantStatePair
Definition: connInfoMgr.h:69
MAKRti::DtString myHostName
Name of this host.
Definition: connInfoMgr.h:463
DtTime myNextLightweightHeartbeatTime
Time at which we will next send information on our own local lightweight connections.
Definition: connInfoMgr.h:438
The DtAssistantQueryMsg defines a wrapper for the RTI Assistant query message used by Assistants to r...
Definition: assistantQueryMsg.h:34
bool acceptsRemoteCommands
Definition: connInfoMgr.h:41
Stores information on any RTI components.
Definition: compInfo.h:25
virtual void initialize()
Initializes this manager just prior to beginning assistant processing.
Definition: assistantMgr.h:56
Base class for all classes which perform management activities for the Assistant. ...
Definition: assistantMgr.h:31
This file contains the declaration of DtAssistantMgr.
DtRtiAssistantPeer manages the sharing of information between one Assistant to other Assistants using...
Definition: rtiAssistantPeer.h:82
Contains the DtRtiAssistantClient class declaration.
Maintains lists of known RTI connections.
Definition: connInfoMgr.h:49
Manages the server connections of the RTI Assistant.
Definition: rtiAssistantServer.h:45
std::map< DtAssistantInfo, DtAssistantState, cmpByBoostUuid > DtAssistantStateMap
Definition: connInfoMgr.h:68
DtAssistantMgr & operator=(DtAssistantMgr const &)
Assignment not implemented – Assignment Not Allowed!
bool mySendForeignQuery
Whether queries to foreign assistants should be sent at startup.
Definition: connInfoMgr.h:427
std::pair< DtRtiConnectionConfigurationInfo, DtRtiAssociatedConfigurationData > DtRtiConfigurationInfoDataPair
Pair of configuration with associated data.
Definition: assistantConnectionConfigurationInfo.h:58
DtHostNameAddress stores information on a host, input as either hostname, IP address, or both.
Definition: hostNameAddress.h:23
std::map< int, DtRtiConnectionInfo > rtiexecs
Definition: connInfoMgr.h:42
Stores the information on an RTI configuration known by the Assistant.
Definition: assistantConnectionConfigurationInfo.h:61
Definition: assistantStartRtiexecMsg.h:210
virtual void tick()
Performs tasks that need to be completed periodically.
Definition: assistantMgr.h:59
The DtAssistantLightweightInfoMsg defines a wrapper for the RTI Assistant lightweight connection info...
Definition: assistantLightweightInfoMsg.h:35
Contains useful functions specific to the rtiAssistant.
unsigned int myAssistantHeartbeatInterval
Interval, in secs, at which we will send assistant info heartbeat msgs.
Definition: connInfoMgr.h:449
DtRtiConnectionAndConfiguration myRemovedLocalExecsAndFwrdrs
Sets of removed local rtiexecs and forwarders.
Definition: connInfoMgr.h:466
bool myAcceptRemoteCmds
Whether or not remote commands are accepted.
Definition: connInfoMgr.h:424
const DtAssistantUuid & uuid() const
std::map< int, DtRtiConnectionInfo > forwarders
Definition: connInfoMgr.h:43
DtClock myClock
Clock for timeouts and periodic update messages.
Definition: connInfoMgr.h:430
Definition: connInfoMgr.h:34
DtTime mySetPredefinedConnsInterfaceTime
Time at which predefined connections should be set with the myPotentialPredefinedConnsInterface.
Definition: connInfoMgr.h:489
DtTime myNextAssistantInfoRemovalTime
Time at which we will next remove any un-heartbeated remote assistants, rtiexecs, and forwarders...
Definition: connInfoMgr.h:442
#define DT_DLL_ASSISTANTAPP
Definition: rtiMsConfig.h:122
MAKRti::DtString myLogFileName
The name of the log file.
Definition: connInfoMgr.h:492
bool myStillDefaultChosen
Indicates that the default chosen connection state is still in use (no connection file existed and us...
Definition: connInfoMgr.h:477
bool myPredefinedConnsNeedInterface
If there was no network interface when the assistant started, the predefined connections will be inva...
Definition: connInfoMgr.h:481
Stores the information on an RTI connection and possibly matching configuration known by the Assistan...
Definition: connectionAndConfiguration.h:22
bool heartbeated
Definition: connInfoMgr.h:38
This file contains the declaration of DtAssistantMsgQueue.
DtTime myNextAssistantHeartbeatTime
Time at which we will next send information on our own assistant and local rtiexecs, forwarders, and licenses.
Definition: connInfoMgr.h:434
DtAssistantConnectionState
Definition: assistantAppUtil.h:18
This file contains the declaration of DtLicServerInfo.
DtBoost::shared_ptr< DtConnectionCache > myConnectionCache
The cached rtiexec and lightweight connections.
Definition: connInfoMgr.h:421
DtAssistantState()
Definition: connInfoMgr.h:36
MAKRti::DtInetAddr myPotentialPredefinedConnsInterface
A network interface to potentially use for the predefined connections, if it stays active long enough...
Definition: connInfoMgr.h:485
Stores the information on an RTI connection known by the Assistant.
Definition: assistantConnectionInfo.h:36
unsigned int myLightweightHeartbeatInterval
Interval, in secs, at which we will send lightweight conn heartbeat msgs.
Definition: connInfoMgr.h:452