24 class DtChannelManager;
26 class DtEventProcessorInterface;
27 class DtInputDriverConfiguration;
28 class DtKeyAndMouseEventListener;
30 class DtKeyMapManager;
34 class DtObserverController;
35 class DtChannelConfiguration;
36 class DtObserverAnimator;
37 class DtObserverViewsManager;
38 class DtMouseHideProcessor;
58 const std::string& instanceName);
64 virtual bool onStart();
67 virtual bool onStop();
70 virtual bool onTick();
73 virtual const std::string& className()
const;
76 virtual bool processKeyEvent(
const DtKeyEvent& keyEvent,
80 virtual bool processMouseEvent(
const DtMouseEvent& mouseEvent,
83 virtual bool processPinchGesture(
const DtPinchGesture& pinchGesture,
88 virtual void setMouseHideProccessorEnabled(
bool enabled);
91 virtual void hideMouse(
DtChannel* channel,
float mouseX,
float mouseY);
94 virtual bool isMouseHidden()
const;
97 virtual void showMouse(
DtChannel* channel);
100 virtual void centerMouse(
DtChannel* channel);
103 virtual void setMousePosition(
DtChannel* channel,
float x,
float y);
107 virtual void clearState();
118 virtual DtChannel* findCurrentChannel()
const;
139 const std::string& className);
148 bool saveKeyMapToFile(
const DtKeyMap& keyMap,
const std::string&
filename)
const;
152 DtKeyMap* loadKeyMapFromFile(
const std::string&
filename,
bool createBackup =
false);
158 void setKeyMap(
const std::string& mapName);
161 const std::string& keyMap()
const;
164 DtKeyMap* createKeyMap(
const std::string& mapName);
167 DtKeyMap* findKeyMap(
const std::string& mapName);
171 const std::string& functionName,
173 bool replace =
false,
179 const std::string& binaryName,
181 bool replace =
false);
184 virtual void realizeConfiguration(
187 virtual void realizeObserverConfiguration(
202 void addObserverState(
const std::string& observerName,
215 virtual void addObserver(
DtObserver* observer);
218 virtual void removeObserver(
DtObserver* observer);
221 virtual void removeObserver(
const std::string& name);
224 virtual std::vector<DtObserver*> observers()
const;
227 virtual DtObserver* findObserverByName(
const std::string& name);
229 virtual const DtObserver* findObserverByName(
const std::string& name)
const;
233 virtual void setCurrentObserver(
const std::string& observerName);
242 virtual DtObserver* findCurrentObserver()
const;
246 void setTerrainContextEnabled(
bool enabled);
247 bool terrainContextEnabled()
const;
255 virtual void toggleTerrainScaling();
258 virtual void toggleWireframe();
261 virtual void toggleSimulationTimePaused();
264 virtual void incrementTerrainScaleFactor();
267 virtual void decrementTerrainScaleFactor();
270 virtual void toggleEntityLabels();
273 virtual void toggleEmbarkedEntityLabels();
276 virtual void toggleRotateEntitySymbols();
279 virtual void toggleTacticalGraphics();
282 virtual void toggleEntityHatLines();
285 virtual void toggleTacticalGraphicsHatLines();
287 virtual void toggleEntityHatMode();
290 virtual void toggleTacticalGraphicsHatMode();
293 virtual void toggleShowActiveTacticalGraphics();
296 virtual void togglePropTransparencySelected();
300 virtual void toggleViewControl();
307 virtual void setAllowObserverReset(
bool allow);
308 virtual bool allowObserverReset();
313 virtual void setObserverRestoreOnSlaveConnectEnabled(
bool enable);
314 virtual bool isObserverRestoreOnSlaveConnectEnabled();
317 void saveObservers(
const std::string&
filename);
322 void loadObservers(
const std::string&
filename,
bool force =
false);
332 virtual void removeAnimatorFromObserver(
DtObserver *observer);
335 virtual void takeScreenCapture();
338 virtual void toggleDeveloperDebugUI();
347 bool getLastMouseEventPosition(
int& x,
int& y);
350 DtChannel* lastMouseEventChannel()
const;
354 void setCurrentObserver(
DtObserver* observer);
357 virtual void initializeKeyMapManager(
const std::string& defaultKeyMap);
358 virtual void bindFunctions();
360 virtual void createMaps();
364 virtual void loadMaps(
bool loadFromFactory =
false);
370 void removeObserver(
ObserversMap& observers,
const std::string& name);
372 void destroyObservers();
374 bool setCurrentObserverFromChannel(
const DtChannel& channel);
378 void slot_channelConfigurationModified(
const std::string& deName,
379 const std::string& winName,
const std::string& oldChannelName,
381 void slot_attachedToChanged(
DtObserver* observer);
384 void createRequiredObservers(
const std::string& engineName);
387 virtual void slot_displayEngineAdded(
const DtDeRecord& igRecord);
392 std::string restoreObserversPart1();
395 void restoreObserversPart2(
const std::string&
filename);
397 virtual void slot_displayEngineRealized(
const std::string&,
398 const std::string& engineName);
406 bool showObserverNameWarning();
410 void setShowObserverNameWarning(
bool warn);
boost::function< void(DtObserver &)> ObserverAction
Definition: DtViewStateProcessor.h:29
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
This class encapsulates a Key event.
Definition: DtKeyEvent.h:16
TODO: This class is used to encapsulate a set of default observer settings and parameters.
Definition: DtObserverConfiguration.h:22
DtPinchGesture represents a Pinch Multitouch Gesture. Instances of the DtPinchGesture class are used ...
Definition: DtPinchGesture.h:26
A Record of an IG instance.
Definition: DtDeRecord.h:24
Contains makVrv::DtObserverConfiguration class.
A DtObserverSettingsRecord contains the state of an observer.
Definition: DtObserverStateRecord.h:20
This class encapsulates a mouse button event.
Definition: DtMouseEvent.h:19
a Key Map contains a map of keys to FunctionMapEntrys, as well as a list of functions to execute when...
Definition: DtKeyMap.h:312
KeyModifier
Describe which modifier(s) are pressed.
Definition: DtKeyState.h:136
Definition: DtKeyEvent.h:22
unsigned int ObjectType
Definition: DtElementEntry.h:54
The manager for owning key maps.
Definition: DtKeyMapManager.h:31
The abstract Channel Class.
Definition: DtChannel.h:35
A facade for a DtObserverObject.
Definition: DtObserver.h:38
The DtDriver is an abstract class. Developers derive from this to create logic that "directs" things ...
Definition: DtDriver.h:30
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv::DtKeyMapManager class.
The DtAgentManager manages the distributed scene object framework. This includes the objects and upda...
Definition: DtAgentManager.h:38
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv:DtDriver class.
Definition: DtKeyState.h:137
Base class for handling DtChannels. Derived classes should override the tick() method and advance the...
Definition: DtChannelManager.h:32
Contains makArchives::DtObserverStateRecord class.
Encapsulates the process of animating an observer to a given location. The animator will smoothly mov...
Definition: DtObserverAnimator.h:40
Configuration for a single channel Serialized and sent to remote displays as necessary to configure r...
Definition: DtChannelConfiguration.h:24
Manager for the observer view records loaded in the application.
Definition: DtObserverViewsManager.h:28
The base implementation of a configuration.
Definition: DtConfiguration.h:24
DtMouseHideProcessor tracks mouse move events and when they happen. If a mouse move event does not ha...
Definition: DtMouseHideProcessor.h:32
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
The DtEventProcessorInterface defines the generic interface for classes which handle input events...
Definition: DtEventProcessorInterface.h:34
KeyType
Enumerate the key types. These are based on Virtual Key Codes.
Definition: DtKeyState.h:25
KeyEventType
Enumerate the types of key events supported.
Definition: DtKeyEvent.h:20
This class's main responsibility is to provide the functions used to control an observer.
Definition: DtObserverController.h:29
This abstract base class defines the interface for OS-specific keyboard and mouse event listeners...
Definition: DtKeyAndMouseEventListener.h:25