VR-Forces 4.1 Class Documentation
exClock.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/vlClock.h"
22 #include "vrfcore/timer.h"
23 
24 class DtSimManager;
25 class DtSimTimeRepository;
26 class DtString;
27 class DtSimMessage;
29 
30 typedef DtRwReal DtRwTime;
31 
39 #include "vrfcore/vrfcoreDefines.h"
41 {
42 public:
43 
45  DtExerciseClock();
46 
48  DtExerciseClock(DtSimManager *simManager);
49 
51  DtExerciseClock(const DtExerciseClock& orig);
52 
55 
56 
58  virtual ~DtExerciseClock();
59 
62  virtual void init();
63 
65  virtual void reset();
66 
68  virtual void tick();
69 
71  virtual void pause();
72 
74  virtual void resume();
75 
77  virtual bool isPaused() const;
78 
81  virtual void setFixedFrameMode(DtTime dT);
82  virtual bool isFixedFrameMode();
83 
85  virtual void setRunToCompleteFrameMode();
86  virtual bool isRunToCompleteFrameMode();
87 
89  virtual void setHybridFrameMode(DtTime dT);
90  virtual bool isHybridFrameMode();
91 
94  virtual void setFixedFrameRate(DtTime dT);
95 
98  virtual DtTime fixedFrameRate();
99 
103  virtual void setTimeMultiplier(DtFloat64 timeMultiplier);
104 
106  virtual DtFloat64 timeMultiplier() const;
107 
108 
110  virtual DtString &elapsedSimTimeString(DtString &strBuffer) const;
111 
113  virtual void setExerciseStartTime(DtTime time);
114 
116  virtual DtTime exerciseStartTime() const;
117 
118  virtual DtString &exerciseStartTimeString(DtString &strBuffer) const;
119 
121  virtual DtTime exerciseTime() const;
122 
123  virtual DtString &exerciseTimeString(DtString &strBuffer) const;
124 
127  virtual void set_dT(DtTime dT);
128 
130  virtual DtTime dT() const;
131 
132  virtual double simTimeScale() const;
133 
137  virtual void registerInterfaceCallbacks();
138 
141  static void setTimeMultiplierCallback(DtSimMessage* msg, void * usr);
142 
144  static void frameModeCallback(DtSimMessage* msg, void * usr);
145 
146 protected:
147 
149  virtual void processSetTimeMultiplier(const DtIfSetTimeMultiplier&
150  timeMultiplerData);
151 
152 protected:
153 
154  enum FrameMode { FmRunToComplete, FmFixed, FmHybrid } myFrameMode;
155 
157  bool myPaused;
159  DtTime my_dT;
166 };
167 
168 inline bool DtExerciseClock::isPaused() const
169 {
170  return myPaused;
171 }
172 
173 #endif

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)