17 class DtBaseConnection;
19 class DtSceneObjectVisualizer;
20 class DtStateListener;
21 class DtStateVisualizerFactory;
23 class DtElementDefinitionNew;
24 class DtVisualizerDefinitionSet;
25 class DtVisualizerDefinition;
38 int modelSet,
bool distribute);
44 virtual void visualizeElementDefinition(
const DtUnicode& elementName,
49 virtual void visualizeElementDefinition(
const DtUnicode& elementName,
57 virtual void createVisualizersByType(
int visualType );
61 virtual void destroyVisualizersByType(
int visualType );
70 template <
typename VisualizerClass>
71 inline void findVisualizers(std::vector<VisualizerClass*>& visualizers);
76 template <
typename VisualizerClass>
77 inline void findVisualizersByDynamicCast(std::vector<VisualizerClass*>& visualizers);
90 virtual bool setVisible(
bool visible,
95 virtual bool isVisible()
const;
110 virtual void setPickable(
bool pickable );
113 bool pickable()
const;
116 virtual void setSelected(
bool);
119 bool selected()
const;
126 virtual void destroyAllModelVisualizers();
133 const std::string& windowName,
const std::string& channelName,
137 const std::string& windowName,
const std::string& channelName,
141 const std::string& windowName,
const std::string& channelName,
149 void destroyAllModelVisualizersInternal();
153 virtual void visualizeVisualizerDefinitionSet(
const DtUnicode& elementName,
163 virtual void addVisualizer(
const std::string& schemaName,
176 virtual void setModelVisualizerVisible(
const std::string& schemaName,
177 bool onOff,
int context);
180 virtual void slot_mouseDown(
182 const std::string& windowName,
const std::string& channelName,
DtStateVisualizer* v);
183 virtual void slot_mouseUp(
185 const std::string& windowName,
const std::string& channelName,
DtStateVisualizer* v);
186 virtual void slot_mouseDblClick(
188 const std::string& windowName,
const std::string& channelName,
DtStateVisualizer* v);
192 template <
typename T,
typename C>
195 myConnections.manageConnection(sig.connect(
boost::bind(fp, static_cast<C*>(
this), _1)));
196 ((C&)(*this).*fp)(val);
203 const DtUnicode* chooseRandomString(
const std::vector<DtUnicode>& stringList);
229 template <
typename VisualizerClass>
231 std::vector<VisualizerClass*>& visualizers)
233 std::pair<StateVisualizerMap::iterator,
234 StateVisualizerMap::iterator> range =
myVisualizers.equal_range(
235 VisualizerClass::theTypeInfo().schema.name());
237 for(; range.first != range.second; ++range.first)
239 VisualizerClass* instance =
dynamic_cast<VisualizerClass*
>(
240 range.first->second);
243 visualizers.push_back(instance);
248 template <
typename VisualizerClass>
250 std::vector<VisualizerClass*>& visualizers)
252 StateVisualizerMap::const_iterator iter =
myVisualizers.begin();
256 VisualizerClass* instance =
dynamic_cast<VisualizerClass*
>(iter->second);
260 visualizers.push_back(instance);
DtStateVisualizerFactory & myCachedFactory
Definition: DtVisualizerSet.h:209
Definition: DtShowHideContext.h:19
void findVisualizers(std::vector< VisualizerClass * > &visualizers)
Find all instances of a Visualizer by schema name.
Definition: DtVisualizerSet.h:230
boost::signal< void(bool, DtVisualizerSet *vis) > signal_selectionStateChanged
Definition: DtVisualizerSet.h:145
A unicode string.
Definition: DtUnicode.h:33
DtSignalConnectionManager myConnections
Definition: DtVisualizerSet.h:212
boost::unordered_multimap< std::string, DtStateVisualizer * > StateVisualizerMap
Definition: DtVisualizerSet.h:206
bool mySelected
Definition: DtVisualizerSet.h:215
bool myVisible
Definition: DtVisualizerSet.h:217
Contains integers that determine the context with which to show/hide a visualizer.
ShowHideContext
Definition: DtShowHideContext.h:17
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:36
boost::signal< void(DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v, DtVisualizerSet *i)> signal_mouseDblClick
Definition: DtVisualizerSet.h:143
Base class for visualizing generic objects in the scene.
Definition: DtSceneObjectVisualizer.h:27
A factory for DtStateVisualizer's.
Definition: DtStateVisualizerFactory.h:29
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:37
boost::signal< void(DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v, DtVisualizerSet *i)> signal_mouseUp
Definition: DtVisualizerSet.h:139
binderNoArgs< _Fn > bind(const _Fn &_Func, const _Ty &_Left)
Definition: DtSTLUtilities.h:76
StateVisualizerMap myVisualizers
Definition: DtVisualizerSet.h:211
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Type
Visualizer class types that are supportable via visualizers.
Definition: DtStateVisualizer.h:39
Contains makVrv:DtStateVisualizer class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
This class encapsulates the state associated with a mouse button event.
Definition: DtMouseState.h:23
std::string myVisualTypeString
Definition: DtVisualizerSet.h:226
std::vector< DtStateVisualizer * > VisualizerList
Definition: DtVisualizerSet.h:34
Contains makVrv::DtVisualizerCreationSettings class.
The element definition class contains the element definition information.
Definition: DtElementDefinitionNew.h:25
std::vector< DtShowHideContext::ShowHideContext > ShowHideContexts
Definition: DtVisualizerSet.h:221
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
bool myPickable
Definition: DtVisualizerSet.h:216
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:30
The DtStateVisualizer is an abstract class.
Definition: DtStateVisualizer.h:30
DtStateListener & myStateListener
Definition: DtVisualizerSet.h:210
DtBaseConnection & myBaseConnection
Definition: DtVisualizerSet.h:208
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:249
A definition of a visualizer.
Definition: DtVisualizerDefinition.h:22
ShowHideContexts myShowHideContexts
Definition: DtVisualizerSet.h:223
void connectAndUpdate(boost::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:193
boost::signal< void(DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v, DtVisualizerSet *i)> signal_mouseDown
Emitted when the mouse is clicked on any visualizer in this collection.
Definition: DtVisualizerSet.h:135
const DtElementDefinitionNew * myDefinition
Definition: DtVisualizerSet.h:213
The DtStateListener is an abstract class.
Definition: DtStateListener.h:21
Definition: DtVisualizerSchema.h:22
bool myDistribute
Definition: DtVisualizerSet.h:218
DtSceneObjectVisualizer * mySceneObjectVisualizer
Definition: DtVisualizerSet.h:220
int myModelSet
Definition: DtVisualizerSet.h:224