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 | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtRtiExecFederateMgr Class Reference

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. More...
 
virtual ~DtRtiExecFederateMgr ()
 Destructor. More...
 
DtSynchronousFileDistributordistributor (const char *executionName)
 Access to the file distributor for the given federation execution name. More...
 
virtual void init ()
 Virtual initialization within create. More...
 
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. More...
 
virtual void destroyFederationExecution (const char *executionName)
 Process the destroy federation execution service. More...
 
virtual RTI::FederateHandle joinFederationExecution (const char *yourName, const char *executionName, RTI::FederateAmbassador *federateAmbassadorReference, unsigned long flags)
 Process the join federation execution service. More...
 
virtual void resignFederationExecution (RTI::ResignAction theAction)
 Process the resign federation execution service. More...
 
SynchronizationPointServices

Handle the synchronization point services

virtual void registerFederationSynchronizationPoint (char const *label, char const *theTag)
 Process the register synchronization point service. More...
 
virtual void registerFederationSynchronizationPoint (char const *label, char const *theTag, DtFederateHandleSet const &syncSet)
 Process the register synchronization point service. More...
 
virtual void synchronizationPointAchieved (char const *label, bool successfully=true)
 Process the synchronization point achieved service. More...
 
SaveRestoreServices

Process the save and restore services

virtual void requestFederationSave (char const *label, RTI::FedTime const *time=NULL)
 Process the request federation save service. More...
 
virtual void federateSaveBegun ()
 Process the federate save begun service. More...
 
virtual void federateSaveComplete ()
 Process the federate save complete service. More...
 
virtual void federateSaveNotComplete ()
 Process the federate save complete service. More...
 
virtual void requestFederationRestore (const char *label)
 Process the request federation restore service. More...
 
virtual void federateRestoreComplete ()
 Process the federate restore complete service. More...
 
virtual void federateRestoreNotComplete ()
 Process the federate restore complete service. More...
 
DtSynchronousFileDistributorjoinDistributor ()
 Access to the Join file distributor of the currently join(ed/ing) federation execution. More...
 
DtSynchronousFileDistributorjoinDistributor () const
 Access to the Join file distributor of the currently join(ed/ing) federation execution. More...
 
- Public Member Functions inherited from DtFederateMgr
virtual ~DtFederateMgr ()
 Destructor. More...
 
virtual bool automaticReserveObjectName (const char *)
 HLA 1.3 does not have the ability to reserve an object name, so this function allows us to implici. More...
 
virtual MAKRti::DtString fedFileName (MAKRti::DtString execName)
 Return the .fed file name associated with the federation execution name. More...
 
virtual MAKRti::DtString timeImplName (MAKRti::DtString execName)
 Return the time implementation name associated with the federation execution name. More...
 
virtual bool tick ()
 Update the state of the federation. More...
 
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. More...
 
virtual char * getOrderName (MAKRti::DtOrderType order)
 Get order name service. More...
 
virtual MAKRti::DtTransportType getTransportationHandle (MAKRti::DtString transport)
 Get transport handle service. More...
 
virtual MAKRti::DtOrderType getOrderHandle (MAKRti::DtString order)
 Get order handle service. More...
 
virtual DtFederateHandle federateHandle () const
 Get the federate handle. More...
 
virtual MAKRti::DtString const & fedType () const
 Get the federate type. More...
 
virtual MAKRti::DtString const & fedName () const
 Get the federate name (HLA Evolved) More...
 
virtual MAKRti::DtString const & fedExName () const
 Get the federation execution name. More...
 
virtual unsigned long fedExHandle () const
 Get the federation execution handle. More...
 
virtual bool isJoined () const
 Return boolean: federate is joined? More...
 
virtual DtConnectionMgrconnectMgr ()
 Access to the connection manager. More...
 
virtual DtConnectionMgrconnectMgr () const
 
virtual DtRIDParametersparams ()
 Access to the RID parameters. More...
 
virtual DtRIDParametersparams () const
 
virtual DtFomClassMgrfom ()
 Access to the fom. More...
 
virtual DtFomClassMgrfom () const
 
virtual DtInteractionMgrinterMgr ()
 Access to the interaction mgr. More...
 
virtual DtInteractionMgrinterMgr () const
 
virtual DtTestManagertestMgr ()
 Access to the test Manager. More...
 
virtual DtTestManagertestMgr () const
 
virtual DtObjectMgrobjMgr ()
 Access to the object mgr. More...
 
virtual DtObjectMgrobjMgr () const
 
virtual DtLogicalTimeFactorytimeFactory ()
 Access to the time factory. More...
 
virtual DtLogicalTimeFactorytimeFactory () const
 
virtual DtRtiAssistantLrcClientassistantClient ()
 Access to the RTI Assistant client. More...
 
virtual DtRtiAssistantLrcClientassistantClient () const
 
virtual bool isJoinedFederate (DtFederateHandle federateHandleValue) const
 Return bool: Is the federate handle known to be in the federation. More...
 
virtual bool forcedToResign () const
 Return bool: Was federate forced to resign? More...
 
virtual void setMomResign ()
 Marks that MOM is invoking resign. More...
 
virtual void resetMomResign ()
 Unmark that MOM is invoking resign. More...
 
virtual bool saveInitiated () const
 return bool: save initiated? More...
 
virtual bool saveBegun () const
 return bool: save begun? More...
 
virtual bool restoreRequested () const
 return bool: restore requested? More...
 
virtual bool restoreInitiated () const
 return bool: restore initiated ? More...
 
virtual bool restoreBegun () const
 return bool: restore begun? More...
 
virtual const MAKRti::DtString & restoreLabel () const
 return current restore label More...
 
virtual const MAKRti::DtString & lastRestoreLabel () const
 return last restore label More...
 
const MAKRti::DtString & currentFedFileName () const
 get/set current FED file name More...
 
void setCurrentFedFileName (const MAKRti::DtString &)
 
const MAKRti::DtString & mimName () const
 get/set MIM name More...
 
void setMimName (const MAKRti::DtString &)
 
const MAKRti::DtString & currentTimeImplName () const
 get/set current time implementation name More...
 
void setCurrentTimeImplName (const MAKRti::DtString &)
 
virtual const MAKRti::DtString & saveLabel () const
 Set/Get save label. More...
 
virtual void setSaveLabel (const MAKRti::DtString &value)
 
virtual const MAKRti::DtString & lastSaveLabel () const
 Set/Get last save label. More...
 
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. More...
 
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. More...
 
virtual unsigned long tickCount () const
 Return the number of ticks. More...
 
virtual bool isTicking () const
 Return true if currently processing tick. More...
 
virtual void reportLatencyTestResults (const DtLatencyReportMsg &msg)
 Report results of a latency test. More...
 
virtual void reportLatencyTestStatus (const DtTestMgrStatusMsg &msg)
 Report current latency test status. More...
 
unsigned long flags () const
 
DtResignAction automaticResignDirective () const
 
virtual const MAKRti::DtString & getFederateNameFromHandle (DtFederateHandle handle)
 Get Federate Name / Handle from Handle / Name. More...
 
virtual DtFederateHandle getFederateHandleFromName (const MAKRti::DtString &name)
 
virtual void setTopLevelAmbassador (RTI::RTIambassador *ambPtr)
 Provide access to top level RTI Ambassador (and Federate Ambassador for 1516E) More...
 
RTI::RTIambassador * rtiAmb ()
 Access to the top level RTI Ambassador given to the federate. More...
 
RTI::RTIambassador * rtiAmb () const
 Access to the top level RTI Ambassador given to the federate. More...
 
virtual RTI::FederateAmbassador * federateAmbassador () const
 Access to the Federate Ambassador submitted by the federate. More...
 

Static Public Member Functions

static DtFederateMgrcreate (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient)
 Creates an instance of this derived class;. More...
 
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 More...
 
static void processDesignatedFederateMsg (const DtDesignatedFederateMsg &msg, void *usr)
 designated federate message callback More...
 
static void processFomModuleFileRequestMsg (const DtFomModuleRequestMsg &msg, void *usr)
 Fom Module file distribution message callback. More...
 
static void processCreateResponseMsg (const DtCreateResponseMsg &msg, void *usr)
 Create response message callback. More...
 
static void processJoinResponseMsg (const DtJoinResponseMsg &msg, void *usr)
 Join response message callback. More...
 
static void processDestroyResponseMsg (const DtDestroyResponseMsg &msg, void *usr)
 Destroy response message callback. More...
 
static void processNewFomClassesMsg (const DtNewFomClassesMsg &msg, void *usr)
 Callback for message indicating new FOM classes have been added via FOM module merging. More...
 
static void processResignResponseMsg (const DtResignRespMsg &msg, void *usr)
 Callback for message indicating acceptance or rejection of resign federation execution. More...
 
static void processRegisterNameMsg (const DtNameReservedMsg &msg, void *usr)
 Callback for message indicating acceptance or rejection of reserve name. More...
 
- Static Public Member Functions inherited from DtFederateMgr
static DtFederateMgrcreate (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient)
 A Federate Manager instance is created, initialized, and its pointer is returned. More...
 
static void setCreatorFunction (DtFederateMgrCreator fn)
 Register a creator function. More...
 
static void setInternalCreatorFunction (DtFederateMgrCreator fn)
 Register alternate internal creators. More...
 

Protected Member Functions

virtual void initRidTester ()
 Initialize the RidTester. More...
 
virtual void waitForCreateResponse (const char *executionName)
 This function will wait for the create response or fail and throw. More...
 
virtual void waitForJoinResponse (const char *executionName, std::vector< MAKRti::DtString > &joinModules)
 This function will wait for the join response or fail and throw. More...
 
virtual void waitForResignResponse (bool serviceCall=true)
 This function will wait for the resign response or fail and throw. More...
 
virtual void waitForReserveNameResponse (bool serviceCall=true)
 This function will wait for the reserve name response or fail and throw. More...
 
void handleFailedJoinResponse (bool timedOutDueToCreation)
 Handle a failed join response and throw appropriate exception. More...
 
virtual void initializeTimeFactory ()
 Initialize the time factory. More...
 
virtual void initializeFOM (const char *executionName)
 Initialize the FOM. More...
 
virtual void postJoinInit (const char *yourName, const char *executionName, const char *federateName, RTI::FederateAmbassador *federateAmbassadorReference)
 Uses the given information to initialize federate data. More...
 
virtual void postJoinConfirmInit ()
 Initializes managers which require the joinConfirm message to be sent. More...
 
virtual void handleFailedJoin (unsigned long sourceID, DtJoinConfirmMsg::errorCodes code)
 Handle the join failure before throwing an exception. More...
 
virtual void setDesignatedFederate (bool isDesignated)
 Set/Get designated status of this federate's LRC. More...
 
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. More...
 
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. More...
 
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. More...
 
void testReadFomModules (const DtRIDParameters::DtStringList &, MAKRti::DtString executionName, bool isMim=false)
 Attempt to read modules. More...
 
virtual void mergeFomModules (const std::vector< MAKRti::DtString > *fomModules)
 Merge the given FOM Modules into the current FOM. More...
 
virtual void testSaveProgress ()
 Check for save/restore in progress exceptions. More...
 
virtual void applyRidParameters ()
 Apply RID parameters. More...
 
virtual void processNewFomClasses (const DtNewFomClassesMsg &msg)
 Takes note of any FOM classes added after we have joined. More...
 
virtual void posttick ()
 Processing after a tick. More...
 
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)
 
MessageHandling

Process federation management messages Registered callback call these methods

virtual void processSyncPointMsg (const DtSyncPointMsg &msg)
 Process a sync point message. More...
 
virtual void processDesignatedFederateMsg (const DtDesignatedFederateMsg &msg)
 Process designated federate message. More...
 
virtual void processFomModuleFileRequestMsg (const DtFomModuleRequestMsg &msg)
 Process Fom Module file distribution message. More...
 
virtual void processCreateResponseMsg (const DtCreateResponseMsg &msg)
 Process create response message. More...
 
virtual void processJoinResponseMsg (const DtJoinResponseMsg &msg)
 Process join response message. More...
 
virtual void processDestroyResponseMsg (const DtDestroyResponseMsg &msg)
 Process destroy response message. More...
 
virtual void processSaveInitiate (const DtSaveInitiateMsg &msg)
 Process the save initiate message. More...
 
virtual void processSaveInitiate (const char *label)
 Process the save initiate. More...
 
virtual void requestImmediateSave (const char *label)
 Process the immediate save message. More...
 
virtual void processSaveResponse (const DtSaveResponseMsg &msg)
 Process the save response message. More...
 
virtual void processSaveFinished (const DtSaveFinishedMsg &msg)
 Process the save finished message. More...
 
virtual void processRestoreReply (const DtRestoreReplyMsg &msg)
 Process the restore reply message. More...
 
virtual void processRestoreEnd (const DtRestoreEndMsg &msg)
 Process the restore end message. More...
 
virtual void processRestoreInitiate (const DtRestoreInitiateMsg &msg)
 Process the restore initiate message. More...
 
virtual void processRestore (const DtRestoreMsg &msg)
 Process the restore message. More...
 
virtual void processNewFomClassesMsg (const DtNewFomClassesMsg &msg)
 Process message indicating new FOM classes have been added via FOM module merging. More...
 
virtual void processResignResponseMsg (const DtResignRespMsg &msg)
 Process message indicating acceptance or rejection of resign federation execution. More...
 
virtual void processRegisterNameMsg (const DtNameReservedMsg &msg)
 Process message indicating acceptance or rejection of resign federation execution. More...
 
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. More...
 
virtual void sendDestroyMsg (const char *name)
 Send destroy federation message. More...
 
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. More...
 
virtual void sendJoinConfirmMsg (unsigned long sourceID, DtJoinConfirmMsg::errorCodes errorCode)
 Send join federation confirm message. More...
 
virtual void sendSyncPointMsg (DtSyncMsgType kind, DtFederateHandle &id, char const *name, char const *tag=NULL, DtFederateHandleSet const *set=NULL)
 Send synchronization point message. More...
 
virtual void sendSaveRequestMsg (unsigned long requestID, const char *label)
 Send save federation request message. More...
 
virtual void sendSaveBegunMsg ()
 Send save federate begun message. More...
 
virtual void sendSaveCompleteMsg (const char *label, bool success)
 Send federate complete message. More...
 
virtual void sendRestoreRequestMsg (const char *label)
 Send restore federation request message. More...
 
virtual void sendRestoreBegunMsg (const char *label, DtResponseFlag response)
 Send restore federate begun message. More...
 
virtual void sendRestoreCompleteMsg (const char *label, bool success)
 Send restore federate complete message. More...
 
SaveRestoreHelpers

Helper methods to process save and restore

virtual void initiateSave ()
 Perform the actual save possibly after waiting to enter time advancing state. More...
 
virtual void initiateTimedSave (RTI::FedTime const &saveTime)
 Perform the actual save possibly after waiting to enter time advancing state. More...
 
virtual bool saveLRC (DtRtiSaveFile &saveFile)
 Save the LRC state information. More...
 
virtual bool save (DtRtiSaveFile &file)
 Save the federation manager state information to the given file. More...
 
virtual void prepareToRestoreLRC ()
 Prepare the state information of the LRC for a restore (may include a back up save in case restore fails). More...
 
virtual bool restoreLRC (DtRtiSaveFile &saveFile)
 Restore the LRC state information Return bool: restore successful? More...
 
virtual void prepareToRestore ()
 Prepare the state information to be restored (i.e., clear out existing data). More...
 
virtual bool restore (DtRtiSaveFile &file)
 Restore the federation manager state information from the given file. More...
 
- Protected Member Functions inherited from DtFederateMgr
 DtFederateMgr (DtRIDParameters *params, DtRtiAmbassadorBaseImplementor *ambImplPtr, DtConnectionMgr *connMgr, DtBoost::shared_ptr< DtRtiAssistantLrcClient > assistantClient)
 Constructor. More...
 
virtual void sendAlive ()
 Send the alive message. More...
 
virtual void sendResignMsg (const char *fedExName, DtFederateHandle fedHandle, DtResignAction action)
 Send the resign message. More...
 
void sendTickedMsg ()
 Send the signal ticked message. More...
 
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. More...
 
virtual int mapFomDepComplexity (DtString fomFileName)
 
virtual void mapFomNameToFileName (std::vector< DtString > *fomFileNames)
 
virtual void sortFomFileNames (std::vector< DtString > *fomFileNames)
 
virtual void testReadFedFile (MAKRti::DtString fileName, MAKRti::DtString executionName)
 Attempts to read a fed file but does not fill in the fom class. More...
 
virtual void readFedFile (MAKRti::DtString fileName, MAKRti::DtString executionName)
 Reads a FED file into a DtFomClassMgr object. More...
 
virtual void readFedFilePtr (const FILE *fp, const MAKRti::DtString &fileName, const MAKRti::DtString &executionName)
 Reads a FED file into a DtFomClassMgr object. More...
 
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. More...
 
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. More...
 
virtual MAKRti::DtResignAction convertResignAction (RTI::ResignAction) const
 
virtual RTI::ResignAction convertResignAction (MAKRti::DtResignAction) const
 
DtFedReader * getReader (DtFomType theFomType, DtFomClassMgr *target)
 
DtFedReader * getReader (DtFomType theFomType)
 
void addToParsedFomMap (DtFedReader *myFedReader, const MAKRti::DtString &fileNameToUse, DtFomClassMgr *fedTarget, unsigned long theCrc=0)
 
virtual void processResign (const DtResignMsg &msg)
 Process resign message. More...
 
virtual void processEnableDisableNetworkTesting (const DtEnableDisableNetworkTestingMsg &msg)
 disable network testing More...
 
virtual void processAssistantResign (const DtAssistantExitMsg &msg)
 Process resign message from Assistant. More...
 
virtual void processAssistantEnableLogging (const DtAssistantLogEnableMsg &msg)
 Process resign message from Assistant. More...
 
virtual void processSignalTickInterval (const DtAssistantFederateSignalTickIntervalMsg &msg)
 Process a change in the interval at which a federate is expected to tick. More...
 
virtual void processRidParamRequest (const DtAssistantRidParamsMsg &msg)
 Process a RID parameter request from the Assistant. More...
 
virtual void createObjectMgr ()
 Create the Object Manager. More...
 
virtual void createInteractionMgr ()
 Create the Interaction Manager. More...
 
virtual void createDdmMgr ()
 Create the DDM Manager. More...
 
virtual void createTimeMgr ()
 Create the Time manager. More...
 
virtual void createMomMgr ()
 Create the MOM Manager. More...
 
virtual void createTestMgr ()
 Create the test Manager. More...
 

Protected Attributes

std::map< DtString,
DtSynchronousFileDistributor * > 
myDistributors
 federate Fed File Distributors. More...
 
DtSynchronousFileDistributormyJoinDistributor
 The Fed File Distributor of the joined federation execution. More...
 
DtCreateResponseFlag myCreateResponse
 Status of create federation. More...
 
DtResignResponse myResignResponse
 Status of resign federation. More...
 
bool myResignResponseNotReceived
 Status of resign federation received. More...
 
unsigned myRegisterNameResponse
 Status of registerName 0 = no response, 1 = success, 2 = failure. More...
 
MAKRti::DtString myCreateResponseErrorString
 Error String of create federation. More...
 
DtDestroyResponseFlag myDestroyResponse
 Status of destroy federation. More...
 
DtJoinResponseMsgmyJoinResponse
 Copy of join response. More...
 
DtJoinConfirmMsg::errorCodes myJoinConfirmResponse
 Status of join confirm. More...
 
MAKRti::DtString myDestroyExecutionName
 Name of federation to destroy. More...
 
std::map< DtString, bool > myFedFileRequests
 Status of fed file request. More...
 
std::vector< MAKRti::DtString > myFomModuleRequests
 Queue of modules requested. More...
 
unsigned short myJoinRequestID
 Join request ID. More...
 
unsigned long mySaveRequestID
 Save request ID. More...
 
DtSaveResponseFlag mySaveResponse
 Save response status. More...
 
std::set< DtString > mySyncPoints
 MAKRti::DtHashList of DtStringHashKeys representing synch point names that have been announced to us. More...
 
std::string * myFailedSyncPointLabel
 Failed sync point request. More...
 
DtFederateHandle myOldFedHandle
 during a restore the fedhandle changes. More...
 
bool myIsDesignatedFederate
 This federate LRC is designated for handling some federation wide tasks (e.g., MOM Federation attribute ownership) More...
 
vrlmod::DtThreadedObjectmyDistributorThread
 Should we use local or distributed fed file? More...
 
bool myAsynchronousDistributor
 
std::map< MAKRti::DtString,
DtFileInformation * > 
myTakenFiles
 When files are received from distributor, store them here until requester takes them. More...
 
std::list< DtNewFomClassesMsg * > myNewFomClassMsgs
 Queue of FOM class messages to be processed after we join. More...
 
bool myFullFedFileDistribution
 
MAKRti::DtString myHostname
 
- Protected Attributes inherited from DtFederateMgr
RTI::RTIambassador * myRtiAmb
 The federate's RTI Ambassador. More...
 
DtRtiAmbassadorBaseImplementormyAmbImpl
 The federate's RTI Ambassador Implementor. More...
 
MAKRti::DtTime myResponseInterval
 Interval to wait for response message during a message protocol. More...
 
MAKRti::DtString myFedExName
 Federation execution name. More...
 
unsigned long myFedExHandle
 Federation handle. More...
 
MAKRti::DtString myFedType
 Federate type. More...
 
MAKRti::DtString myFedName
 Federate name. More...
 
DtFederateHandle myFedHandle
 Federate handle. More...
 
MAKRti::DtString myCurrentFedFileName
 Current FED/FDD file name. More...
 
MAKRti::DtString myMimName
 MIM name. More...
 
MAKRti::DtString myCurrentTimeImplName
 Current time implementation name. More...
 
MAKRti::DtTime myLastHeartbeat
 Time of last heartbeat. More...
 
DtLogicalTimeFactorymyLogicalTimeFactory
 Logical time factory Even if NULL, need to have this factory. More...
 
RTI::FedTimeFactory myHlaTimeFactory
 
DtFedAmbWrappermyPrinter
 Prints data for federate ambassador calls. More...
 
DtFedAmbWrappermyFedAmbCatch
 Catches exceptions from federate ambassador calls. More...
 
DtRIDParametersmyParams
 Initialization data. More...
 
DtFedReader * myFedReader
 Temporary internal reader used until changes made to VR-Link fed reader. More...
 
DtFedReader * myFedReader13
 
DtFedReader * myFedReader1516
 
DtFedReader * myFedReader1516e
 
MAKRti::DtList myMappingList
 List of federation execution names with FED files names and time implementation names. More...
 
std::map< MAKRti::DtString,
std::set< MAKRti::DtString > > 
myFedFileNames
 
DtParsedFomsMap myParsedFoms
 Map containing FOMs parsed into FedTargets. More...
 
DtComplexToFomsMMap myComplexToFomsMMap
 
DtFomToComplexMap myFomToComplexMap
 
DtFomNameToFileNameMap myFomToFileMap
 
DtFileNameToFomNameMap myFileToFomMap
 
DtBoost::shared_ptr
< DtRtiAssistantLrcClient
myAssistantClient
 Manages the connection to the RTI Assistant. More...
 
bool myIgnoreForcedResign
 Prevents forcing duplicate resign. More...
 
bool myForcedToResign
 Indicates forced resign occurred. More...
 
bool myMomResign
 Indicates MOM caused resign. More...
 
bool myMomSaveEvokeCallbacks
 State of evoking callbacks prior to MOM resign. More...
 
bool myResignInProgress
 Indicates a resign is in progress. More...
 
MAKRti::DtClock myClock
 Clock for timing. More...
 
unsigned long myTickCount
 Tick counter. More...
 
bool myIsTicking
 indicates currently processing tick More...
 
bool myEnableFederateHeartbeat
 is heartbeating enabled? More...
 
unsigned long myFlags
 
DtTestManagermyTestMgr
 
bool myNetworkTestEnabled
 
float mySignalTickInterval
 The Signal Tick Interval. More...
 
DtTime myLastTickTime
 The last tick time. More...
 
DtPostTickCallbackMap myPostTickCallbacks
 
MAKRti::DtFilename myStandardMimPath
 
std::map< MAKRti::DtString,
DtFederateHandle
myFederateNameToHandle
 
std::map< DtFederateHandle,
MAKRti::DtString > 
myFederateHandleToName
 
MAKRti::DtResignAction myResignAction
 The resign action. More...
 
DtFomSorter myFomSorter
 
DtConnectionMgrmyConnectMgr
 The connection manager. More...
 
DtFomClassMgrmyFom
 The FOM manager. More...
 
DtInteractionMgrmyInterMgr
 The interaction manager. More...
 
DtObjectMgrmyObjMgr
 The object manager. More...
 
DtMomMgr * myMomMgr
 The MOM manager. More...
 
bool mySaveInitiated
 Indicates save initiated. More...
 
bool mySaveBegun
 Indicates save begun. More...
 
bool myRestoreRequested
 Indicates restore requested. More...
 
bool myRestoreInitiated
 Indicates restore initiated. More...
 
bool myRestoreBegun
 Indicates restore begun. More...
 
MAKRti::DtString mySaveLabel
 The save label. More...
 
MAKRti::DtString myLastSaveLabel
 The last save label. More...
 
MAKRti::DtString myRestoreLabel
 The restore label. More...
 
MAKRti::DtString myLastRestoreLabel
 The last restore label. More...
 

Private Member Functions

 DtRtiExecFederateMgr (DtFederateMgr const &)
 Copy Constructor not implemented – Copy Not Allowed! More...
 
DtRtiExecFederateMgroperator= (DtRtiExecFederateMgr const &)
 Assignment not implemented – Assignment Not Allowed! More...
 

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. More...
 
typedef void(* DtFedMgrPostTickCallbackFcn )(void *)
 
typedef std::pair
< DtFedMgrPostTickCallbackFcn,
void * > 
DtFedMgrPostTickCallbackInfo
 
typedef std::map
< MAKRti::DtString,
DtFedMgrPostTickCallbackInfo
DtPostTickCallbackMap
 
typedef std::map
< MAKRti::DtString,
DtFomClassMgr * > 
DtParsedFomsMap
 
typedef std::map
< MAKRti::DtString, std::pair
< char *, int > > 
DtFileNameToDataMap
 
typedef std::map< DtString, int > DtFomToComplexMap
 
typedef std::map< DtString,
DtString > 
DtFomNameToFileNameMap
 
typedef std::map< DtString,
DtString > 
DtFileNameToFomNameMap
 
typedef std::multimap< int,
DtString > 
DtComplexToFomsMMap
 
- Public Attributes inherited from DtFederateMgr
bool myFedCallbackReached
 
- Protected Types inherited from DtFederateMgr
typedef std::pair< int, DtString > DtMMapPair
 
typedef std::pair< DtString, int > DtFomCompPair
 
typedef std::pair< DtString,
DtString > 
DtFomFilePair
 
typedef std::pair< DtString,
DtString > 
DtFileFomPair
 
- Static Protected Member Functions inherited from DtFederateMgr
static void processResign (const DtResignMsg &msg, void *usr)
 resign message callback More...
 
static void processEnableDisableNetworkTesting (const DtEnableDisableNetworkTestingMsg &msg, void *usr)
 process enable / disable network testing callback More...
 
static void processSaveInitiate (const DtSaveInitiateMsg &msg, void *usr)
 save initiate message callback More...
 
static void processSaveResponse (const DtSaveResponseMsg &msg, void *usr)
 save response message callback More...
 
static void processSaveFinished (const DtSaveFinishedMsg &msg, void *usr)
 save finished message callback More...
 
static void processRestoreReply (const DtRestoreReplyMsg &msg, void *usr)
 restore reply message callback More...
 
static void processRestore (const DtRestoreMsg &msg, void *usr)
 restore message callback More...
 
static void processRestoreInitiate (const DtRestoreInitiateMsg &msg, void *usr)
 restore initiate message callback More...
 
static void processRestoreEnd (const DtRestoreEndMsg &msg, void *usr)
 restore end message callback More...
 
static void processAssistantResign (const DtAssistantExitMsg &msg, void *usr)
 Assistant resign message callback. More...
 
static void processAssistantEnableLogging (const DtAssistantLogEnableMsg &msg, void *usr)
 Assistant logging enable message callback. More...
 
static void processSignalTickInterval (const DtAssistantFederateSignalTickIntervalMsg &msg, void *usr)
 Assistant signal tick interval message callback. More...
 
static void processRidParamRequest (const DtAssistantRidParamsMsg &msg, void *usr)
 Assistant RID parameter request message callback. More...
 
- Static Protected Attributes inherited from DtFederateMgr
static DtFederateMgrCreator theCreator
 The plugin creator. More...
 
static DtFederateMgrCreator theInternalCreator
 The internal creator. More...
 

Detailed Description

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.

Constructor & Destructor Documentation

DtRtiExecFederateMgr::DtRtiExecFederateMgr ( DtRIDParameters params,
DtRtiAmbassadorBaseImplementor ambImplPtr,
DtConnectionMgr connMgr,
DtBoost::shared_ptr< DtRtiAssistantLrcClient assistantClient 
)

Constructor.

virtual DtRtiExecFederateMgr::~DtRtiExecFederateMgr ( )
virtual

Destructor.

DtRtiExecFederateMgr::DtRtiExecFederateMgr ( DtFederateMgr const &  )
private

Copy Constructor not implemented – Copy Not Allowed!

Member Function Documentation

void DtRtiExecFederateMgr::appendFomModule ( std::vector< MAKRti::DtString > &  target,
MAKRti::DtString const &  source 
)
protected

Append the source FED file name into the target list, stripping the path name as it is appended into the target.

void DtRtiExecFederateMgr::appendFomModules ( std::vector< MAKRti::DtString > &  target,
std::vector< MAKRti::DtString > const &  source 
)
protected

Append the source FED file names into the target list, stripping the path names as they are appended into the target.

virtual void DtRtiExecFederateMgr::applyRidParameters ( )
protectedvirtual

Apply RID parameters.

Reimplemented from DtFederateMgr.

static DtFederateMgr* DtRtiExecFederateMgr::create ( DtRIDParameters params,
DtRtiAmbassadorBaseImplementor ambImplPtr,
DtConnectionMgr connMgr,
DtBoost::shared_ptr< DtRtiAssistantLrcClient assistantClient 
)
static

Creates an instance of this derived class;.

virtual void DtRtiExecFederateMgr::createFederationExecution ( const char *  executionName,
const char *  timeImplName,
const char *  fed 
)
virtual

Process the create federation execution service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::destroyFederationExecution ( const char *  executionName)
virtual

Process the destroy federation execution service.

Implements DtFederateMgr.

DtSynchronousFileDistributor* DtRtiExecFederateMgr::distributor ( const char *  executionName)

Access to the file distributor for the given federation execution name.

If a distributor does not exist for the federation execution, it is created and added to map of distributors.

virtual void DtRtiExecFederateMgr::federateRestoreComplete ( )
virtual

Process the federate restore complete service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::federateRestoreNotComplete ( )
virtual

Process the federate restore complete service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::federateSaveBegun ( )
virtual

Process the federate save begun service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::federateSaveComplete ( )
virtual

Process the federate save complete service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::federateSaveNotComplete ( )
virtual

Process the federate save complete service.

Implements DtFederateMgr.

virtual bool DtRtiExecFederateMgr::findFedFileNameFromMapping ( const MAKRti::DtString  execName,
const std::vector< MAKRti::DtString > &  orig,
std::vector< MAKRti::DtString > &  namesToUse 
) const
protectedvirtual

Find the full FED file path from the stripped name.

void DtRtiExecFederateMgr::getCrcsOfFoms ( std::vector< unsigned int > &  moduleCrcs,
const std::vector< MAKRti::DtString > &  creationFomModuleNames 
)
protected
virtual void DtRtiExecFederateMgr::handleFailedJoin ( unsigned long  sourceID,
DtJoinConfirmMsg::errorCodes  code 
)
protectedvirtual

Handle the join failure before throwing an exception.

void DtRtiExecFederateMgr::handleFailedJoinResponse ( bool  timedOutDueToCreation)
protected

Handle a failed join response and throw appropriate exception.

virtual void DtRtiExecFederateMgr::init ( )
virtual

Virtual initialization within create.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::initializeFOM ( const char *  executionName)
protectedvirtual

Initialize the FOM.

virtual void DtRtiExecFederateMgr::initializeTimeFactory ( )
protectedvirtual

Initialize the time factory.

virtual void DtRtiExecFederateMgr::initiateSave ( )
protectedvirtual

Perform the actual save possibly after waiting to enter time advancing state.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::initiateTimedSave ( RTI::FedTime const &  saveTime)
protectedvirtual

Perform the actual save possibly after waiting to enter time advancing state.

Provide time of save.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::initRidTester ( )
protectedvirtual

Initialize the RidTester.

virtual bool DtRtiExecFederateMgr::isDesignatedFederate ( )
protectedvirtual
bool DtRtiExecFederateMgr::isFomAvailable ( const DtString &  fomName)
protected
DtSynchronousFileDistributor* DtRtiExecFederateMgr::joinDistributor ( )

Access to the Join file distributor of the currently join(ed/ing) federation execution.

DtSynchronousFileDistributor* DtRtiExecFederateMgr::joinDistributor ( ) const

Access to the Join file distributor of the currently join(ed/ing) federation execution.

virtual RTI::FederateHandle DtRtiExecFederateMgr::joinFederationExecution ( const char *  yourName,
const char *  executionName,
RTI::FederateAmbassador *  federateAmbassadorReference,
unsigned long  flags 
)
virtual

Process the join federation execution service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::mergeFomModules ( const std::vector< MAKRti::DtString > *  fomModules)
protectedvirtual

Merge the given FOM Modules into the current FOM.

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

Assignment not implemented – Assignment Not Allowed!

void DtRtiExecFederateMgr::populateWithUnknownFoms ( std::vector< DtString > &  mods,
std::vector< DtString > &  requestedMods 
)
protected
virtual void DtRtiExecFederateMgr::postJoinConfirmInit ( )
protectedvirtual

Initializes managers which require the joinConfirm message to be sent.

This is a special case for MOM publishers when using Smart Internal Forwarding.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::postJoinInit ( const char *  yourName,
const char *  executionName,
const char *  federateName,
RTI::FederateAmbassador *  federateAmbassadorReference 
)
protectedvirtual

Uses the given information to initialize federate data.

DtFomClassMgr needs to be initialized before this function is called.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::posttick ( )
protectedvirtual

Processing after a tick.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::prepareToRestore ( )
protectedvirtual

Prepare the state information to be restored (i.e., clear out existing data).

virtual void DtRtiExecFederateMgr::prepareToRestoreLRC ( )
protectedvirtual

Prepare the state information of the LRC for a restore (may include a back up save in case restore fails).

virtual void DtRtiExecFederateMgr::processCreateResponseMsg ( const DtCreateResponseMsg msg)
protectedvirtual

Process create response message.

static void DtRtiExecFederateMgr::processCreateResponseMsg ( const DtCreateResponseMsg msg,
void *  usr 
)
static

Create response message callback.

virtual void DtRtiExecFederateMgr::processDesignatedFederateMsg ( const DtDesignatedFederateMsg msg)
protectedvirtual

Process designated federate message.

static void DtRtiExecFederateMgr::processDesignatedFederateMsg ( const DtDesignatedFederateMsg msg,
void *  usr 
)
static

designated federate message callback

virtual void DtRtiExecFederateMgr::processDestroyResponseMsg ( const DtDestroyResponseMsg msg)
protectedvirtual

Process destroy response message.

static void DtRtiExecFederateMgr::processDestroyResponseMsg ( const DtDestroyResponseMsg msg,
void *  usr 
)
static

Destroy response message callback.

virtual void DtRtiExecFederateMgr::processFomModuleFileRequestMsg ( const DtFomModuleRequestMsg msg)
protectedvirtual

Process Fom Module file distribution message.

static void DtRtiExecFederateMgr::processFomModuleFileRequestMsg ( const DtFomModuleRequestMsg msg,
void *  usr 
)
static

Fom Module file distribution message callback.

virtual void DtRtiExecFederateMgr::processJoinResponseMsg ( const DtJoinResponseMsg msg)
protectedvirtual

Process join response message.

static void DtRtiExecFederateMgr::processJoinResponseMsg ( const DtJoinResponseMsg msg,
void *  usr 
)
static

Join response message callback.

virtual void DtRtiExecFederateMgr::processNewFomClasses ( const DtNewFomClassesMsg msg)
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.

virtual void DtRtiExecFederateMgr::processNewFomClassesMsg ( const DtNewFomClassesMsg msg)
protectedvirtual

Process message indicating new FOM classes have been added via FOM module merging.

static void DtRtiExecFederateMgr::processNewFomClassesMsg ( const DtNewFomClassesMsg msg,
void *  usr 
)
static

Callback for message indicating new FOM classes have been added via FOM module merging.

virtual void DtRtiExecFederateMgr::processRegisterNameMsg ( const DtNameReservedMsg msg)
protectedvirtual

Process message indicating acceptance or rejection of resign federation execution.

static void DtRtiExecFederateMgr::processRegisterNameMsg ( const DtNameReservedMsg msg,
void *  usr 
)
static

Callback for message indicating acceptance or rejection of reserve name.

virtual void DtRtiExecFederateMgr::processResignResponseMsg ( const DtResignRespMsg msg)
protectedvirtual

Process message indicating acceptance or rejection of resign federation execution.

static void DtRtiExecFederateMgr::processResignResponseMsg ( const DtResignRespMsg msg,
void *  usr 
)
static

Callback for message indicating acceptance or rejection of resign federation execution.

virtual void DtRtiExecFederateMgr::processRestore ( const DtRestoreMsg msg)
protectedvirtual

Process the restore message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processRestoreEnd ( const DtRestoreEndMsg msg)
protectedvirtual

Process the restore end message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processRestoreInitiate ( const DtRestoreInitiateMsg msg)
protectedvirtual

Process the restore initiate message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processRestoreReply ( const DtRestoreReplyMsg msg)
protectedvirtual

Process the restore reply message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processSaveFinished ( const DtSaveFinishedMsg msg)
protectedvirtual

Process the save finished message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processSaveInitiate ( const DtSaveInitiateMsg msg)
protectedvirtual

Process the save initiate message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processSaveInitiate ( const char *  label)
protectedvirtual

Process the save initiate.

virtual void DtRtiExecFederateMgr::processSaveResponse ( const DtSaveResponseMsg msg)
protectedvirtual

Process the save response message.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::processSyncPointMsg ( const DtSyncPointMsg msg)
protectedvirtual

Process a sync point message.

static void DtRtiExecFederateMgr::processSyncPointMsg ( const DtSyncPointMsg msg,
void *  usr 
)
static

sync point message callback

virtual void DtRtiExecFederateMgr::registerFederationSynchronizationPoint ( char const *  label,
char const *  theTag 
)
virtual

Process the register synchronization point service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::registerFederationSynchronizationPoint ( char const *  label,
char const *  theTag,
DtFederateHandleSet const &  syncSet 
)
virtual

Process the register synchronization point service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::requestFederationRestore ( const char *  label)
virtual

Process the request federation restore service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::requestFederationSave ( char const *  label,
RTI::FedTime const *  time = NULL 
)
virtual

Process the request federation save service.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::requestImmediateSave ( const char *  label)
protectedvirtual

Process the immediate save message.

virtual void DtRtiExecFederateMgr::resignFederationExecution ( RTI::ResignAction  theAction)
virtual

Process the resign federation execution service.

Reimplemented from DtFederateMgr.

virtual bool DtRtiExecFederateMgr::restore ( DtRtiSaveFile file)
protectedvirtual

Restore the federation manager state information from the given file.

Reimplemented from DtFederateMgr.

virtual bool DtRtiExecFederateMgr::restoreLRC ( DtRtiSaveFile saveFile)
protectedvirtual

Restore the LRC state information Return bool: restore successful?

virtual bool DtRtiExecFederateMgr::save ( DtRtiSaveFile file)
protectedvirtual

Save the federation manager state information to the given file.

Reimplemented from DtFederateMgr.

virtual bool DtRtiExecFederateMgr::saveLRC ( DtRtiSaveFile saveFile)
protectedvirtual

Save the LRC state information.

Return bool: save successful?

virtual void DtRtiExecFederateMgr::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 
)
protectedvirtual

Send create federation message.

virtual void DtRtiExecFederateMgr::sendDestroyMsg ( const char *  name)
protectedvirtual

Send destroy federation message.

virtual void DtRtiExecFederateMgr::sendJoinConfirmMsg ( unsigned long  sourceID,
DtJoinConfirmMsg::errorCodes  errorCode 
)
protectedvirtual

Send join federation confirm message.

virtual void DtRtiExecFederateMgr::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 
)
protectedvirtual

Send join federation message.

virtual void DtRtiExecFederateMgr::sendRestoreBegunMsg ( const char *  label,
DtResponseFlag  response 
)
protectedvirtual

Send restore federate begun message.

virtual void DtRtiExecFederateMgr::sendRestoreCompleteMsg ( const char *  label,
bool  success 
)
protectedvirtual

Send restore federate complete message.

virtual void DtRtiExecFederateMgr::sendRestoreRequestMsg ( const char *  label)
protectedvirtual

Send restore federation request message.

virtual void DtRtiExecFederateMgr::sendSaveBegunMsg ( )
protectedvirtual

Send save federate begun message.

virtual void DtRtiExecFederateMgr::sendSaveCompleteMsg ( const char *  label,
bool  success 
)
protectedvirtual

Send federate complete message.

virtual void DtRtiExecFederateMgr::sendSaveRequestMsg ( unsigned long  requestID,
const char *  label 
)
protectedvirtual

Send save federation request message.

virtual void DtRtiExecFederateMgr::sendSyncPointMsg ( DtSyncMsgType  kind,
DtFederateHandle id,
char const *  name,
char const *  tag = NULL,
DtFederateHandleSet const *  set = NULL 
)
protectedvirtual

Send synchronization point message.

virtual void DtRtiExecFederateMgr::setDesignatedFederate ( bool  isDesignated)
protectedvirtual

Set/Get designated status of this federate's LRC.

virtual void DtRtiExecFederateMgr::synchronizationPointAchieved ( char const *  label,
bool  successfully = true 
)
virtual

Process the synchronization point achieved service.

Implements DtFederateMgr.

void DtRtiExecFederateMgr::testReadFomModules ( const DtRIDParameters::DtStringList ,
MAKRti::DtString  executionName,
bool  isMim = false 
)
protected

Attempt to read modules.

virtual void DtRtiExecFederateMgr::testSaveProgress ( )
protectedvirtual

Check for save/restore in progress exceptions.

Implements DtFederateMgr.

virtual void DtRtiExecFederateMgr::waitForCreateResponse ( const char *  executionName)
protectedvirtual

This function will wait for the create response or fail and throw.

virtual void DtRtiExecFederateMgr::waitForJoinResponse ( const char *  executionName,
std::vector< MAKRti::DtString > &  joinModules 
)
protectedvirtual

This function will wait for the join response or fail and throw.

virtual void DtRtiExecFederateMgr::waitForReserveNameResponse ( bool  serviceCall = true)
protectedvirtual

This function will wait for the reserve name response or fail and throw.

Reimplemented from DtFederateMgr.

virtual void DtRtiExecFederateMgr::waitForResignResponse ( bool  serviceCall = true)
protectedvirtual

This function will wait for the resign response or fail and throw.

Reimplemented from DtFederateMgr.

Member Data Documentation

bool DtRtiExecFederateMgr::myAsynchronousDistributor
protected
DtCreateResponseFlag DtRtiExecFederateMgr::myCreateResponse
protected

Status of create federation.

MAKRti:: DtString DtRtiExecFederateMgr::myCreateResponseErrorString
protected

Error String of create federation.

MAKRti::DtString DtRtiExecFederateMgr::myDestroyExecutionName
protected

Name of federation to destroy.

DtDestroyResponseFlag DtRtiExecFederateMgr::myDestroyResponse
protected

Status of destroy federation.

std::map<DtString, DtSynchronousFileDistributor*> DtRtiExecFederateMgr::myDistributors
protected

federate Fed File Distributors.

vrlmod::DtThreadedObject* DtRtiExecFederateMgr::myDistributorThread
protected

Should we use local or distributed fed file?

std::string* DtRtiExecFederateMgr::myFailedSyncPointLabel
protected

Failed sync point request.

std::map<DtString, bool> DtRtiExecFederateMgr::myFedFileRequests
protected

Status of fed file request.

std::vector<MAKRti::DtString> DtRtiExecFederateMgr::myFomModuleRequests
protected

Queue of modules requested.

bool DtRtiExecFederateMgr::myFullFedFileDistribution
protected
MAKRti::DtString DtRtiExecFederateMgr::myHostname
protected
bool DtRtiExecFederateMgr::myIsDesignatedFederate
protected

This federate LRC is designated for handling some federation wide tasks (e.g., MOM Federation attribute ownership)

DtJoinConfirmMsg::errorCodes DtRtiExecFederateMgr::myJoinConfirmResponse
protected

Status of join confirm.

DtSynchronousFileDistributor* DtRtiExecFederateMgr::myJoinDistributor
protected

The Fed File Distributor of the joined federation execution.

unsigned short DtRtiExecFederateMgr::myJoinRequestID
protected

Join request ID.

DtJoinResponseMsg* DtRtiExecFederateMgr::myJoinResponse
protected

Copy of join response.

std::list<DtNewFomClassesMsg*> DtRtiExecFederateMgr::myNewFomClassMsgs
protected

Queue of FOM class messages to be processed after we join.

DtFederateHandle DtRtiExecFederateMgr::myOldFedHandle
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

unsigned DtRtiExecFederateMgr::myRegisterNameResponse
protected

Status of registerName 0 = no response, 1 = success, 2 = failure.

DtResignResponse DtRtiExecFederateMgr::myResignResponse
protected

Status of resign federation.

bool DtRtiExecFederateMgr::myResignResponseNotReceived
protected

Status of resign federation received.

unsigned long DtRtiExecFederateMgr::mySaveRequestID
protected

Save request ID.

DtSaveResponseFlag DtRtiExecFederateMgr::mySaveResponse
protected

Save response status.

std::set<DtString> DtRtiExecFederateMgr::mySyncPoints
protected

MAKRti::DtHashList of DtStringHashKeys representing synch point names that have been announced to us.

Data associated with the string is just (void*)

  1. (NULL wouldn't work, because it's indistinguishable from "not present" in a lookup result.)
std::map<MAKRti::DtString, DtFileInformation*> DtRtiExecFederateMgr::myTakenFiles
protected

When files are received from distributor, store them here until requester takes them.


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

Document ID: Generated on Mon Sep 7 15:40:32 EDT 2020 from SVN revision 217499
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)