VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
federateStateRepository.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 MAK Technologies, Inc
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #ifndef federateStateRepository_H_
11 #define federateStateRepository_H_
12 
13 #if DtHLA
14 
15 #include <vlutil/vlMachineTypes.h>
16 #include <vlutil/vlString.h>
17 #include "variableDatumRecord.h"
18 #include <memory>
19 #include "rtiCompatibility.h"
20 #include "stateRepository.h"
21 #include "exerciseConnHLA.h"
22 
23 
30 class DT_DLL_VL DtFederateStateRepository : public DtStateRepository
31 {
32 public:
36  enum DtFederateState
37  {
38  DtFedStateActiveFederate = 1,
39  DtFedStateFederateSaveInProgress = 3,
40  DtFedStateFederateRestoreInProgress = 5
41  };
42 
46  enum DtTimeState
47  {
48  DtTimeStateTimeGranted = 0,
49  DtTimeStateTimeAdvancing = 1
50  };
51 
52 public:
54  DtFederateStateRepository();
55 
57  virtual ~DtFederateStateRepository();
58 
60  DtFederateStateRepository(const DtFederateStateRepository& orig);
61 
63  DtFederateStateRepository& operator=(const DtFederateStateRepository& orig);
64 
66  virtual DtStateRepository* clone(bool copy) const;
67 
69  static DtFederateStateRepository* create();
70 
72  virtual void printData() const;
73 
75  virtual void printDataToStream(std::ostream& stream) const;
76 
80  DtExerciseConn* exConn() const { return myExConn; }
81  void setExConn(DtExerciseConn* val) { myExConn = val; }
82 
84  const RTI::FederateHandle& federateHandle() const;
86  void setFederateHandle(const RTI::FederateHandle& val);
88 
90  const DtString& federateType() const;
92  void setFederateType(const DtString& val);
94 
95 #if DtHLA_1516
96 
97  bool conveyRegionDesignatorSets() const;
99  void setConveyRegionDesignatorSets(bool val);
101 #endif
102 
103 #if DtHLA_1516_EVOLVED
104 
105  const DtString& federateName() const;
107  void setFederateName(const DtString& val);
109 
111  bool conveyProducingFederate() const;
113  void setConveyProducingFederate(bool val);
115 
117  const std::vector<DtString>& fomModuleDesignatorList() const;
119  void setFomModuleDesignatorList(const std::vector<DtString>& modules);
121 
122 
123 #endif
124 
126  const DtString& federateHost() const;
128  void setFederateHost(const DtString& val);
130 
132  const DtString& rtiVersion() const;
134  void setRtiVersion(const DtString& val);
136 
138  const DtString& fedId() const;
141  void setFedId(const DtString& val);
143 
145  bool timeConstrained() const;
147  void setTimeConstrained(bool val);
149 
151  bool timeRegulating() const;
153  void setTimeRegulating(bool val);
155 
157  bool asynchronousDelivery() const;
159  void setAsynchronousDelivery(bool val);
161 
162 #if DtHLA_1516
163 
164  DtFederateState federateState() const;
166  void setFederateState(DtFederateState val);
168 
170  DtTimeState timeManagerState() const;
172  void setTimeManagerState(DtTimeState val);
174 #else
175 
176  const DtString& federateState() const;
178  void setFederateState(const DtString& val);
180 
182  const DtString& timeManagerState() const;
184  void setTimeManagerState(const DtString& val);
186 #endif
187 
189  const DtString& federateTime() const;
191  void setFederateTime(const DtString& val);
193 
195  const DtString& lookahead() const;
197  void setLookahead(const DtString& val);
199 
201  const DtString& lbts() const;
205  void setLbts(const DtString& val);
207 
209  const DtString& minNextEventTime() const;
213  void setMinNextEventTime(const DtString& val);
215 
217  int roLength() const;
221  void setRoLength(int val);
223 
225  int tsoLength() const;
229  void setTsoLength(int val);
231 
233  int reflectionsReceived() const;
235  void setReflectionsReceived(int val);
237 
239  int updatesSent() const;
241  void setUpdatesSent(int val);
243 
245  int interactionsReceived() const;
247  void setInteractionsReceived(int val);
249 
251  int interactionsSent() const;
253  void setInteractionsSent(int val);
255 
257  int objectsOwned() const;
259  void setObjectsOwned(int val);
261 
263  int objectsUpdated() const;
265  void setObjectsUpdated(int val);
267 
269  int objectsReflected() const;
271  void setObjectsReflected(int val);
273 
274 #if DtHLA_1516
275 
276  int objectsDeleted() const;
278  void setObjectsDeleted(int val);
280 
282  int objectsRemoved() const;
284  void setObjectsRemoved(int val);
286 
288  int objectsRegistered() const;
290  void setObjectsRegistered(int val);
292 
294  int objectsDiscovered() const;
296  void setObjectsDiscovered(int val);
298 
300  int timeGrantedTime() const;
305  void setTimeGrantedTime(int val);
307 
309  int timeAdvancingTime() const;
314  void setTimeAdvancingTime(int val);
316 #endif
317 
318 protected:
319  RTI::FederateHandle myFederateHandle;
320  DtString myFederateType;
321  DtString myFederateHost;
322 #if DtHLA_1516
323  bool myConveyRegionDesignatorSets;
324 #endif
325 #if DtHLA_1516_EVOLVED
326  DtString myFederateName;
327  bool myConveyProducingFederate;
328  std::vector<DtString> myFomModules;
329 #endif
330  DtString myRtiVersion;
331  DtString myFedId;
332  bool myTimeConstrained;
333  bool myTimeRegulating;
334  bool myAsynchronousDelivery;
335 #if DtHLA_1516
336  DtFederateState myFederateState;
337  DtTimeState myTimeManagerState;
338 #else
339  DtString myFederateState;
340  DtString myTimeManagerState;
341 #endif
342  DtString myFederateTime;
343  DtString myLookahead;
344  DtString myLbts;
345  DtString myMinNextEventTime;
346  int myRoLength;
347  int myTsoLength;
348  int myReflectionsReceived;
349  int myUpdatesSent;
350  int myInteractionsReceived;
351  int myInteractionsSent;
352  int myObjectsOwned;
353  int myObjectsUpdated;
354  int myObjectsReflected;
355 #if DtHLA_1516
356  int myObjectsDeleted;
357  int myObjectsRemoved;
358  int myObjectsRegistered;
359  int myObjectsDiscovered;
360  int myTimeGrantedTime;
361  int myTimeAdvancingTime;
362 #endif
363 
364  DtExerciseConn* myExConn;
365 };
366 
367 
368 
369 #endif
370 #endif
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Contains the DtString class declaration.
virtual DtStateRepository * clone(bool copy=false) const
Return a copy/empty object of the same type as this.
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
virtual void printData() const
Print State Data to the DtInfo Stream.
Instances of DtString are used to represent strings.
Definition: vlString.h:29
virtual void printDataToStream(std::ostream &stream) const
Prints the State Data to the stream specified.
DtStateRepository & operator=(const DtStateRepository &orig)
assignment operator
This file contains typedefs for machine dependant types.

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)