![]() |
MAK RTIspy API Documentation for HLA 1.3
|
Instances of DtRtiExecFederateMgr process federation-level messages (such as create, destroy, join, resign, and sync points) for HLA applications that are using the rtiexec. More...
Inheritance diagram for DtRtiExecFederateMgr:
Collaboration diagram for DtRtiExecFederateMgr:Public Member Functions | |
| DtRtiExecFederateMgr (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient) | |
| Constructor. | |
| virtual | ~DtRtiExecFederateMgr () |
| Destructor. | |
| std::map< DtString, DtSynchronousFileDistributor * > | distributors () |
| Access to the file distributor. | |
| std::map< DtString, DtSynchronousFileDistributor * > | distributors () const |
| DtSynchronousFileDistributor * | joinDistributor () |
| DtSynchronousFileDistributor * | joinDistributor () const |
| virtual void | init () |
| Virtual initialization within create. | |
CreateDestoryJoinResignServices | |
Handle the create/destroy and join/resign services | |
| virtual void | createFederationExecution (const char *executionName, const char *timeImplName, const char *fed) |
| Process the create federation execution service. | |
| virtual void | destroyFederationExecution (const char *executionName) |
| Process the destroy federation execution service. | |
| virtual RTI::FederateHandle | joinFederationExecution (const char *yourName, const char *executionName, RTI::FederateAmbassador *federateAmbassadorReference, unsigned long flags) |
| Process the join federation execution service. | |
| virtual void | resignFederationExecution (RTI::ResignAction theAction) |
| Process the resign federation execution service. | |
SynchronizationPointServices | |
Handle the synchronization point services | |
| virtual void | registerFederationSynchronizationPoint (char const *label, char const *theTag) |
| Process the register synchronization point service. | |
| virtual void | registerFederationSynchronizationPoint (char const *label, char const *theTag, DtFederateHandleSet const &syncSet) |
| Process the register synchronization point service. | |
| virtual void | synchronizationPointAchieved (char const *label, bool successfully=true) |
| Process the synchronization point achieved service. | |
SaveRestoreServices | |
Process the save and restore services | |
| virtual void | requestFederationSave (char const *label, RTI::FedTime const *time=NULL) |
| Process the request federation save service. | |
| virtual void | federateSaveBegun () |
| Process the federate save begun service. | |
| virtual void | federateSaveComplete () |
| Process the federate save complete service. | |
| virtual void | federateSaveNotComplete () |
| Process the federate save complete service. | |
| virtual void | requestFederationRestore (const char *label) |
| Process the request federation restore service. | |
| virtual void | federateRestoreComplete () |
| Process the federate restore complete service. | |
| virtual void | federateRestoreNotComplete () |
| Process the federate restore complete service. | |
Public Member Functions inherited from DtFederateMgr | |
| virtual | ~DtFederateMgr () |
| Destructor. | |
| virtual MAKRti::DtString | fedFileName (MAKRti::DtString execName) |
| Return the .fed file name associated with the federation execution name. | |
| virtual MAKRti::DtString | timeImplName (MAKRti::DtString execName) |
| Return the time implementation name associated with the federation execution name. | |
| virtual bool | tick () |
| Update the state of the federation. | |
| virtual void | pretick () |
| virtual void | postTickCallbacks () |
| virtual void | addPostTickCallback (const MAKRti::DtString &label, const DtFedMgrPostTickCallbackInfo &cb) |
| virtual void | removePostTickCallback (const MAKRti::DtString &label) |
| virtual char * | getTransportationName (MAKRti::DtTransportType transport) |
| Get transport name service. | |
| virtual char * | getOrderName (MAKRti::DtOrderType order) |
| Get order name service. | |
| virtual MAKRti::DtTransportType | getTransportationHandle (MAKRti::DtString transport) |
| Get transport handle service. | |
| virtual MAKRti::DtOrderType | getOrderHandle (MAKRti::DtString order) |
| Get order handle service. | |
| virtual DtFederateHandle | federateHandle () const |
| Get the federate handle. | |
| virtual MAKRti::DtString const & | fedType () const |
| Get the federate type. | |
| virtual MAKRti::DtString const & | fedName () const |
| Get the federate name (HLA Evolved) | |
| virtual MAKRti::DtString const & | fedExName () const |
| Get the federation execution name. | |
| virtual unsigned long | fedExHandle () const |
| Get the federation execution handle. | |
| virtual bool | isJoined () const |
| Return boolean: federate is joined? | |
| virtual DtConnectionMgr * | connectMgr () |
| Access to the connection manager. | |
| virtual DtConnectionMgr * | connectMgr () const |
| virtual DtRIDParameters * | params () |
| Access to the RID parameters. | |
| virtual DtRIDParameters * | params () const |
| virtual DtFomClassMgr * | fom () |
| Access to the fom. | |
| virtual DtFomClassMgr * | fom () const |
| virtual DtInteractionMgr * | interMgr () |
| Access to the interaction mgr. | |
| virtual DtInteractionMgr * | interMgr () const |
| virtual DtTestManager * | testMgr () |
| Access to the test Manager. | |
| virtual DtTestManager * | testMgr () const |
| virtual DtObjectMgr * | objMgr () |
| Access to the object mgr. | |
| virtual DtObjectMgr * | objMgr () const |
| virtual DtLogicalTimeFactory * | timeFactory () |
| Access to the time factory. | |
| virtual DtLogicalTimeFactory * | timeFactory () const |
| virtual DtRtiAssistantLrcClient * | assistantClient () |
| Access to the RTI Assistant client. | |
| virtual DtRtiAssistantLrcClient * | assistantClient () const |
| virtual bool | isJoinedFederate (DtFederateHandle federateHandleValue) const |
| Return bool: Is the federate handle known to be in the federation. | |
| virtual bool | forcedToResign () const |
| Return bool: Was federate forced to resign? | |
| virtual bool | saveInitiated () const |
| return bool: save initiated? | |
| virtual bool | saveBegun () const |
| return bool: save begun? | |
| virtual bool | restoreRequested () const |
| return bool: restore requested? | |
| virtual bool | restoreInitiated () const |
| return bool: restore initiated ? | |
| virtual bool | restoreBegun () const |
| return bool: restore begun? | |
| virtual const MAKRti::DtString & | restoreLabel () const |
| return current restore label | |
| virtual const MAKRti::DtString & | lastRestoreLabel () const |
| return last restore label | |
| const MAKRti::DtString & | currentFedFileName () const |
| get/set current FED file name | |
| void | setCurrentFedFileName (const MAKRti::DtString &) |
| const MAKRti::DtString & | mimName () const |
| get/set MIM name | |
| void | setMimName (const MAKRti::DtString &) |
| const MAKRti::DtString & | currentTimeImplName () const |
| get/set current time implementation name | |
| void | setCurrentTimeImplName (const MAKRti::DtString &) |
| virtual const MAKRti::DtString & | saveLabel () const |
| Set/Get save label. | |
| virtual void | setSaveLabel (const MAKRti::DtString &value) |
| virtual const MAKRti::DtString & | lastSaveLabel () const |
| Set/Get last save label. | |
| virtual void | setLastSaveLabel (const MAKRti::DtString &value) |
| virtual MAKRti::DtString & | getSaveFileName (const char *label, DtFederateHandle fedHandle, MAKRti::DtString &fileName, bool extendName=true) |
| Create a save file name from the label and return in supplied parameter. | |
| virtual MAKRti::DtString & | getRestoreFileName (const char *label, DtFederateHandle fedHandle, MAKRti::DtString &fileName) |
| Create a restore file name from the label and return in supplied parameter. | |
| virtual unsigned long | tickCount () const |
| Return the number of ticks. | |
| virtual bool | isTicking () const |
| Return true if currently processing tick. | |
| virtual void | reportLatencyTestResults (const DtLatencyReportMsg &msg) |
| Report results of a latency test. | |
| virtual void | reportLatencyTestStatus (const DtTestMgrStatusMsg &msg) |
| Report current latency test status. | |
| virtual void | setWebServerConnected (bool connected) |
| Inform assistant and rtiexec that a web server connection has been established. | |
| unsigned long | flags () const |
| DtResignAction | automaticResignDirective () const |
| virtual void | setTopLevelAmbassador (RTI::RTIambassador *ambPtr) |
| Provide access to top level RTI Ambassador (and Federate Ambassador for 1516E) | |
| RTI::RTIambassador * | rtiAmb () |
| Access to the top level RTI Ambassador given to the federate. | |
| RTI::RTIambassador * | rtiAmb () const |
| Access to the top level RTI Ambassador given to the federate. | |
| virtual RTI::FederateAmbassador * | federateAmbassador () const |
| Access to the Federate Ambassador submitted by the federate. | |
Static Public Member Functions | |
| static DtFederateMgr * | create (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient) |
| Creates an instance of this derived class;. | |
MessageCallbacks | |
Register these methods for callbacks. Pass this manager as the user data | |
| static void | processSyncPointMsg (const DtSyncPointMsg &msg, void *usr) |
| sync point message callback | |
| static void | processDesignatedFederateMsg (const DtDesignatedFederateMsg &msg, void *usr) |
| designated federate message callback | |
| static void | processFomModuleFileRequestMsg (const DtFomModuleRequestMsg &msg, void *usr) |
| Fom Module file distribution message callback. | |
| static void | processCreateResponseMsg (const DtCreateResponseMsg &msg, void *usr) |
| Create response message callback. | |
| static void | processJoinResponseMsg (const DtJoinResponseMsg &msg, void *usr) |
| Join response message callback. | |
| static void | processDestroyResponseMsg (const DtDestroyResponseMsg &msg, void *usr) |
| Destroy response message callback. | |
| static void | processNewFomClassesMsg (const DtNewFomClassesMsg &msg, void *usr) |
| Callback for message indicating new FOM classes have been added via FOM module merging. | |
Static Public Member Functions inherited from DtFederateMgr | |
| static void | setCreatorFunction (DtFederateMgrCreator fn) |
| Register a creator function. | |
| static void | setInternalCreatorFunction (DtFederateMgrCreator fn) |
| Register alternate internal creators. | |
Protected Member Functions | |
| virtual void | initRidTester () |
| Initialize the RidTester. | |
| virtual void | initializeDistributor (const char *executionName) |
| This function will create the distributor if necessary and initialize it. | |
| virtual void | waitForCreateResponse (const char *executionName) |
| This function will wait for the create response or fail and throw. | |
| virtual void | waitForJoinResponse (const char *executionName, std::vector< MAKRti::DtString > &joinModules) |
| This function will wait for the join response or fail and throw. | |
| void | checkJoinResponse () |
| Check the join response and throw appropriate exception on error. | |
| virtual void | initializeTimeFactory () |
| Initialize the time factory. | |
| virtual void | initializeFOM (const char *executionName) |
| Initialize the FOM. | |
| virtual void | postJoinInit (const char *yourName, const char *executionName, const char *federateName, RTI::FederateAmbassador *federateAmbassadorReference) |
| Uses the given information to initialize federate data. | |
| virtual void | handleFailedJoin (unsigned long sourceID, DtJoinConfirmMsg::errorCodes code) |
| Handle the join failure before throwing an exception. | |
| virtual void | setDesignatedFederate (bool isDesignated) |
| Set/Get designated status of this federate's LRC. | |
| virtual bool | isDesignatedFederate () |
| void | appendFomModule (std::vector< MAKRti::DtString > &target, MAKRti::DtString const &source) |
| Append the source FED file name into the target list, stripping the path name as it is appended into the target. | |
| void | appendFomModules (std::vector< MAKRti::DtString > &target, std::vector< MAKRti::DtString > const &source) |
| Append the source FED file names into the target list, stripping the path names as they are appended into the target. | |
| virtual bool | findFedFileNameFromMapping (const MAKRti::DtString execName, const std::vector< MAKRti::DtString > &orig, std::vector< MAKRti::DtString > &namesToUse) const |
| Find the full FED file path from the stripped name. | |
| void | testReadFomModules (const DtRIDParameters::DtStringList &, MAKRti::DtString executionName, bool isMim=false) |
| Attempt to read modules. | |
| virtual void | mergeFomModules (const std::vector< MAKRti::DtString > *fomModules) |
| Merge the given FOM Modules into the current FOM. | |
| virtual void | testSaveProgress () |
| Check for save/restore in progress exceptions. | |
| virtual void | applyRidParameters () |
| Apply RID parameters. | |
| virtual void | processNewFomClasses (const DtNewFomClassesMsg &msg) |
| Takes note of any FOM classes added after we have joined. | |
| virtual void | posttick () |
| Processing after a tick. | |
| DtFedReader * | getReader (DtFomType theFomType) |
| void | populateWithUnknownFoms (std::vector< DtString > &mods, std::vector< DtString > &requestedMods) |
| bool | isFomAvailable (const DtString &fomName) |
| void | getCrcsOfFoms (std::vector< unsigned int > &moduleCrcs, const std::vector< MAKRti::DtString > &creationFomModuleNames) |
| MAKRti::DtFilename & | getStandardMimPath () |
MessageHandling | |
Process federation management messages Registered callback call these methods | |
| virtual void | processSyncPointMsg (const DtSyncPointMsg &msg) |
| Process a sync point message. | |
| virtual void | processDesignatedFederateMsg (const DtDesignatedFederateMsg &msg) |
| Process designated federate message. | |
| virtual void | processFomModuleFileRequestMsg (const DtFomModuleRequestMsg &msg) |
| Process Fom Module file distribution message. | |
| virtual void | processCreateResponseMsg (const DtCreateResponseMsg &msg) |
| Process create response message. | |
| virtual void | processJoinResponseMsg (const DtJoinResponseMsg &msg) |
| Process join response message. | |
| virtual void | processDestroyResponseMsg (const DtDestroyResponseMsg &msg) |
| Process destroy response message. | |
| virtual void | processSaveInitiate (const DtSaveInitiateMsg &msg) |
| Process the save initiate message. | |
| virtual void | processSaveInitiate (const char *label) |
| Process the save initiate. | |
| virtual void | requestImmediateSave (const char *label) |
| Process the immediate save message. | |
| virtual void | processSaveResponse (const DtSaveResponseMsg &msg) |
| Process the save response message. | |
| virtual void | processSaveFinished (const DtSaveFinishedMsg &msg) |
| Process the save finished message. | |
| virtual void | processRestoreReply (const DtRestoreReplyMsg &msg) |
| Process the restore reply message. | |
| virtual void | processRestoreEnd (const DtRestoreEndMsg &msg) |
| Process the restore end message. | |
| virtual void | processRestoreInitiate (const DtRestoreInitiateMsg &msg) |
| Process the restore initiate message. | |
| virtual void | processRestore (const DtRestoreMsg &msg) |
| Process the restore message. | |
| virtual void | processNewFomClassesMsg (const DtNewFomClassesMsg &msg) |
| Process message indicating new FOM classes have been added via FOM module merging. | |
SendMessages | |
Send messages of different types | |
| virtual void | sendCreateMsg (MAKRti::DtString const &fedExNameVal, MAKRti::DtString const &timeImplName, const std::vector< unsigned int > &moduleCrcs, MAKRti::DtFomType fedType, MAKRti::DtString const &momModuleName, const std::vector< MAKRti::DtString > &fomModules, unsigned int momModuleCrc) |
| Send create federation message. | |
| virtual void | sendDestroyMsg (const char *name) |
| Send destroy federation message. | |
| virtual void | sendJoinMsg (unsigned long sourceID, unsigned short requestID, const char *fedType, const char *fedExName, const char *fedName, const std::vector< MAKRti::DtString > &fomModules, const unsigned long flags, const std::vector< unsigned int > &joinModulesCrcs) |
| Send join federation message. | |
| virtual void | sendJoinConfirmMsg (unsigned long sourceID, DtJoinConfirmMsg::errorCodes errorCode) |
| Send join federation confirm message. | |
| virtual void | sendSyncPointMsg (DtSyncMsgType kind, DtFederateHandle &id, char const *name, char const *tag=NULL, DtFederateHandleSet const *set=NULL) |
| Send synchronization point message. | |
| virtual void | sendSaveRequestMsg (unsigned long requestID, const char *label) |
| Send save federation request message. | |
| virtual void | sendSaveBegunMsg () |
| Send save federate begun message. | |
| virtual void | sendSaveCompleteMsg (const char *label, bool success) |
| Send federate complete message. | |
| virtual void | sendRestoreRequestMsg (const char *label) |
| Send restore federation request message. | |
| virtual void | sendRestoreBegunMsg (const char *label, DtResponseFlag response) |
| Send restore federate begun message. | |
| virtual void | sendRestoreCompleteMsg (const char *label, bool success) |
| Send restore federate complete message. | |
SaveRestoreHelpers | |
Helper methods to process save and restore | |
| virtual void | initiateSave () |
| Perform the actual save possibly after waiting to enter time advancing state. | |
| virtual void | initiateTimedSave (RTI::FedTime const &saveTime) |
| Perform the actual save possibly after waiting to enter time advancing state. | |
| virtual bool | saveLRC (DtRtiSaveFile &saveFile) |
| Save the LRC state information. | |
| virtual bool | save (DtRtiSaveFile &file) |
| Save the federation manager state information to the given file. | |
| virtual void | prepareToRestoreLRC () |
| Prepare the state information of the LRC for a restore (may include a back up save in case restore fails). | |
| virtual bool | restoreLRC (DtRtiSaveFile &saveFile) |
| Restore the LRC state information Return bool: restore successful? | |
| virtual void | prepareToRestore () |
| Prepare the state information to be restored (i.e., clear out existing data). | |
| virtual bool | restore (DtRtiSaveFile &file) |
| Restore the federation manager state information from the given file. | |
Protected Member Functions inherited from DtFederateMgr | |
| DtFederateMgr (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient) | |
| Constructor. | |
| virtual void | sendAlive () |
| Send the alive message. | |
| virtual void | sendResignMsg (const char *fedExName, DtFederateHandle fedHandle, DtResignAction action) |
| Send the resign message. | |
| void | sendTickedMsg () |
| Send the signal ticked message. | |
| virtual MAKRti::DtFilename | fedFileNameToUse (MAKRti::DtString fileName, MAKRti::DtString executionName) |
| Utility function, finds fed file name to use based on fed file name and exeution name. | |
| virtual void | testReadFedFile (MAKRti::DtString fileName, MAKRti::DtString executionName) |
| Attempts to read a fed file but does not fill in the fom class. | |
| virtual void | readFedFile (MAKRti::DtString fileName, MAKRti::DtString executionName) |
| Reads a FED file into a DtFomClassMgr object. | |
| virtual void | readFedFilePtr (const FILE *fp, const MAKRti::DtString &fileName, const MAKRti::DtString &executionName) |
| Reads a FED file into a DtFomClassMgr object. | |
| virtual void | addFedExNameMapping (const MAKRti::DtString &execName, const MAKRti::DtString &timeImplName, const MAKRti::DtString &fed) |
| Add mapping between federation execution name, time Impl Name and fed file name. | |
| virtual void | addFomModuleNameMapping (const MAKRti::DtString executionName, const std::vector< MAKRti::DtString > &modules) |
| virtual void | addFomModuleNameMapping (const MAKRti::DtString executionName, const MAKRti::DtString &modules) |
| virtual DtResignAction | testResign (RTI::ResignAction theAction) |
| Test the resign action and return the internal representation. | |
| virtual MAKRti::DtResignAction | convertResignAction (RTI::ResignAction) const |
| virtual RTI::ResignAction | convertResignAction (MAKRti::DtResignAction) const |
| DtFedReader * | getReader (DtFomType theFomType, DtFomClassMgr *target) |
| void | addToParsedFomMap (DtFedReader *myFedReader, const MAKRti::DtString &fileNameToUse, DtFomClassMgr *fedTarget, unsigned long theCrc=0) |
| virtual void | processResign (const DtResignMsg &msg) |
| Process resign message. | |
| virtual void | processEnableDisableNetworkTesting (const DtEnableDisableNetworkTestingMsg &msg) |
| disable network testing | |
| virtual void | processAssistantResign (const DtAssistantExitMsg &msg) |
| Process resign message from Assistant. | |
| virtual void | processAssistantEnableLogging (const DtAssistantLogEnableMsg &msg) |
| Process resign message from Assistant. | |
| virtual void | processSignalTickInterval (const DtAssistantFederateSignalTickIntervalMsg &msg) |
| Process a change in the interval at which a federate is expected to tick. | |
| virtual void | processRidParamRequest (const DtAssistantRidParamsMsg &msg) |
| Process a RID parameter request from the Assistant. | |
| virtual void | createObjectMgr () |
| Create the Object Manager. | |
| virtual void | createInteractionMgr () |
| Create the Interaction Manager. | |
| virtual void | createDdmMgr () |
| Create the DDM Manager. | |
| virtual void | createTimeMgr () |
| Create the Time manager. | |
| virtual void | createMomMgr () |
| Create the MOM Manager. | |
| virtual void | createTestMgr () |
| Create the test Manager. | |
Protected Attributes | |
| std::map< DtString, DtSynchronousFileDistributor * > | myDistributors |
| federate Fed File Distributors. | |
| DtSynchronousFileDistributor * | myJoinDistributor |
| The Fed File Distributor of the joined federation execution. | |
| DtCreateResponseFlag | myCreateResponse |
| Status of create federation. | |
| MAKRti::DtString | myCreateResponseErrorString |
| Error String of create federation. | |
| DtDestroyResponseFlag | myDestroyResponse |
| Status of destroy federation. | |
| DtJoinResponseMsg * | myJoinResponse |
| Copy of join response. | |
| DtJoinConfirmMsg::errorCodes | myJoinConfirmResponse |
| Status of join confirm. | |
| MAKRti::DtString | myDestroyExecutionName |
| Name of federation to destroy. | |
| bool | myFedFileRequest |
| Status of fed file request. | |
| std::vector< MAKRti::DtString > | myFomModuleRequests |
| Queue of modules requested. | |
| unsigned short | myJoinRequestID |
| Join request ID. | |
| unsigned long | mySaveRequestID |
| Save request ID. | |
| DtSaveResponseFlag | mySaveResponse |
| Save response status. | |
| MAKRti::DtHashList | mySyncPoints |
| MAKRti::DtHashList of DtStringHashKeys representing synch point names that have been announced to us. | |
| std::string * | myFailedSyncPointLabel |
| Failed sync point request. | |
| DtFederateHandle | myOldFedHandle |
| during a restore the fedhandle changes. | |
| bool | myIsDesignatedFederate |
| This federate LRC is designated for handling some federation wide tasks (e.g., MOM Federation attribute ownership) | |
| vrlmod::DtThreadedObject * | myDistributorThread |
| Should we use local or distributed fed file? | |
| bool | myAsynchronousDistributor |
| std::map< MAKRti::DtString, DtFileInformation * > | myTakenFiles |
| When files are received from distributor, store them here until requester takes them. | |
| std::list< DtNewFomClassesMsg * > | myNewFomClassMsgs |
| Queue of FOM class messages to be processed after we join. | |
| DtFedReader13 * | myFedReader13 |
| DtFedReader1516 * | myFedReader1516 |
| DtFedReader1516e * | myFedReader1516e |
| MAKRti::DtFilename | myStandardMimPath |
| bool | myFullFedFileDistribution |
Protected Attributes inherited from DtFederateMgr | |
| RTI::RTIambassador * | myRtiAmb |
| The federate's RTI Ambassador. | |
| DtRtiAmbassadorBaseImplementor * | myAmbImpl |
| The federate's RTI Ambassador Implementor. | |
| MAKRti::DtTime | myResponseInterval |
| Interval to wait for response message during a message protocol. | |
| MAKRti::DtString | myFedExName |
| Federation execution name. | |
| unsigned long | myFedExHandle |
| Federation handle. | |
| MAKRti::DtString | myFedType |
| Federate type. | |
| MAKRti::DtString | myFedName |
| Federate name. | |
| DtFederateHandle | myFedHandle |
| Federate handle. | |
| MAKRti::DtString | myCurrentFedFileName |
| Current FED/FDD file name. | |
| MAKRti::DtString | myMimName |
| MIM name. | |
| MAKRti::DtString | myCurrentTimeImplName |
| Current time implementation name. | |
| MAKRti::DtTime | myLastHeartbeat |
| Time of last heartbeat. | |
| DtLogicalTimeFactory * | myLogicalTimeFactory |
| Logical time factory Even if NULL, need to have this factory. | |
| RTI::FedTimeFactory | myHlaTimeFactory |
| DtFedAmbWrapper * | myPrinter |
| Prints data for federate ambassador calls. | |
| DtFedAmbWrapper * | myFedAmbCatch |
| Catches exceptions from federate ambassador calls. | |
| DtRIDParameters * | myParams |
| Initialization data. | |
| DtFedReader * | myFedReader |
| Temporary internal reader used until changes made to VR-Link fed reader. | |
| DtFedReader * | myFedReader13 |
| DtFedReader * | myFedReader1516 |
| DtFedReader * | myFedReader1516e |
| MAKRti::DtList | myMappingList |
| List of federation execution names with FED files names and time implementation names. | |
| std::map< MAKRti::DtString, std::set< MAKRti::DtString > > | myFedFileNames |
| std::map< MAKRti::DtString, DtFomClassMgr * > | myParsedFoms |
| Map containing FOMs parsed into FedTargets. | |
| DtBoost::shared_ptr < DtRtiAssistantLrcClient > | myAssistantClient |
| Manages the connection to the RTI Assistant. | |
| bool | myIgnoreForcedResign |
| Prevents forcing duplicate resign. | |
| bool | myForcedToResign |
| Indicates forced resign occured. | |
| MAKRti::DtClock | myClock |
| Clock for timing. | |
| unsigned long | myTickCount |
| Tick counter. | |
| bool | myIsTicking |
| indicates currently processing tick | |
| bool | myEnableFederateHeartbeat |
| is heartbeating enabled? | |
| bool | myConnectedToWebServer |
| This is set when the federate connects to the web server. | |
| unsigned long | myFlags |
| DtTestManager * | myTestMgr |
| bool | myNetworkTestEnabled |
| float | mySignalTickInterval |
| The Signal Tick Interval. | |
| DtTime | myLastTickTime |
| The last tick time. | |
| DtPostTickCallbackMap | myPostTickCallbacks |
| MAKRti::DtResignAction | myResignAction |
| The resign action. | |
| DtConnectionMgr * | myConnectMgr |
| The connection manager. | |
| DtFomClassMgr * | myFom |
| The FOM manager. | |
| DtInteractionMgr * | myInterMgr |
| The interaction manager. | |
| DtObjectMgr * | myObjMgr |
| The object manager. | |
| DtMomMgr * | myMomMgr |
| The MOM manager. | |
| bool | mySaveInitiated |
| Indicates save initiated. | |
| bool | mySaveBegun |
| Indicates save begun. | |
| bool | myRestoreRequested |
| Indicates restore requested. | |
| bool | myRestoreInitiated |
| Indicates restore initiated. | |
| bool | myRestoreBegun |
| Indicates restore begun. | |
| MAKRti::DtString | mySaveLabel |
| The save label. | |
| MAKRti::DtString | myLastSaveLabel |
| The last save label. | |
| MAKRti::DtString | myRestoreLabel |
| The restore label. | |
| MAKRti::DtString | myLastRestoreLabel |
| The last restore label. | |
Private Member Functions | |
| DtRtiExecFederateMgr (DtFederateMgr const &) | |
| Copy Constructor not implemented – Copy Not Allowed! | |
| DtRtiExecFederateMgr & | operator= (DtRtiExecFederateMgr const &) |
| Assignment not implemented – Assignment Not Allowed! | |
Additional Inherited Members | |
Public Types inherited from DtFederateMgr | |
| typedef DtFederateMgr *(* | DtFederateMgrCreator )(DtRIDParameters *ridParams, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient) |
| Federate manager creator. | |
| typedef void(* | DtFedMgrPostTickCallbackFcn )(void *) |
| typedef std::pair < DtFedMgrPostTickCallbackFcn, void * > | DtFedMgrPostTickCallbackInfo |
| typedef std::map < MAKRti::DtString, DtFedMgrPostTickCallbackInfo > | DtPostTickCallbackMap |
Static Protected Member Functions inherited from DtFederateMgr | |
| static void | processResign (const DtResignMsg &msg, void *usr) |
| resign message callback | |
| static void | processEnableDisableNetworkTesting (const DtEnableDisableNetworkTestingMsg &msg, void *usr) |
| process enable / disable network testing callback | |
| static void | processSaveInitiate (const DtSaveInitiateMsg &msg, void *usr) |
| save initiate message callback | |
| static void | processSaveResponse (const DtSaveResponseMsg &msg, void *usr) |
| save response message callback | |
| static void | processSaveFinished (const DtSaveFinishedMsg &msg, void *usr) |
| save finished message callback | |
| static void | processRestoreReply (const DtRestoreReplyMsg &msg, void *usr) |
| restore reply message callback | |
| static void | processRestore (const DtRestoreMsg &msg, void *usr) |
| restore message callback | |
| static void | processRestoreInitiate (const DtRestoreInitiateMsg &msg, void *usr) |
| restore initiate message callback | |
| static void | processRestoreEnd (const DtRestoreEndMsg &msg, void *usr) |
| restore end message callback | |
| static void | processAssistantResign (const DtAssistantExitMsg &msg, void *usr) |
| Assistant resign message callback. | |
| static void | processAssistantEnableLogging (const DtAssistantLogEnableMsg &msg, void *usr) |
| Assistant logging enable message callback. | |
| static void | processSignalTickInterval (const DtAssistantFederateSignalTickIntervalMsg &msg, void *usr) |
| Assistant signal tick interval message callback. | |
| static void | processRidParamRequest (const DtAssistantRidParamsMsg &msg, void *usr) |
| Assistant RID parameter request message callback. | |
Static Protected Attributes inherited from DtFederateMgr | |
| static DtFederateMgrCreator | theCreator = 0 |
| The plugin creator. | |
| static DtFederateMgrCreator | theInternalCreator = 0 |
| The internal creator. | |
Instances of DtRtiExecFederateMgr process federation-level messages (such as create, destroy, join, resign, and sync points) for HLA applications that are using the rtiexec.
It also manages the manager objects responsible for handling general communication, objects, interactions, the FOM, MOM, and data distribution mmg. Override this class if you want to change how federation-level messages get processed. To inspect federation data, users can obtain a pointer to an instance of this class through the RTI's DtRtiAmbassadorImplementor pointer.
| DtRtiExecFederateMgr::DtRtiExecFederateMgr | ( | DtRIDParameters * | params, |
| DtRtiAmbassadorBaseImplementor * | ambImplPtr, | ||
| DtConnectionMgr * | connMgr, | ||
| DtBoost::shared_ptr< DtRtiAssistantLrcClient > | assistantClient | ||
| ) |
|
virtual |
Destructor.
References DtFederateMgr::connectMgr(), distributeFedFile, fomModuleMerging, myDistributors, myFedReader13, myFedReader1516, myFedReader1516e, myJoinResponse, mySyncPoints, myTakenFiles, DtFederateMgr::params(), processDesignatedFederateMsg(), processFomModuleFileRequestMsg(), processJoinResponseMsg(), processNewFomClassesMsg(), processSyncPointMsg(), DtDesignatedFederateMsg::removeCallback(), DtReportFederationsMsg::removeCallback(), DtFomModuleRequestMsg::removeCallback(), DtSyncPointMsg::removeCallback(), and DtJoinResponseMsg::removeCallback().
|
private |
Copy Constructor not implemented – Copy Not Allowed!
|
protected |
Append the source FED file name into the target list, stripping the path name as it is appended into the target.
Referenced by createFederationExecution().
|
protected |
Append the source FED file names into the target list, stripping the path names as they are appended into the target.
Referenced by createFederationExecution().
|
protectedvirtual |
Apply RID parameters.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtConnectionMgr::enableSmartForwarding(), initRidTester(), DtRIDParameters::maxNumFederates, DtFederateMgr::myParams, and DtRIDParameters::ridConsistencyChecking().
|
protected |
Check the join response and throw appropriate exception on error.
References DtFederateMgr::connectMgr(), DtJoinResponseMsg::DT_FAILED_TO_GET_LICENSE, DtJoinResponseMsg::DT_FED_FILE_MERGE_PROBLEM, DtJoinResponseMsg::DT_FED_FILE_NOT_READY, DtJoinResponseMsg::DT_FEDEX_DOES_NOT_EXIST, DtJoinResponseMsg::DT_MAX_FEDERATES_JOINED, DtJoinResponseMsg::DT_NAME_IN_USE, DtJoinResponseMsg::DT_NO_ERROR, DtJoinResponseMsg::DT_PARTNER_TAKEN, DtJoinResponseMsg::DT_RESTORE_IN_PROGRESS, DtJoinResponseMsg::DT_RTIEXEC_LICENSING_PARAM_MISMATCH, DtJoinResponseMsg::DT_SAVE_IN_PROGRESS, DtJoinResponseMsg::DT_TYPE_CONFLICT, DtJoinConfirmMsg::DtTimedOut, DtToWString(), DtJoinResponseMsg::errorString(), DtJoinResponseMsg::errorValue(), handleFailedJoin(), DtFederateMgr::myFedName, myJoinResponse, DtAssistantPopupHelper::popupAssistantMessage(), processJoinResponseMsg(), and DtJoinResponseMsg::removeCallback().
|
static |
Creates an instance of this derived class;.
Reimplemented from DtFederateMgr.
References DtRtiExecFederateMgr().
Referenced by DtRtiAmbassadorBaseImplementor::completeConnection(), and mergeFomModules().
|
virtual |
Process the create federation execution service.
Implements DtFederateMgr.
References DtCreateResponseMsg::addCallback(), DtFederateMgr::addFedExNameMapping(), DtFederateMgr::addFomModuleNameMapping(), appendFomModule(), appendFomModules(), DtFederateMgr::connectMgr(), distributeFedFile, DtCRWaiting, DtToWString(), getCrcsOfFoms(), initializeDistributor(), DtRIDParameters::momModuleExtensionFileName, momModuleExtensionFileName, myCreateResponse, DtFederateMgr::myFedExName, DtFederateMgr::myFedReader, DtFederateMgr::myParsedFoms, DtFederateMgr::params(), DtAssistantPopupHelper::popupAssistantMessage(), processCreateResponseMsg(), sendCreateMsg(), DtFederateMgr::testReadFedFile(), testReadFomModules(), and waitForCreateResponse().
|
virtual |
Process the destroy federation execution service.
Implements DtFederateMgr.
References DtDestroyResponseMsg::addCallback(), DtFederateMgr::connectMgr(), DtDRExecDestroyed, DtDRExecDoesNotExist, DtDRFederatesJoined, DtDRWaiting, DtToWString(), DtConnectionMgr::enterServiceCall(), DtConnectionMgr::exitServiceCall(), interval, DtFederateMgr::myClock, myDestroyExecutionName, myDestroyResponse, DtFederateMgr::myFedExName, DtFederateMgr::params(), DtAssistantPopupHelper::popupAssistantMessage(), processDestroyResponseMsg(), DtDestroyResponseMsg::removeCallback(), DtRIDParameters::responseInterval, sendDestroyMsg(), DtConnectionMgr::tick(), and DtConnectionMgr::yield().
| std::map< DtString, DtSynchronousFileDistributor * > DtRtiExecFederateMgr::distributors | ( | ) |
Access to the file distributor.
References myDistributors.
Referenced by initializeFOM(), waitForCreateResponse(), and waitForJoinResponse().
| std::map< DtString, DtSynchronousFileDistributor * > DtRtiExecFederateMgr::distributors | ( | ) | const |
References myDistributors.
|
virtual |
Process the federate restore complete service.
Implements DtFederateMgr.
References DtFederateMgr::myRestoreLabel, and sendRestoreCompleteMsg().
|
virtual |
Process the federate restore complete service.
Implements DtFederateMgr.
References DtFederateMgr::myRestoreLabel, and sendRestoreCompleteMsg().
Referenced by processRestoreInitiate().
|
virtual |
Process the federate save begun service.
Implements DtFederateMgr.
References DtFederateMgr::mySaveBegun, and sendSaveBegunMsg().
|
virtual |
Process the federate save complete service.
Implements DtFederateMgr.
References DtFederateMgr::federateHandle(), DtRtiSaveFile::fileName(), DtFederateMgr::getSaveFileName(), DtFederateMgr::myLastSaveLabel, DtFederateMgr::mySaveBegun, DtFederateMgr::mySaveLabel, saveLRC(), and sendSaveCompleteMsg().
|
virtual |
Process the federate save complete service.
Implements DtFederateMgr.
References DtFederateMgr::connectMgr(), DtFederateMgr::mySaveInitiated, DtFederateMgr::mySaveLabel, sendSaveCompleteMsg(), and DtConnectionMgr::setSaveInProgress().
Referenced by initiateSave().
|
protectedvirtual |
Find the full FED file path from the stripped name.
References DtFederateMgr::myFedFileNames.
Referenced by initializeFOM(), waitForCreateResponse(), and waitForJoinResponse().
|
protected |
References DtFederateMgr::myParsedFoms.
Referenced by createFederationExecution().
|
protected |
Reimplemented from DtFederateMgr.
References DtFederateMgr::myFedReader, myFedReader13, myFedReader1516, myFedReader1516e, and NULL.
Referenced by mergeFomModules(), and testReadFomModules().
|
protected |
References DtRtiLibPath(), and myStandardMimPath.
Referenced by isFomAvailable(), and mergeFomModules().
|
protectedvirtual |
Handle the join failure before throwing an exception.
References DtFederateMgr::connectMgr(), DtFederateMgr::myFedExHandle, DtFederateMgr::myFedHandle, processJoinResponseMsg(), DtJoinResponseMsg::removeCallback(), and sendJoinConfirmMsg().
Referenced by checkJoinResponse(), initializeFOM(), initializeTimeFactory(), and waitForJoinResponse().
|
virtual |
Virtual initialization within create.
Reimplemented from DtFederateMgr.
References DtReportFederationsMsg::addCallback(), DtFomModuleRequestMsg::addCallback(), DtFederateMgr::connectMgr(), distributeFedFile, DtFederateMgr::params(), and processFomModuleFileRequestMsg().
|
protectedvirtual |
This function will create the distributor if necessary and initialize it.
References distributeFedFile, DtFederateMgr::myConnectMgr, myDistributors, myFedFileRequest, and DtFederateMgr::params().
Referenced by createFederationExecution().
|
protectedvirtual |
Initialize the FOM.
References DtFederateMgr::addFedExNameMapping(), DtFederateMgr::connectMgr(), DtRIDParameters::crcCheckFedFile, DtLibRTIUtil::crcOfBuff(), DtJoinResponseMsg::crcOfFedFile(), distributeFedFile, distributors(), DtJoinConfirmMsg::DtFomError, DtToString(), DtToWString(), findFedFileNameFromMapping(), DtRIDParameters::fomModuleMerging, fomModuleMerging, DtJoinResponseMsg::fullFedExName(), DtJoinResponseMsg::getFomModuleNames(), handleFailedJoin(), mergeFomModules(), DtJoinResponseMsg::momModuleName(), DtFederateMgr::myFedReader, myFullFedFileDistribution, myJoinResponse, DtFederateMgr::params(), populateWithUnknownFoms(), DtAssistantPopupHelper::popupAssistantMessage(), DtFederateMgr::readFedFile(), DtFederateMgr::setCurrentFedFileName(), DtFederateMgr::setMimName(), and DtJoinResponseMsg::timeImplName().
|
protectedvirtual |
Initialize the time factory.
References DtFederateMgr::connectMgr(), DtJoinConfirmMsg::DtCouldNotCreateTimeFactory, DtToWString(), handleFailedJoin(), rti1516::LogicalTimeFactoryFactory::makeLogicalTimeFactory(), rti1516e::LogicalTimeFactoryFactory::makeLogicalTimeFactory(), DtFederateMgr::myHlaTimeFactory, myJoinResponse, DtFederateMgr::myLogicalTimeFactory, DtAssistantPopupHelper::popupAssistantMessage(), DtFederateMgr::setCurrentTimeImplName(), DtFederateMgr::timeFactory(), DtJoinResponseMsg::timeImplName(), and DtFederateMgr::timeImplName().
|
protectedvirtual |
Perform the actual save possibly after waiting to enter time advancing state.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtConnectionMgr::fedAmb(), federateSaveNotComplete(), RTI::FederateAmbassador::initiateFederateSave(), DtFederateMgr::mySaveInitiated, DtFederateMgr::mySaveLabel, and DtConnectionMgr::setSaveInProgress().
Referenced by initiateTimedSave(), and processSaveInitiate().
|
protectedvirtual |
Perform the actual save possibly after waiting to enter time advancing state.
Provide time of save.
Reimplemented from DtFederateMgr.
References initiateSave().
|
protectedvirtual |
Initialize the RidTester.
References DtConnectionMgr::connectionId(), DtFederateMgr::connectMgr(), DtFederateMgr::myClock, DtFederateMgr::myConnectMgr, DtFederateMgr::myParams, DtRidFileTester::receivedResponse(), DtRIDParameters::responseInterval, DtRidFileTester::sendRequestForTesting(), DtConnectionMgr::tick(), DtFederateMgr::tick(), and DtConnectionMgr::yield().
Referenced by applyRidParameters().
|
protectedvirtual |
References myIsDesignatedFederate.
|
protected |
References DtReadFile(), getStandardMimPath(), myTakenFiles, and DtLibRTIUtil::openFedFile().
Referenced by populateWithUnknownFoms().
| DtSynchronousFileDistributor * DtRtiExecFederateMgr::joinDistributor | ( | ) |
References myJoinDistributor.
Referenced by mergeFomModules(), and posttick().
| DtSynchronousFileDistributor * DtRtiExecFederateMgr::joinDistributor | ( | ) | const |
References myJoinDistributor.
|
virtual |
Process the join federation execution service.
Implements DtFederateMgr.
References DtJoinResponseMsg::addCallback(), distributeFedFile, DtGENERATE_KEY, DtJoinConfirmMsg::DtNoError, fedFileName(), fomModuleMerging, and DtAssistantPopupHelper::popupAssistantMessage().
|
protectedvirtual |
Merge the given FOM Modules into the current FOM.
References DtScopedNotifyLevelChange::changeNotifyLevel(), DtFomClassMgr::clone(), DtRIDParameters::crcCheckFedFile, DtLibRTIUtil::crcOfRTIFedFileContents(), create(), DtMergeFomStatusAlreadyPresentSuccess, DtMergeFomStatusFailedContent, DtMergeFomStatusFailedDimensions, DtMergeFomStatusFailedDTD, DtMergeFomStatusFailedInteractionClass, DtMergeFomStatusFailedObjectClass, DtMergeFomStatusFailedScaffolding, DtMergeFomStatusFailedSwitches, DtMergeFomStatusFailedTime, DtMergeFomStatusFailedTransportTypes, DtMergeFomStatusFailedUpdateRates, DtMergeFomStatusFailedUserDefinedTags, DtMergeFomStatusSuccess, DtToWString(), false, DtFileDistributor::fedFilePtr(), getReader(), getStandardMimPath(), joinDistributor(), DtFederateMgr::myFom, DtFederateMgr::myParsedFoms, NULL, DtLibRTIUtil::openFedFile(), DtFederateMgr::params(), and DtScopedNotifyLevelChange::restoreNotifyLevel().
Referenced by initializeFOM().
|
private |
Assignment not implemented – Assignment Not Allowed!
|
protected |
References isFomAvailable().
Referenced by initializeFOM().
|
protectedvirtual |
Uses the given information to initialize federate data.
DtFomClassMgr needs to be initialized before this function is called.
Reimplemented from DtFederateMgr.
References DtDesignatedFederateMsg::addCallback(), DtSyncPointMsg::addCallback(), DtJoinConfirmMsg::DtNoError, and DtFederateMgr::postJoinInit().
|
protectedvirtual |
Processing after a tick.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtRIDParameters::distributeFedFile, DtConnectionMgr::fedAmb(), DtRIDParameters::fomModuleMerging, DtSynchronousFileDistributor::getPushedFomModules(), joinDistributor(), myFailedSyncPointLabel, DtFederateMgr::params(), DtSynchronousFileDistributor::pullInProgress(), DtSynchronousFileDistributor::pushedFomModules(), rti1516::SYNCHRONIZATION_POINT_LABEL_NOT_UNIQUE, rti1516e::SYNCHRONIZATION_POINT_LABEL_NOT_UNIQUE, and RTI::FederateAmbassador::synchronizationPointRegistrationFailed().
|
protectedvirtual |
Prepare the state information to be restored (i.e., clear out existing data).
Referenced by prepareToRestoreLRC().
|
protectedvirtual |
Prepare the state information of the LRC for a restore (may include a back up save in case restore fails).
References DtFederateMgr::myFom, DtFederateMgr::myInterMgr, DtFederateMgr::myMomMgr, DtFederateMgr::myObjMgr, DtInteractionMgr::prepareToRestore(), DtFomClassMgr::prepareToRestore(), prepareToRestore(), and DtObjectMgr::prepareToRestore().
Referenced by processRestoreInitiate().
|
protectedvirtual |
Process create response message.
References DtConnectionMgr::connectionId(), DtFederateMgr::connectMgr(), DtCreateResponseMsg::destinationID(), DtCreateResponseMsg::errorString(), myCreateResponse, myCreateResponseErrorString, and DtCreateResponseMsg::responseFlag().
Referenced by createFederationExecution(), and waitForCreateResponse().
|
static |
Create response message callback.
|
protectedvirtual |
Process designated federate message.
References DtFederateMgr::connectMgr(), DtDesignatedFederateMsg::designatedFederate(), DtConnectionMgr::fedHandle(), DtFederateMgr::myMomMgr, and setDesignatedFederate().
Referenced by ~DtRtiExecFederateMgr().
|
static |
designated federate message callback
|
protectedvirtual |
Process destroy response message.
References DtDestroyResponseMsg::fullFedExName(), myDestroyExecutionName, myDestroyResponse, and DtDestroyResponseMsg::responseFlag().
Referenced by destroyFederationExecution().
|
static |
Destroy response message callback.
|
protectedvirtual |
Process Fom Module file distribution message.
References DtConnectionMgr::connectionId(), DtFederateMgr::connectMgr(), DtFomModuleRequestMsg::destinationID(), distributeFedFile, DtFomModuleRequestMsg::getFomModuleNames(), myFedFileRequest, myFomModuleRequests, and DtFederateMgr::params().
Referenced by init(), and ~DtRtiExecFederateMgr().
|
static |
Fom Module file distribution message callback.
|
protectedvirtual |
Process join response message.
References DtFederateMgr::assistantClient(), DtJoinResponseMsg::clone(), DtFederateMgr::connectMgr(), DtJoinResponseMsg::destinationID(), DtJoinResponseMsg::DT_CRC_FAILURE, DtJoinResponseMsg::errorString(), DtJoinResponseMsg::errorValue(), DtJoinResponseMsg::federateHandleToUse(), DtJoinResponseMsg::federateName(), DtJoinResponseMsg::getFederateNamesAndHandles(), myJoinRequestID, myJoinResponse, NULL, DtJoinResponseMsg::printData(), DtJoinResponseMsg::requestID(), DtRtiAssistantLrcClient::sendClientInfo(), and DtRtiAssistantLrcClient::updateFederateName().
Referenced by checkJoinResponse(), handleFailedJoin(), and ~DtRtiExecFederateMgr().
|
static |
Join response message callback.
|
protectedvirtual |
Takes note of any FOM classes added after we have joined.
This is so that we can tell what the parentage of any new classes are, so that we can discover new objects of those classes as their appropriate parent classes.
References DtFomClassMgr::addClassHdlForUnknownClass(), DtFomClassMgr::addInteractionHdlForUnknownClass(), DtFederateMgr::federateHandle(), and DtFederateMgr::fom().
Referenced by processNewFomClassesMsg().
|
protectedvirtual |
Process message indicating new FOM classes have been added via FOM module merging.
References DtRtiMsg::clone(), DtFederateMgr::isJoined(), myNewFomClassMsgs, and processNewFomClasses().
Referenced by ~DtRtiExecFederateMgr().
|
static |
Callback for message indicating new FOM classes have been added via FOM module merging.
|
protectedvirtual |
Process the restore message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtResponseFail, DtResponseSuccess, enableSaveRestoreWhenUsingRtiexec, DtConnectionMgr::fedAmb(), RTI::FederateAmbassador::federationRestoreBegun(), DtSaveMsg::label(), DtFederateMgr::myRestoreBegun, DtFederateMgr::myRestoreLabel, DtFederateMgr::params(), sendRestoreBegunMsg(), DtConnectionMgr::setRestoreInProgress(), and useRtiExec.
|
protectedvirtual |
Process the restore end message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtRestoreResultAborted, DtRestoreResultFailureDetected, DtRestoreResultFederateFailure, DtRestoreResultFederateResigned, DtRestoreResultSucess, DtRestoreResultUnableToRestore, DtConnectionMgr::emptyPendingMsgList(), enableSaveRestoreWhenUsingRtiexec, DtRestoreEndMsg::endResult(), DtConnectionMgr::fedAmb(), rti1516::FEDERATE_REPORTED_FAILURE_DURING_RESTORE, rti1516::FEDERATE_RESIGNED_DURING_RESTORE, RTI::FederateAmbassador::federationNotRestored(), RTI::FederateAmbassador::federationRestored(), DtFederateMgr::myFedHandle, myOldFedHandle, DtFederateMgr::myRestoreBegun, DtFederateMgr::myRestoreInitiated, DtFederateMgr::myRestoreRequested, DtFederateMgr::params(), rti1516e::RESTORE_ABORTED, rti1516::RTI_DETECTED_FAILURE_DURING_RESTORE, rti1516::RTI_UNABLE_TO_RESTORE, DtConnectionMgr::setFederateHandle(), DtConnectionMgr::setRestoreInProgress(), and useRtiExec.
|
protectedvirtual |
Process the restore initiate message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtToWString(), enableSaveRestoreWhenUsingRtiexec, DtConnectionMgr::fedAmb(), DtFederateMgr::federateHandle(), federateRestoreNotComplete(), DtFederateMgr::getRestoreFileName(), RTI::FederateAmbassador::initiateFederateRestore(), DtFederateMgr::myFedHandle, DtFederateMgr::myFedName, DtFederateMgr::myRestoreInitiated, DtFederateMgr::myRestoreLabel, DtRestoreInitiateMsg::newHandle(), DtRestoreInitiateMsg::oldHandle(), DtFederateMgr::params(), prepareToRestoreLRC(), restoreLRC(), and useRtiExec.
|
protectedvirtual |
Process the restore reply message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtRestoreReplyMsg::destinationID(), DtRestoreReplyMsg::DT_RESTORE_IN_PROCESS, DtRestoreReplyMsg::DT_RESTORE_NO_LABEL, DtRestoreReplyMsg::DT_RESTORE_OK, DtRestoreReplyMsg::DT_RESTORE_WRONG_CONFIG, DtToWString(), enableSaveRestoreWhenUsingRtiexec, DtConnectionMgr::fedAmb(), DtRestoreReplyMsg::label(), DtFederateMgr::myFedHandle, DtFederateMgr::params(), DtRestoreReplyMsg::reply(), RTI::FederateAmbassador::requestFederationRestoreFailed(), RTI::FederateAmbassador::requestFederationRestoreSucceeded(), and useRtiExec.
|
protectedvirtual |
Process the save finished message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtSaveFinishedAborted, DtSaveFinishedFailureDetected, DtSaveFinishedFederateFailure, DtSaveFinishedFederateResigned, DtSaveFinishedInvalidSaveTime, DtSaveFinishedRtiUnableToSave, DtSaveFinishedSuccess, enableSaveRestoreWhenUsingRtiexec, DtConnectionMgr::fedAmb(), rti1516::FEDERATE_REPORTED_FAILURE_DURING_SAVE, rti1516::FEDERATE_RESIGNED_DURING_SAVE, RTI::FederateAmbassador::federationNotSaved(), RTI::FederateAmbassador::federationSaved(), DtSaveFinishedMsg::finishedResult(), DtFederateMgr::mySaveBegun, DtFederateMgr::mySaveInitiated, DtFederateMgr::params(), rti1516::RTI_DETECTED_FAILURE_DURING_SAVE, rti1516::RTI_UNABLE_TO_SAVE, rti1516e::SAVE_ABORTED, rti1516::SAVE_TIME_CANNOT_BE_HONORED, DtConnectionMgr::setSaveInProgress(), and useRtiExec.
|
protectedvirtual |
|
protectedvirtual |
Process the save initiate.
References enableSaveRestoreWhenUsingRtiexec, initiateSave(), DtFederateMgr::mySaveLabel, DtFederateMgr::params(), and useRtiExec.
|
protectedvirtual |
Process the save response message.
Reimplemented from DtFederateMgr.
References DtFederateMgr::connectMgr(), DtConnectionMgr::fedHandle(), mySaveRequestID, mySaveResponse, DtSaveResponseMsg::requestID(), DtSaveResponseMsg::requestingFederate(), and DtSaveResponseMsg::responseFlag().
|
protectedvirtual |
Process a sync point message.
References RTI::FederateAmbassador::announceSynchronizationPoint(), DtFederateMgr::connectMgr(), DtAchieved, DtAnnouncePt, DtRegister, DtSynchronized, DtSyncPointRegFailed, DtSyncPointRegSucceeded, DtSyncStatusFailLabelNotUnique, DtSyncStatusFailMemberNotJoined, DtSyncStatusFailResignDuringSync, DtSyncStatusFailRtiInternal, DtSyncStatusFailTimeNotHonored, DtToWString(), DtConnectionMgr::fedAmb(), rti1516::FEDERATE_RESIGNED_DURING_SYNCHRONIZATION, DtSyncPointMsg::federateId(), DtSyncPointMsg::federates(), RTI::FederateAmbassador::federationSynchronized(), DtSyncPointMsg::getFederates(), DtSyncPointMsg::getUnsuccessfulFederates(), DtRtiMsg::isForExec(), DtFederateMgr::myFedExHandle, DtFederateMgr::myFedExName, DtFederateMgr::myFedHandle, mySyncPoints, rti1516::RTI_DETECTED_FAILURE_DURING_SYNCHRONIZATION, rti1516::SYNCHRONIZATION_POINT_LABEL_NOT_UNIQUE, rti1516::SYNCHRONIZATION_SET_MEMBER_NOT_JOINED, rti1516::SYNCHRONIZATION_TIME_CANNOT_BE_HONORED, RTI::FederateAmbassador::synchronizationPointRegistrationFailed(), RTI::FederateAmbassador::synchronizationPointRegistrationSucceeded(), DtSyncPointMsg::syncMsgKind(), DtSyncPointMsg::syncPointName(), DtSyncPointMsg::syncPointStatus(), DtSyncPointMsg::tag(), and DtRtiMsg::theDefaultTag.
Referenced by ~DtRtiExecFederateMgr().
|
static |
sync point message callback
|
virtual |
Process the register synchronization point service.
Implements DtFederateMgr.
References DtRegister, myFailedSyncPointLabel, DtFederateMgr::myFedHandle, mySyncPoints, and sendSyncPointMsg().
|
virtual |
Process the register synchronization point service.
Implements DtFederateMgr.
References DtRegister, myFailedSyncPointLabel, DtFederateMgr::myFedHandle, mySyncPoints, and sendSyncPointMsg().
|
virtual |
Process the request federation restore service.
Implements DtFederateMgr.
References DtFederateMgr::myRestoreLabel, DtFederateMgr::myRestoreRequested, and sendRestoreRequestMsg().
|
virtual |
Process the request federation save service.
Implements DtFederateMgr.
References DtFederateMgr::mySaveLabel, and requestImmediateSave().
|
protectedvirtual |
Process the immediate save message.
References DtSaveResponseMsg::addCallback(), DtFederateMgr::connectMgr(), DtSRSaveAccepted, DtSRSaveInProgress, DtSRSaveWaiting, DtToWString(), DtConnectionMgr::enterServiceCall(), DtConnectionMgr::exitServiceCall(), interval, DtFederateMgr::myClock, mySaveRequestID, mySaveResponse, DtFederateMgr::params(), DtFederateMgr::processSaveResponse(), DtSaveResponseMsg::removeCallback(), DtRIDParameters::responseInterval, sendSaveRequestMsg(), DtConnectionMgr::tick(), and DtConnectionMgr::yield().
Referenced by requestFederationSave().
|
virtual |
Process the resign federation execution service.
Reimplemented from DtFederateMgr.
References distributeFedFile, DtSRSaveWaiting, fomModuleMerging, NULL, DtDesignatedFederateMsg::removeCallback(), DtSyncPointMsg::removeCallback(), DtJoinResponseMsg::removeCallback(), and DtFederateMgr::resignFederationExecution().
|
protectedvirtual |
Restore the federation manager state information from the given file.
Reimplemented from DtFederateMgr.
References DtConnectionMgr::addPendingMsg(), DtFederateMgr::connectMgr(), DtMessageFactory< T_Message, T_MessageKind, T_NetworkHeader >::create(), DtRtiSaveBestEffortMsgType, DtRtiSaveFedMgrType, DtRtiSaveReliableMsgType, DtConnectionMgr::emptyPendingMsgList(), DtFedMgrPacket::fedHandle, DtFedMgrPacket::header, DtConnectionMgr::msgFactory(), DtFederateMgr::myConnectMgr, DtFederateMgr::myFedExHandle, DtFederateMgr::myFedHandle, myOldFedHandle, mySyncPoints, DtFedMgrPacket::numMsgs, DtFedMgrPacket::numSyncPts, DtSaveDataHeader::packetType, DtRtiSaveFile::readNextPacket(), DtRtiMsg::setFedEx(), and DtRtiMsg::setTransportType().
Referenced by restoreLRC().
|
protectedvirtual |
Restore the LRC state information Return bool: restore successful?
References DtRtiSaveFile::isOk(), DtFederateMgr::myFom, DtFederateMgr::myInterMgr, DtFederateMgr::myMomMgr, DtFederateMgr::myObjMgr, DtInteractionMgr::restore(), DtFomClassMgr::restore(), restore(), and DtObjectMgr::restore().
Referenced by processRestoreInitiate().
|
protectedvirtual |
Save the federation manager state information to the given file.
Reimplemented from DtFederateMgr.
References DtConnectionMgr::addPendingMsg(), DtFederateMgr::connectMgr(), DtRtiSaveBestEffortMsgType, DtRtiSaveFedMgrType, DtRtiSaveReliableMsgType, DtFedMgrPacket::fedHandle, DtFedMgrPacket::header, DtFederateMgr::myFedHandle, mySyncPoints, DtConnectionMgr::nextPendingMsg(), DtFedMgrPacket::numMsgs, DtFedMgrPacket::numSyncPts, DtSaveDataHeader::packetSize, DtSaveDataHeader::packetType, DtFederateMgr::params(), DtConnectionMgr::pendingMsgCount(), DtRIDParameters::saveTransientMessages, saveTransientMessages, DtRtiMsg::transportType(), and DtRtiSaveFile::writePacket().
Referenced by saveLRC().
|
protectedvirtual |
Save the LRC state information.
Return bool: save successful?
References DtRtiSaveFile::isOk(), DtFederateMgr::myFom, DtFederateMgr::myInterMgr, DtFederateMgr::myMomMgr, DtFederateMgr::myObjMgr, DtInteractionMgr::save(), DtFomClassMgr::save(), save(), and DtObjectMgr::save().
Referenced by federateSaveComplete().
|
protectedvirtual |
Send create federation message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtCreateMsgKind, DtConnectionMgr::sendAndDelete(), and DtCreateMsg::set().
Referenced by createFederationExecution().
|
protectedvirtual |
Send destroy federation message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtDestroyMsgKind, DtConnectionMgr::sendAndDelete(), and DtDestroyMsg::set().
Referenced by destroyFederationExecution().
|
protectedvirtual |
Send join federation confirm message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtJoinConfirmMsgKind, DtConnectionMgr::sendStampedAndDelete(), and DtJoinConfirmMsg::set().
Referenced by handleFailedJoin().
|
protectedvirtual |
Send join federation message.
References DtFederateMgr::assistantClient(), DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtGetLocalHostName(), DtHlaVersion(), DtJoinMsgKind, DtUseFedObservers, DtFederateMgr::params(), DtConnectionMgr::sendAndDelete(), DtJoinMsg::set(), and DtJoinMsg::setIpAddress().
|
protectedvirtual |
Send restore federate begun message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtRestoreBegunMsgKind, DtFederateMgr::federateHandle(), DtConnectionMgr::sendStampedAndDelete(), and DtRestoreBegunMsg::set().
Referenced by processRestore().
|
protectedvirtual |
Send restore federate complete message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtRestoreCompleteMsgKind, DtConnectionMgr::sendStampedAndDelete(), and DtSaveCompleteMsg::set().
Referenced by federateRestoreComplete(), and federateRestoreNotComplete().
|
protectedvirtual |
Send restore federation request message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtRestoreRequestMsgKind, DtConnectionMgr::sendStampedAndDelete(), and DtSaveMsg::set().
Referenced by requestFederationRestore().
|
protectedvirtual |
Send save federate begun message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtSaveBegunMsgKind, and DtConnectionMgr::sendStampedAndDelete().
Referenced by federateSaveBegun().
|
protectedvirtual |
Send federate complete message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtSaveCompleteMsgKind, DtConnectionMgr::sendStampedAndDelete(), and DtSaveCompleteMsg::set().
Referenced by federateSaveComplete(), and federateSaveNotComplete().
|
protectedvirtual |
Send save federation request message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtSaveRequestMsgKind, DtConnectionMgr::sendStampedAndDelete(), and DtSaveRequestMsg::set().
Referenced by requestImmediateSave().
|
protectedvirtual |
Send synchronization point message.
References DtFederateMgr::connectMgr(), DtConnectionMgr::create(), DtSyncPointMsgKind, DtSyncStatusSucceeded, DtConnectionMgr::sendStampedAndDelete(), and DtSyncPointMsg::set().
Referenced by registerFederationSynchronizationPoint(), and synchronizationPointAchieved().
|
protectedvirtual |
Set/Get designated status of this federate's LRC.
References myIsDesignatedFederate.
Referenced by processDesignatedFederateMsg().
|
virtual |
Process the synchronization point achieved service.
Implements DtFederateMgr.
References DtAchieved, DtAchievedUnsuccessfully, DtFederateMgr::myFedHandle, mySyncPoints, and sendSyncPointMsg().
|
protected |
Attempt to read modules.
References DtFederateMgr::addToParsedFomMap(), DtScopedNotifyLevelChange::changeNotifyLevel(), DtLibRTIUtil::crcOfRTIFedFileContents(), DtFomClassMgr::create(), extend13and1516interop, getReader(), DtFederateMgr::myFedReader, DtFederateMgr::myParsedFoms, DtLibRTIUtil::openFedFile(), DtFederateMgr::params(), DtAssistantPopupHelper::popupAssistantMessage(), and DtFomClassMgr::setExtend13and1516interop().
Referenced by createFederationExecution().
|
protectedvirtual |
Check for save/restore in progress exceptions.
Implements DtFederateMgr.
References DtFederateMgr::myRestoreLabel, DtFederateMgr::mySaveLabel, DtFederateMgr::restoreBegun(), and DtFederateMgr::saveInitiated().
|
protectedvirtual |
This function will wait for the create response or fail and throw.
References DtFederateMgr::connectMgr(), distributeFedFile, distributors(), DtCRExecAlreadyExists, DtCRExecCouldNotCreateTimeFactory, DtCRExecCouldNotOpenFed, DtCRExecCreated, DtCRWaiting, DtToWString(), DtConnectionMgr::enterServiceCall(), DtConnectionMgr::exitServiceCall(), findFedFileNameFromMapping(), interval, DtFederateMgr::myClock, myCreateResponse, myCreateResponseErrorString, myFedFileRequest, myFomModuleRequests, DtFederateMgr::params(), DtAssistantPopupHelper::popupAssistantMessage(), processCreateResponseMsg(), DtCreateResponseMsg::removeCallback(), DtRIDParameters::responseInterval, DtConnectionMgr::tick(), and DtConnectionMgr::yield().
Referenced by createFederationExecution().
|
protectedvirtual |
This function will wait for the join response or fail and throw.
References DtFederateMgr::connectMgr(), DtRIDParameters::distributeFedFile, distributeFedFile, distributors(), DtJoinConfirmMsg::DtFomError, DtConnectionMgr::enterServiceCall(), DtConnectionMgr::exitServiceCall(), findFedFileNameFromMapping(), handleFailedJoin(), interval, DtFederateMgr::myClock, myFedFileRequest, myFomModuleRequests, myJoinResponse, DtFederateMgr::params(), DtAssistantPopupHelper::popupAssistantMessage(), preferLocalFomModules, DtRIDParameters::responseInterval, DtConnectionMgr::tick(), DtFederateMgr::tick(), and DtConnectionMgr::yield().
|
protected |
|
protected |
Status of create federation.
Referenced by createFederationExecution(), processCreateResponseMsg(), and waitForCreateResponse().
|
protected |
Error String of create federation.
Referenced by processCreateResponseMsg(), and waitForCreateResponse().
|
protected |
Name of federation to destroy.
Referenced by destroyFederationExecution(), and processDestroyResponseMsg().
|
protected |
Status of destroy federation.
Referenced by destroyFederationExecution(), and processDestroyResponseMsg().
|
protected |
federate Fed File Distributors.
Referenced by distributors(), initializeDistributor(), and ~DtRtiExecFederateMgr().
|
protected |
Should we use local or distributed fed file?
|
protected |
Failed sync point request.
Referenced by posttick(), and registerFederationSynchronizationPoint().
|
protected |
Status of fed file request.
Referenced by initializeDistributor(), processFomModuleFileRequestMsg(), waitForCreateResponse(), and waitForJoinResponse().
|
protected |
Referenced by getReader(), and ~DtRtiExecFederateMgr().
|
protected |
Referenced by getReader(), and ~DtRtiExecFederateMgr().
|
protected |
Referenced by getReader(), and ~DtRtiExecFederateMgr().
|
protected |
Queue of modules requested.
Referenced by processFomModuleFileRequestMsg(), waitForCreateResponse(), and waitForJoinResponse().
|
protected |
Referenced by DtRtiExecFederateMgr(), and initializeFOM().
|
protected |
This federate LRC is designated for handling some federation wide tasks (e.g., MOM Federation attribute ownership)
Referenced by isDesignatedFederate(), and setDesignatedFederate().
|
protected |
Status of join confirm.
|
protected |
The Fed File Distributor of the joined federation execution.
Referenced by joinDistributor().
|
protected |
Join request ID.
Referenced by processJoinResponseMsg().
|
protected |
Copy of join response.
Referenced by checkJoinResponse(), initializeFOM(), initializeTimeFactory(), processJoinResponseMsg(), waitForJoinResponse(), and ~DtRtiExecFederateMgr().
|
protected |
Queue of FOM class messages to be processed after we join.
Referenced by processNewFomClassesMsg().
|
protected |
during a restore the fedhandle changes.
this stores the old handle so it can make some communications with the fedex during a restore but after changing the fedhandle
Referenced by processRestoreEnd(), and restore().
|
protected |
Save request ID.
Referenced by processSaveResponse(), and requestImmediateSave().
|
protected |
Save response status.
Referenced by processSaveResponse(), and requestImmediateSave().
|
protected |
Referenced by getStandardMimPath().
|
protected |
MAKRti::DtHashList of DtStringHashKeys representing synch point names that have been announced to us.
Data associated with the string is just (void*)
Referenced by processSyncPointMsg(), registerFederationSynchronizationPoint(), restore(), save(), synchronizationPointAchieved(), and ~DtRtiExecFederateMgr().
|
protected |
When files are received from distributor, store them here until requester takes them.
Referenced by isFomAvailable(), and ~DtRtiExecFederateMgr().