![]() |
VR-Forces 4.10 Class Documentation
|
This contains all the DtVisualizers used to visualize an element in a particular model set. More...

Public Types | |
| typedef std::vector < DtStateVisualizer * > | VisualizerList |
Public Member Functions | |
| DtVisualizerSet (DtBaseConnection &conn, DtStateListener &listener, int modelSet, bool distribute) | |
| CTOR. More... | |
| virtual | ~DtVisualizerSet () |
| Destructor. More... | |
| virtual void | visualizeElementDefinition (const DtUnicode &elementName, const DtElementDefinitionNew &def, const DtVisualizerCreationSettings::VisualTypeVisualizerCreationMap &creationMap) |
| Visualize an element definition. More... | |
| virtual void | visualizeElementDefinition (const DtUnicode &elementName, const DtElementDefinitionNew &def) |
| Visualize an element definition. More... | |
| virtual void | createVisualizersByType (int visualType) |
| Go through the visualizer definitions in the member variable myDefinitions, and create/add any visualizers that have the specified visual type. More... | |
| virtual void | destroyVisualizersByType (int visualType) |
| Go through all realized visualizers and remove any that match the specified visual type. More... | |
| const DtElementDefinitionNew * | definition () const |
| Returns the visualized definition. More... | |
| int | modelSet () const |
| Returns the visualized model set. More... | |
| template<typename VisualizerClass > | |
| void | findVisualizers (std::vector< VisualizerClass * > &visualizers) |
| Find all instances of a Visualizer by schema name. More... | |
| template<typename VisualizerClass > | |
| void | findVisualizersByDynamicCast (std::vector< VisualizerClass * > &visualizers) |
| Find all instance of a visualizer by dynamically casting to the class type rather than doing the faster type info check. More... | |
| virtual void | findVisualizers (const DtVisualizerSchema &, VisualizerList &visualizers) |
| Find all visualizers which use a particular schema. More... | |
| virtual bool | setVisible (bool visible, DtShowHideContext::ShowHideContext context=DtShowHideContext::InstanceHidden) |
| Since there are many things that might want to show/hide an item, keep track of them in a list for each visualizer. More... | |
| virtual bool | isVisible () const |
| Is the instance visible. More... | |
| virtual bool | show (DtShowHideContext::ShowHideContext) |
| Show (or hide) the item with the given context. More... | |
| virtual bool | hide (DtShowHideContext::ShowHideContext) |
| bool | isHiddenByContext (DtShowHideContext::ShowHideContext) const |
| Returns true if hidden by the specified context. More... | |
| virtual DtUniqueID | uniqueID () const |
| Returns unique id of mySceneObjectAgent, else 0. More... | |
| DtSceneObjectVisualizer * | sceneObjectVisualizer () const |
| virtual void | setPickable (bool pickable) |
| Set whether this visualizer is pickable. More... | |
| bool | pickable () const |
| Is this visualizer pickable. More... | |
| virtual void | setSelected (bool) |
| Set if the instance selected. More... | |
| bool | selected () const |
| Is the instance selected. More... | |
| virtual void | setHasMouseCursor (bool) |
| Set if the instance is currently being hovered by the mouse cursor. More... | |
| bool | addVisualizer (const DtVisualizerDefinition &def) |
| Add a visualizer after the visualizerSet has been visualized. More... | |
| virtual void | destroyAllModelVisualizers () |
| Destroys all model agent visualizers associated with visualizer. More... | |
| virtual DtStateVisualizer::Type | supportsVisualizerType () const |
| Get the type that this set supports. More... | |
Public Attributes | |
| boost::signalslib::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. More... | |
| boost::signalslib::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 |
| boost::signalslib::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 |
| boost::signalslib::signal < void(bool, DtVisualizerSet *vis) > | signal_selectionStateChanged |
| boost::signalslib::signal < void(bool, DtVisualizerSet *vis) > | signal_hasMouseCursorStateChanged |
Protected Types | |
| typedef boost::unordered_multimap < std::string, DtStateVisualizer * > | StateVisualizerMap |
| typedef std::vector < DtShowHideContext::ShowHideContext > | ShowHideContexts |
Protected Member Functions | |
| void | destroyAllModelVisualizersInternal () |
| Non-virtual work function for destroying all model visualizers in this set. More... | |
| virtual void | visualizeVisualizerDefinitionSet (const DtUnicode &elementName, const DtVisualizerDefinitionSet &set, const DtVisualizerCreationSettings::VisualTypeVisualizerCreationMap *creationMap=nullptr) |
| Given the DtVisualDefinitionSet, create all visualizers associated. More... | |
| virtual DtStateVisualizer * | createVisualizerFromDefinition (const DtVisualizerDefinition &def) |
| Create a state visualizer from a visual definition. More... | |
| virtual void | addVisualizer (const std::string &schemaName, DtStateVisualizer *visualizer) |
| Adds a new model visualizer into the list of visualizers. More... | |
| virtual bool | suppressVisualizerCreation (const DtVisualizerDefinition *visDef, const DtVisualizerCreationSettings::VisualTypeVisualizerCreationMap *creationMap) const |
| Check to see if the visualizer type and creation map warrant creation. More... | |
| virtual int | findVisualType (const DtVisualizerDefinition &visDef) const |
| lookup the visualtype attribute from a visual definition; returns 0 if none found More... | |
| virtual void | setModelVisualizerVisible (const std::string &schemaName, bool onOff, int context) |
| Call setVisible for all visualizers with the indicated schemaName. More... | |
| virtual void | slot_mouseDown (DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v) |
| Called when the entity's indicator is clicked in some channel. More... | |
| virtual void | slot_mouseUp (DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v) |
| virtual void | slot_mouseDblClick (DtMouseState &mouseState, const DtUniqueID &id, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName, DtStateVisualizer *v) |
| template<typename T , typename C > | |
| 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. More... | |
| const DtUnicode * | chooseRandomString (const std::vector< DtUnicode > &stringList) |
| Return the model definition that might be randomly chosen, if the definitions has more than 1 item. More... | |
This contains all the DtVisualizers used to visualize an element in a particular model set.
| typedef std::vector<DtStateVisualizer*> makVrv::DtVisualizerSet::VisualizerList |
|
protected |
|
protected |
| makVrv::DtVisualizerSet::DtVisualizerSet | ( | DtBaseConnection & | conn, |
| DtStateListener & | listener, | ||
| int | modelSet, | ||
| bool | distribute | ||
| ) |
CTOR.
|
virtual |
Destructor.
|
virtual |
Visualize an element definition.
|
virtual |
Visualize an element definition.
|
virtual |
Go through the visualizer definitions in the member variable myDefinitions, and create/add any visualizers that have the specified visual type.
If the visualizerSet has not been realized yet, myDefinitions will be null, and this method will do nothing
|
virtual |
Go through all realized visualizers and remove any that match the specified visual type.
| const DtElementDefinitionNew* makVrv::DtVisualizerSet::definition | ( | ) | const |
Returns the visualized definition.
| int makVrv::DtVisualizerSet::modelSet | ( | ) | const |
Returns the visualized model set.
|
inline |
Find all instances of a Visualizer by schema name.
References myVisualizers.
Referenced by makVrf::DtEnvironmentalFacadeCollection::setWidgetEventsEnabled().
|
inline |
Find all instance of a visualizer by dynamically casting to the class type rather than doing the faster type info check.
Use this when you want to find all instances of a particular class, not the actual class
References myVisualizers.
Referenced by makVrf::DtEntityFacadeCollection::hasVisualizer(), makVrf::DtEntityFacadeCollection::setColor(), makVrf::DtEntityFacadeCollection::setEntityExtentsVisible(), makVrf::DtEntityFacadeCollection::setForceColor(), makVrf::DtEnvironmentalFacadeCollection::setForceColor(), makVrf::DtEntityFacadeCollection::setForceType(), makVrf::DtEntityFacadeCollection::setIconScale(), and makVrf::DtEntityFacadeCollection::setScale().
|
virtual |
Find all visualizers which use a particular schema.
|
virtual |
Since there are many things that might want to show/hide an item, keep track of them in a list for each visualizer.
Pass the context with which to show or hide into this routine. It will then be passed to each item, which will determine whether or not to show or hide itself based on the context. Will call setModelVisualizerVisible for all models. Returns true if any items visibility has changed
Reimplemented in makVrv::DtEnvironmentalVisualizerSet.
|
virtual |
Is the instance visible.
|
virtual |
Show (or hide) the item with the given context.
Called from setVisible
|
virtual |
| bool makVrv::DtVisualizerSet::isHiddenByContext | ( | DtShowHideContext::ShowHideContext | ) | const |
Returns true if hidden by the specified context.
|
virtual |
Returns unique id of mySceneObjectAgent, else 0.
Referenced by makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkBoxVisualizer< T >::setHostGlobalId(), makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkArcVisualizer< T >::setHostGlobalId(), makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkWedgeVisualizer< T >::setHostGlobalId(), makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEllipseVisualizer< DtVrf2DEllipseVisualizer >::setHostGlobalId(), and makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkSpiderWebVisualizer< T >::setHostGlobalId().
| DtSceneObjectVisualizer* makVrv::DtVisualizerSet::sceneObjectVisualizer | ( | ) | const |
|
virtual |
Set whether this visualizer is pickable.
| bool makVrv::DtVisualizerSet::pickable | ( | ) | const |
Is this visualizer pickable.
|
virtual |
Set if the instance selected.
Reimplemented in makVrv::DT_PROTOCOL_NAMESPACE::DtTacticalGraphicPointVisualizerSet, and makVrv::DT_PROTOCOL_NAMESPACE::DtTacticalGraphicVertexVisualizerSet.
| bool makVrv::DtVisualizerSet::selected | ( | ) | const |
Is the instance selected.
|
virtual |
Set if the instance is currently being hovered by the mouse cursor.
This method is invoked by the DtEntityElementProcessor whenever the DtSharedSimulationSettingsSignaler::signal_elementHasMouseCursorStateChanged signal is emitted.
| bool makVrv::DtVisualizerSet::addVisualizer | ( | const DtVisualizerDefinition & | def | ) |
Add a visualizer after the visualizerSet has been visualized.
|
virtual |
Destroys all model agent visualizers associated with visualizer.
|
virtual |
Get the type that this set supports.
Reimplemented in makVrv::DtEnvironmentalVisualizerSet, makVrv::DtIntervisibilityVisualizerSet, makVrv::DtAggregateVisualizerSet, and makVrv::DtEntityVisualizerSet.
|
protected |
Non-virtual work function for destroying all model visualizers in this set.
|
protectedvirtual |
Given the DtVisualDefinitionSet, create all visualizers associated.
If there is a problem, will throw an exception
|
protectedvirtual |
Create a state visualizer from a visual definition.
|
protectedvirtual |
Adds a new model visualizer into the list of visualizers.
For consistency, the "default" name is always the one used when the visualizer is added regardless of visual driver selected
Reimplemented in makVrv::DT_PROTOCOL_NAMESPACE::DtTacticalGraphicShapeVisualizerSet.
|
protectedvirtual |
Check to see if the visualizer type and creation map warrant creation.
Reimplemented in makVrv::DT_PROTOCOL_NAMESPACE::DtWeaponFireVisualizerSet.
|
protectedvirtual |
lookup the visualtype attribute from a visual definition; returns 0 if none found
Reimplemented in makVrf::DtVrfSpotReportVisualizerSet.
|
protectedvirtual |
Call setVisible for all visualizers with the indicated schemaName.
|
protectedvirtual |
Called when the entity's indicator is clicked in some channel.
|
protectedvirtual |
|
protectedvirtual |
|
inlineprotected |
Utility function for connect a signal to an update function as well as calling the update function.
References makVrv::bind().
|
protected |
Return the model definition that might be randomly chosen, if the definitions has more than 1 item.
| boost::signalslib::signal<void (DtMouseState& mouseState, const DtUniqueID& id, const std::string& displayEngineName, const std::string& windowName, const std::string& channelName, DtStateVisualizer* v, DtVisualizerSet* i)> makVrv::DtVisualizerSet::signal_mouseDown |
Emitted when the mouse is clicked on any visualizer in this collection.
| boost::signalslib::signal<void (DtMouseState& mouseState, const DtUniqueID& id, const std::string& displayEngineName, const std::string& windowName, const std::string& channelName, DtStateVisualizer* v, DtVisualizerSet* i)> makVrv::DtVisualizerSet::signal_mouseUp |
| boost::signalslib::signal<void (DtMouseState& mouseState, const DtUniqueID& id, const std::string& displayEngineName, const std::string& windowName, const std::string& channelName, DtStateVisualizer* v, DtVisualizerSet* i)> makVrv::DtVisualizerSet::signal_mouseDblClick |
| boost::signalslib::signal< void (bool, DtVisualizerSet* vis) > makVrv::DtVisualizerSet::signal_selectionStateChanged |
| boost::signalslib::signal< void (bool, DtVisualizerSet* vis) > makVrv::DtVisualizerSet::signal_hasMouseCursorStateChanged |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by findVisualizers(), and findVisualizersByDynamicCast().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |