20 class DtBaseConnection;
21 class DtSceneObjectVisualizer;
22 class DtStateListener;
23 class DtStateVisualizerFactory;
24 class DtElementDefinitionNew;
25 class DtVisualizerDefinitionSet;
26 class DtVisualizerDefinition;
27 class DtSceneObjectAgent;
40 int modelSet,
bool distribute);
44 DtSceneObjectAgent* sceneObject,
int modelSet,
bool distribute );
50 virtual void visualizeElementDefinition(
const DtUnicode& elementName,
55 virtual void visualizeElementDefinition(
const DtUnicode& elementName,
63 virtual void createVisualizersByType(
int visualType );
67 virtual void destroyVisualizersByType(
int visualType );
77 template <
typename VisualizerClass>
78 inline void findVisualizers(std::vector<VisualizerClass*>& visualizers);
83 template <
typename VisualizerClass>
84 inline void findVisualizersByDynamicCast(std::vector<VisualizerClass*>& visualizers);
96 virtual void setPickable(
bool pickable );
99 bool pickable()
const;
106 virtual void destroyAllModelVisualizers();
123 void destroyAllModelVisualizersInternal();
127 virtual void visualizeVisualizerDefinitionSet(
const DtUnicode& elementName,
137 virtual void addVisualizer(
const std::string& schemaName,
151 template <
typename T,
typename C>
154 myConnections.manageConnection(sig.connect(
boost::bind(fp, static_cast<C*>(
this), _1)));
155 ((C&)(*this).*fp)(val);
162 const DtUnicode* chooseRandomString(
const std::vector<DtUnicode>& stringList);
189 template <
typename VisualizerClass>
191 std::vector<VisualizerClass*>& visualizers)
193 std::pair<StateVisualizerMap::iterator,
194 StateVisualizerMap::iterator> range =
myVisualizers.equal_range(
195 VisualizerClass::theTypeInfo().schema.name());
197 for(; range.first != range.second; ++range.first)
199 VisualizerClass* instance =
dynamic_cast<VisualizerClass*
>(
200 range.first->second);
203 visualizers.push_back(instance);
208 template <
typename VisualizerClass>
210 std::vector<VisualizerClass*>& visualizers)
212 StateVisualizerMap::const_iterator iter =
myVisualizers.begin();
216 VisualizerClass* instance =
dynamic_cast<VisualizerClass*
>(iter->second);
220 visualizers.push_back(instance);
DtStateVisualizerFactory & myCachedFactory
Definition: DtVisualizerSet.h:168
Contains makVrv::DtVisualizerSchema class.
void findVisualizers(std::vector< VisualizerClass * > &visualizers)
Find all instances of a Visualizer by schema name.
Definition: DtVisualizerSet.h:190
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
DtSignalConnectionManager myConnections
Definition: DtVisualizerSet.h:171
boost::unordered_multimap< std::string, DtStateVisualizer * > StateVisualizerMap
Definition: DtVisualizerSet.h:165
bool myVisible
Definition: DtVisualizerSet.h:175
Contains integers that determine the context with which to show/hide a visualizer.
The makVrv::DtVisualizerDefinitionSet is a collection of makVrv::DtVisualizerDefinition instances...
Definition: DtVisualizerDefinitionSet.h:20
boost::unordered_map< int, ModelSetVisualizerCreationMap > VisualTypeVisualizerCreationMap
Map that indicates whether a visualizer should be created, by visual type, for all given model sets...
Definition: DtVisualizerCreationSettings.h:42
Base class for visualizing generic objects in the scene.
Definition: DtSceneObjectVisualizer.h:24
DtSceneObjectAgent * mySceneObjectAgent
Definition: DtVisualizerSet.h:178
A factory for DtStateVisualizer's.
Definition: DtStateVisualizerFactory.h:30
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
binderNoArgs< _Fn > bind(const _Fn &_Func, const _Ty &_Left)
Definition: DtSTLUtilities.h:76
StateVisualizerMap myVisualizers
Definition: DtVisualizerSet.h:170
This file contains the declaration for the class DtMouseState.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Type
Visualizer class types that are supportable via visualizers. Each visualizer can be created by an ins...
Definition: DtStateVisualizer.h:41
Contains makVrv:DtStateVisualizer class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
std::string myVisualTypeString
Definition: DtVisualizerSet.h:186
std::vector< DtStateVisualizer * > VisualizerList
Definition: DtVisualizerSet.h:36
Contains makVrv::DtVisualizerCreationSettings class.
The element definition class contains the element definition information. The makVrv::DtElementDefini...
Definition: DtElementDefinitionNew.h:25
std::vector< DtShowHideContext::ShowHideContext > ShowHideContexts
Definition: DtVisualizerSet.h:181
void connectAndUpdate(boost::signalslib::signal< void(T)> &sig, void(C::*fp)(T), T val)
Utility function for connect a signal to an update function as well as calling the update function...
Definition: DtVisualizerSet.h:152
bool myPickable
Definition: DtVisualizerSet.h:174
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:32
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that "directs...
Definition: DtStateVisualizer.h:32
DtStateListener & myStateListener
Definition: DtVisualizerSet.h:169
DtBaseConnection & myBaseConnection
Definition: DtVisualizerSet.h:167
void findVisualizersByDynamicCast(std::vector< VisualizerClass * > &visualizers)
Find all instance of a visualizer by dynamically casting to the class type rather than doing the fast...
Definition: DtVisualizerSet.h:209
A definition of a visualizer. Visualizer definition are always members of a visualizer definition set...
Definition: DtVisualizerDefinition.h:22
ShowHideContexts myShowHideContexts
Definition: DtVisualizerSet.h:183
VisualizerShowHideContext
Definition: DtShowHideContext.h:39
const DtElementDefinitionNew * myDefinition
Definition: DtVisualizerSet.h:172
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
Definition: DtVisualizerSchema.h:19
bool myDistribute
Definition: DtVisualizerSet.h:176
DtSceneObjectVisualizer * mySceneObjectVisualizer
Definition: DtVisualizerSet.h:180
int myModelSet
Definition: DtVisualizerSet.h:184