MAK RTIspy API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simpFedMgr.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: simpFedMgr.h,v $ $Revision: 1.26 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef simpFedMgr_H_
10 #define simpFedMgr_H_
11 
14 
15 #include "rtiMsConfig.h"
16 #include "fedMgr.h"
17 #include <vlutil/vlString.h>
18 #include <map>
19 
31 {
32 public:
33 
37  DtConnectionMgr* connMgr,
38  DtBoost::shared_ptr<DtRtiAssistantLrcClient> assistantClient);
39 
41  virtual ~DtSimpleFederateMgr();
42 
43 private:
44 
47 
50 
51 public:
52 
55 
56 
58  virtual void createFederationExecution(
59  const char* executionName, const char* timeImplName,
60 #ifdef DtIFSPEC1516E
61  const std::vector<DtString>& fomModules,
62  const char* mimModule);
63 #else
64  const char* fed);
65 #endif
66 
68  virtual void destroyFederationExecution (
69  const char* executionName);
70 
71 #ifdef DtIFSPEC1516E
72 
73  virtual void listFederationExecutions();
74 #endif
75 
77 #ifdef DtIFSPEC1516
78  virtual rti1516::FederateHandle joinFederationExecution (
79  const char* federateType,
80  const char* executionName,
81  rti1516::FederateAmbassador* federateAmbassadorReference,
82  unsigned long flags);
83 #elif defined(DtIFSPEC1516E)
84  virtual rti1516e::FederateHandle joinFederationExecution (
85  const char* federateName,
86  const char* federateType,
87  const char* executionName,
88  const std::vector<DtString>& fomModules,
89  unsigned long flags);
90 #else
91  virtual RTI::FederateHandle joinFederationExecution (
92  const char* federateType,
93  const char* executionName,
94  RTI::FederateAmbassador* federateAmbassadorReference,
95  unsigned long flags);
96 #endif
97 
99 #ifdef DtIFSPEC1516
100  virtual void resignFederationExecution(
101  rti1516::ResignAction theAction);
102 #elif defined(DtIFSPEC1516E)
103  virtual void resignFederationExecution(
104  rti1516e::ResignAction theAction);
105 #else
106  virtual void resignFederationExecution(
107  RTI::ResignAction theAction);
108 #endif
109 
110 
113 
114 
116 #ifdef DtIFSPEC1516
118  char const * label,
119  rti1516::VariableLengthData const & theTag);
120 #elif defined(DtIFSPEC1516E)
122  char const * label,
123  rti1516e::VariableLengthData const & theTag);
124 #else
126  char const * label,
127  char const * theTag);
128 #endif
129 
131 #ifdef DtIFSPEC1516
133  char const * label,
134  rti1516::VariableLengthData const & theTag,
135  DtFederateHandleSet const & syncSet);
136 #elif defined(DtIFSPEC1516E)
138  char const * label,
139  rti1516e::VariableLengthData const & theTag,
140  DtFederateHandleSet const & syncSet);
141 #else
143  char const * label,
144  char const * theTag,
145  DtFederateHandleSet const & syncSet);
146 #endif
147 
149  virtual void synchronizationPointAchieved(
150  const char* label, bool successfully=true);
152 
154  virtual void testSaveProgress();
155 
158 
159 
160 #ifdef DtIFSPEC1516
161 
162  virtual void requestFederationSave (char const * label,
163  rti1516::LogicalTime const * time=NULL);
165  virtual void queryFederationSaveStatus();
167  virtual void queryFederationRestoreStatus();
168 #elif defined(DtIFSPEC1516E)
169 
170  virtual void requestFederationSave (char const * label,
171  rti1516e::LogicalTime const * time=NULL);
173  virtual void queryFederationSaveStatus();
175  virtual void queryFederationRestoreStatus();
177  virtual void abortFederationSave();
179  virtual void abortFederationRestore();
180 #else
181 
182  virtual void requestFederationSave (char const * label,
183  RTI::FedTime const * time=NULL);
184 #endif
185 
186  virtual void federateSaveBegun ();
188  virtual void federateSaveComplete ();
190  virtual void federateSaveNotComplete ();
192  virtual void requestFederationRestore ( const char *label);
194  virtual void federateRestoreComplete ();
196  virtual void federateRestoreNotComplete ();
198 
199  // Allow merging in lightweight connections
200  virtual void mergeFomModules( std::vector<MAKRti::DtString>* fomModules );
201 
202  virtual void addNonDuplicateFoms(std::vector<MAKRti::DtString>& fomModules, const std::vector<MAKRti::DtString>& fomModulesToAdd);
203 public:
204 
206  static DtFederateMgr* create(DtRIDParameters* params,
207  DtRtiAmbassadorBaseImplementor* ambImplPtr,
208  DtConnectionMgr* connMgr,
209  DtBoost::shared_ptr<DtRtiAssistantLrcClient> assistantClient);
210 
211 protected:
212 
213  std::map< DtString, std::vector< DtString > > myFederationsToCreateFomModulesMap;
214 
215 };
216 
217 #endif
218 
219 
220 
221 
222 
223 
224 

Document ID: Generated on Mon Jul 9 10:30:41 EDT 2018 from SVN revision 190224
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)