VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exerciseClock.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: exClock.h,v $ $Revision: 1.19 $ $State: Exp $
7 *******************************************************************************/
8 
11 
17 
18 #ifndef DtExerciseClock_H_
19 #define DtExerciseClock_H_
20 
21 #include "vrfutil/simClock.h"
22 #include "vrfcore/timer.h"
23 
24 #include "vlutil/vlTimeStampType.h"
25 
26 class DtSimManager;
27 class DtSimTimeRepository;
28 class DtString;
29 class DtSimMessage;
31 
32 typedef DtRwReal DtRwTime;
33 
41 #include "vrfcore/vrfcoreDefines.h"
43 {
44 public:
45 
47  DtExerciseClock();
48 
50  DtExerciseClock(DtSimManager *simManager);
51 
53  DtExerciseClock(const DtExerciseClock& orig);
54 
57 
58 
60  virtual ~DtExerciseClock();
61 
64  virtual void init();
65 
67  virtual void reset();
68 
70  virtual void tick();
71 
73  virtual void pause();
74 
76  virtual void resume();
77 
79  virtual bool isPaused() const;
80 
83  virtual void setFixedFrameMode(DtTime dT);
84  virtual bool isFixedFrameMode();
85 
87  virtual void setRunToCompleteFrameMode();
88  virtual bool isRunToCompleteFrameMode();
89 
91  virtual void setHybridFrameMode(DtTime dT);
92  virtual bool isHybridFrameMode();
93 
96  virtual void setFixedFrameRate(DtTime dT);
97 
100  virtual DtTime fixedFrameRate();
101 
105  virtual void setTimeMultiplier(DtFloat64 timeMultiplier);
106 
108  virtual DtFloat64 timeMultiplier() const;
109 
110 
112  virtual DtString &elapsedSimTimeString(DtString &strBuffer) const;
113 
115  virtual void setExerciseStartTime(DtTime time);
116 
118  virtual DtTime exerciseStartTime() const;
119 
120  virtual DtString &exerciseStartTimeString(DtString &strBuffer) const;
121 
123  virtual DtTime exerciseTime() const;
124 
125  virtual DtString &exerciseTimeString(DtString &strBuffer) const;
126 
127  virtual void setExerciseConnectionClockTime(double);
128 
131  virtual void set_dT(DtTime dT);
132 
134  virtual DtTime dT() const;
135 
136  virtual void setTimeStampType(DtTimeStampType);
137  DtTimeStampType timeStampType() const { return myTimeStampType; };
138 
139  virtual double simTimeScale() const;
140 
144  virtual void registerInterfaceCallbacks();
145 
148  static void setTimeMultiplierCallback(DtSimMessage* msg, void * usr);
149 
151  static void frameModeCallback(DtSimMessage* msg, void * usr);
152 
153 protected:
154 
156  virtual void processSetTimeMultiplier(const DtIfSetTimeMultiplier&
157  timeMultiplerData);
158 
159 protected:
160 
161  enum FrameMode { FmRunToComplete, FmFixed, FmHybrid } myFrameMode;
162 
164  bool myPaused;
176  DtTimeStampType myTimeStampType;
178 };
179 
180 inline bool DtExerciseClock::isPaused() const
181 {
182  return myPaused;
183 }
184 
185 #endif

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)