VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSensorFieldOfViewVisualizer.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2015 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 
14 #include <vrvCore/DtModelAgent.hpp>
16 #include <boost/unordered_map.hpp>
17 
18 namespace makVrv
19 {
20  class DtRectangularPyramidModelAgent;
21 
25  : public DtStateVisualizer
26  {
27  public:
28 
36  DtStateListener& listener, int modelSet );
37 
45  DtSceneObjectAgent* sceneObject, int modelSet );
46 
50 
53 
56  virtual void createModelAgents();
57 
61  virtual void destroyModelAgents();
62 
65  virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
66 
69  static const DtStateVisualizer::TypeInfo& theTypeInfo();
70 
72  static const DtVisualizerSchema& theSchema();
74 
75  protected:
76 
79  virtual void setModelDefinitionForAgents();
80 
85  virtual DtModelAgent* createModel( const DtSensorFieldOfViewStateListener* listener );
86 
90  virtual DtModelAgent* findModel( const DtSensorFieldOfViewStateListener* listener );
91 
98  virtual bool setModelVisibility( const DtSensorFieldOfViewStateListener* listener, bool vis );
99 
104  virtual void destroyModel( const DtSensorFieldOfViewStateListener* listener );
105 
109  virtual void destroyAllModels();
110 
117  virtual DtModelAgent* createModel( makVrv::DtUniqueID& modelId,
118  const DtSensorFieldOfViewStateListener* listener = 0 );
119 
124  virtual DtModelAgent* findModel( const makVrv::DtUniqueID& modelId );
125 
130  virtual const DtSensorFieldOfViewStateListener* findModelListener( const DtModelAgent* model );
131 
138  virtual bool setModelVisibility( const makVrv::DtUniqueID& modelId, bool vis );
139 
144  virtual void destroyModel( const makVrv::DtUniqueID& modelId );
145 
148  virtual void setModelDefinition( makVrv::DtModelAgent* model );
149 
154  virtual makVrv::DtModelAgent* instantiateModel( const DtSensorFieldOfViewStateListener* listener = 0 ) = 0;
155 
162  virtual bool updateModelVisibility( makVrv::DtModelAgent* modelAgent, bool vis );
163 
167  virtual void destructModel( makVrv::DtModelAgent* model );
168 
169  protected:
170 
171  typedef boost::unordered_map<const DtSensorFieldOfViewStateListener*,DtSceneObjectAgent*> SensorFovSceneObjectMap;
172 
175 
177  typedef boost::unordered_map<const DtSensorFieldOfViewStateListener*,makVrv::DtUniqueID> ModelIdMap;
178 
181 
183  typedef boost::unordered_map<makVrv::DtUniqueID,DtModelAgent*> ModelMap;
184 
187 
188  };
189 
190 }
ModelMap myModels
Stores the model agents for the visualizer.
Definition: DtSensorFieldOfViewVisualizer.h:186
boost::unordered_map< const DtSensorFieldOfViewStateListener *, makVrv::DtUniqueID > ModelIdMap
Definition: DtSensorFieldOfViewVisualizer.h:177
boost::unordered_map< makVrv::DtUniqueID, DtModelAgent * > ModelMap
Definition: DtSensorFieldOfViewVisualizer.h:183
Sensor Field of View state listener.
Definition: DtSensorFieldOfViewStateListener.h:29
SensorFovSceneObjectMap mySensorFieldOfViewObjectAgents
Scene object agents for the sensor field of view.
Definition: DtSensorFieldOfViewVisualizer.h:174
Protocol independent sensor field of view visualizer.
Definition: DtSensorFieldOfViewVisualizer.h:24
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
boost::unordered_map< const DtSensorFieldOfViewStateListener *, DtSceneObjectAgent * > SensorFovSceneObjectMap
Definition: DtSensorFieldOfViewVisualizer.h:171
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:32
Contains the DtSensorFieldOfViewStateListener class declaration.
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
Definition: DtVisualizerSchema.h:19
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:56
ModelIdMap myModelIds
Maps unique listeners to their model id&#39;s.
Definition: DtSensorFieldOfViewVisualizer.h:180

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)