VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtObserverController.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2008 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtObserverController.h,v $ $Revision: 1.11 $ $State: Exp $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 #include <vrvCore/vrvCore.h>
15 
17 #include <vrvCore/DtMouseEvent.h>
19 #include <vrvCore/DtDriver.h>
21 
22 namespace makVrv
23 {
24 
25  class DtDe;
26  class DtObserver;
27  class DtKeyMapManager;
28 
33  {
34  public:
35 
37  DtObserverController( DtDe& de, DtKeyMapManager& keyMapManager );
38 
40  virtual ~DtObserverController();
41 
42  void setCurrentObserver( DtObserver* observer );
43  DtObserver* currentObserver() const;
44 
45  virtual void bindFunctions();
46 
47  //
49  //
50  //
52  //
53  virtual void incrementOrbitSpeedGain();
54  virtual void decrementOrbitSpeedGain();
55  virtual void incrementLinearSpeedGain();
56  virtual void decrementLinearSpeedGain();
57  virtual void incrementRotationSpeedGain();
58  virtual void decrementRotationSpeedGain();
59 
62  virtual void toggleFlashlight();
64 
66  virtual void startOrbitingLeft();
67  virtual void stopOrbitingLeft();
68  virtual void startOrbitingRight();
69  virtual void stopOrbitingRight();
70  virtual void startOrbitingUp();
71  virtual void stopOrbitingUp();
72  virtual void startOrbitingDown();
73  virtual void stopOrbitingDown();
74 
75  virtual void startLookUp();
76  virtual void startLookDown();
77  virtual void startLookLeft();
78  virtual void startLookRight();
79  virtual void startLookTiltLeft();
80  virtual void startLookTiltRight();
81 
82  virtual void startLevelYawLeft();
83  virtual void startLevelYawRight();
84  virtual void startLevelPitchUp();
85  virtual void startLevelPitchDown();
86  virtual void startLevelRollRight();
87  virtual void startLevelRollLeft();
88 
89  virtual void startYawLeft();
90  virtual void startYawRight();
91  virtual void startPitchUp();
92  virtual void startPitchDown();
93  virtual void startRollRight();
94  virtual void startRollLeft();
95 
96  virtual void startMoveObserverForward();
97  virtual void startMoveObserverLeft();
98  virtual void startMoveObserverBack();
99  virtual void startMoveObserverRight();
100  virtual void startMoveObserverUp();
101  virtual void startMoveObserverDown();
102 
103  virtual void startMoveLevelObserverForward();
104  virtual void startMoveLevelObserverBack();
105  virtual void startMoveLevelObserverLeft();
106  virtual void startMoveLevelObserverRight();
107  virtual void startMoveLevelObserverUp();
108  virtual void startMoveLevelObserverDown();
109 
110  virtual void startMoveAttachedContextForward();
111  virtual void startMoveAttachedContextBack();
112  virtual void startMoveAttachedContextLeft();
113  virtual void startMoveAttachedContextRight();
114  virtual void startMoveAttachedContextUp();
115  virtual void startMoveAttachedContextDown();
116 
117  virtual void stopLookUp();
118  virtual void stopLookDown();
119  virtual void stopLookLeft();
120  virtual void stopLookRight();
121  virtual void stopLookTiltLeft();
122  virtual void stopLookTiltRight();
123 
124  virtual void stopLevelYawLeft();
125  virtual void stopLevelYawRight();
126  virtual void stopLevelPitchUp();
127  virtual void stopLevelPitchDown();
128  virtual void stopLevelRollRight();
129  virtual void stopLevelRollLeft();
130 
131  virtual void stopYawLeft();
132  virtual void stopYawRight();
133  virtual void stopPitchUp();
134  virtual void stopPitchDown();
135  virtual void stopRollRight();
136  virtual void stopRollLeft();
137 
138  virtual void stopMoveObserverForward();
139  virtual void stopMoveObserverLeft();
140  virtual void stopMoveObserverBack();
141  virtual void stopMoveObserverRight();
142  virtual void stopMoveObserverUp();
143  virtual void stopMoveObserverDown();
144 
145  virtual void stopMoveLevelObserverForward();
146  virtual void stopMoveLevelObserverBack();
147  virtual void stopMoveLevelObserverLeft();
148  virtual void stopMoveLevelObserverRight();
149  virtual void stopMoveLevelObserverUp();
150  virtual void stopMoveLevelObserverDown();
151 
152  virtual void stopMoveAttachedContextForward();
153  virtual void stopMoveAttachedContextBack();
154  virtual void stopMoveAttachedContextLeft();
155  virtual void stopMoveAttachedContextRight();
156  virtual void stopMoveAttachedContextUp();
157  virtual void stopMoveAttachedContextDown();
158 
159  virtual void startSuppressingConstrainToTerrain();
160  virtual void stopSuppressingConstrainToTerrain();
161 
167  virtual void nextAttachMode();
168 
169  virtual void level();
170  virtual void resetCamera();
171  virtual void reset();
172  virtual void toggleSpeedScaling();
173  virtual void toggleConstrainToTerrain();
174  virtual void toggleForceNorthOrientation();
175 
177  virtual void toggleTrackHistories();
178 
179  virtual void toggleConstrainToCenter();
180  virtual void detach();
181  virtual void toggleHideModelOnAttach();
182  virtual void toggleOrientToTargetConstraint();
183  virtual void attachNextAllowed();
184  virtual void attachNextEntityOrProp();
185  virtual void attachPrevAllowed();
186  virtual void attachPrevEntityOrProp();
187 
188  virtual void setMimicAttachType();
189  virtual void setTetherAttachType();
190  virtual void setTrackAttachType();
191 
192  virtual void setOrbitSpeedGain( int gain );
193  virtual void setLinearSpeedGain( int gain );
194  virtual void setRotationSpeedGain( int gain );
195 
196  virtual void clearMotion();
197  virtual void nextObserverMode();
198  virtual void previousObserverMode();
199  virtual void toggleSpeedScalingMode();
200 
202  //@name View Resolution (2D) functions. The resolution is in
204  virtual void incrementViewResolution();
205  virtual void decrementViewResolution();
206  virtual void startIncreasingViewResolution();
207  virtual void stopIncreasingViewResolution();
208  virtual void startDecreasingViewResolution();
209  virtual void stopDecreasingViewResolution();
210  virtual void setViewResolution(double resolution);
212 
213 
215  //@name View Magnification (3D) functions.
216  virtual void incrementViewMagnification();
217  virtual void decrementViewMagnification();
218  virtual void resetViewMagnification();
219  virtual void setViewMagnification(double magnification);
220  //@]
221 
222  private:
225 
227  DtObserverController& operator=( const DtObserverController& );
228 
229  protected:
230 
233 
236 
237  };
238 
242  {
243  public:
244 
247 
249  virtual ~DtObserverControllerCreator();
250 
252  static DtObserverControllerCreator& instance(DtDe& de);
253 
257  static void registerInstance(DtDe& de, DtObserverControllerCreator* creator);
258 
260  virtual DtObserverController* create( DtDe& de, DtKeyMapManager& keyMapManager );
261 
262  };
263 
264 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)