VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtTacticalGraphicElement Class Reference

A single tactical graphic element. A tactical graphic element may be visualized using multiple visualizer sets one per model set.

Inheritance diagram for makVrv::DtTacticalGraphicElement:
Inheritance graph
[legend]

Classes

struct  DtTacticalGraphicModelSetData
 

Public Types

using ModelSetDataArray = std::array< DtTacticalGraphicModelSetData, MAX_MODEL_SETS >
 
- Public Types inherited from makVrv::DtElement
using ModelSetToSceneObjectIdMap = boost::unordered_map< DtModelSetId, DtUniqueID >
 

Public Member Functions

 DtTacticalGraphicElement (DtBaseConnection &conn, DtStateListener &listener)
 
virtual ~DtTacticalGraphicElement ()
 
 DtTacticalGraphicElement ()=delete
 
 DtTacticalGraphicElement (const DtTacticalGraphicElement &)=delete
 
DtTacticalGraphicElementoperator= (const DtTacticalGraphicElement &)=delete
 
virtual void visualize (const DtSharedModelSetSettings::ModelSetVisualizedMap &sets) override
 
virtual void setModelSetEnabled (DtModelSetId modelSet, bool enabled) override
 
virtual void createVisualizersByModelSetAndType (DtModelSetId modelSet, int visualType)
 
virtual void destroyVisualizersByModelSetAndType (DtModelSetId modelSet, int visualType)
 
template<typename VisualizerClass >
void findVisualizers (std::vector< VisualizerClass * > &visualizers)
 
template<typename VisualizerClass >
void findVisualizersByDynamicCast (std::vector< VisualizerClass * > &visualizers)
 
virtual void setObjectIsVisible (bool vis)
 
virtual const ModelSetDataArraymodelSetDataArray () const
 
virtual
DtEnvironmentalKinematicState
findKinematicState () const
 
virtual
DtTacticalGraphicStateListener
tacticalGraphicStateListener ()
 
virtual const
DtElementEntry::ElementType 
elementType () const override
 
virtual void slot_forceChanged (DtForceType force)
 
virtual
DtEnvironmentalKinematicState
createKinState ()
 
virtual const
DtTacticalGraphicModelSetData
findModelSetData (DtModelSetId modelSet) const
 
virtual
DtTacticalGraphicModelSetData
findModelSetData (DtModelSetId modelSet)
 
virtual DtSceneObjectAgent * findSceneObjectForModelSet (DtModelSetId modelSet) const
 
virtual
DtTacticalGraphicVisualizerSet
findVisualizerSetForModelSet (DtModelSetId modelSet) const
 
virtual void setPickable (bool pickable)
 
virtual void setPickable (bool pickable, DtModelSetId modelSet)
 
virtual std::vector< DtUniqueIDsceneObjectUniqueIds ()
 
virtual DtUniqueID sceneObjectIdForModelSet (DtModelSetId modelSet)
 
- Public Member Functions inherited from makVrv::DtElement
 DtElement (DtBaseConnection &conn, DtElementID elementId)
 
virtual ~DtElement ()
 
 DtElement ()=delete
 
 DtElement (const DtElement &)=delete
 
DtElementoperator= (const DtElement &)=delete
 
virtual void setVisible (bool visible)
 
virtual bool visible () const
 
virtual void setElementId (const DtElementID)
 
DtElementID elementID () const
 
virtual const DtUnicodeelementDefinition () const
 
virtual void setElementDefinition (const DtUnicode &definition)
 
virtual std::string displayUnitCollectionName () const
 
virtual void setDisplayUnitCollectionName (const std::string &definition)
 
virtual void setDriverType (const std::string &driverType)
 
virtual void setElementSubtype (DtElementAttributes::ElementSubtypes subtype)
 
virtual void changeElementAttribute (const DtElementAttribute *attr)
 
virtual void updateElementDefinitionFromDefinitions ()
 
virtual void updateElementDefinitionFromDefinitions (std::vector< DtUnicode > &definitions)
 
virtual
ModelSetToSceneObjectIdMap
modelSetToSceneObjectIdMap ()
 
virtual void setSceneObjectIdForModelSet (DtModelSetId modelSet, DtUniqueID id)
 
virtual void removeSceneObjectIdForModelSet (DtModelSetId modelSet)
 
virtual DtUniqueID sceneObjectIdForModelSet (DtModelSetId modelSet) const
 

Static Public Member Functions

static const
DtElementEntry::ElementType 
theElementType ()
 

Protected Member Functions

virtual void processElementParameters ()
 
void setKindAndCategory (int kind, int category)
 
virtual void reportKindAndCategory ()
 
virtual void slot_visibilityChanged (bool vis)
 
- Protected Member Functions inherited from makVrv::DtElement
void slot_updateOverlayNameRaw (const char *text)
 
void slot_updateConnectionObjectID (const std::string &id)
 
void slot_updateConnectionObjectType (const std::string &type)
 
void slot_updateDisplayName (const std::string &text)
 
void slot_updateOverlayName (const std::string &pname)
 
void slot_updateDamageState (EntityStateListener::DamageState state)
 
virtual void getDefinitions (std::vector< DtUnicode > &definitions)
 
virtual void warnVisualizationFailed (const std::string &file, int line, const std::string &function, DtVisualizerSet *visSet, DtSceneObjectAgent *sceneObject, DtModelSetId modelSet, DtException ex)
 
virtual void reportElementCreated ()
 
virtual void reportDisplayName ()
 
virtual void reportConnectionObjectID ()
 
virtual void reportConnectionObjectType ()
 
virtual void reportOverlayNameChanged ()
 
virtual void reportVisibility ()
 
virtual void reportDamageStateChanged ()
 
virtual void reportDriverType ()
 
virtual void reportElementSubtype ()
 
virtual void reportElementDefinitionName ()
 
virtual void reportDisplayUnitCollectionName ()
 
virtual bool distribute () const
 
virtual void setDistribute (const bool distribute)
 

Protected Attributes

DtTacticalGraphicStateListenermyListener
 
DtEnvironmentalKinematicStatemyKinematicState
 
ModelSetDataArray myModelSetDataArray
 
DtSignalConnectionManager myConnections
 
std::pair< int, intmyKindCategory
 
- Protected Attributes inherited from makVrv::DtElement
DtAgentManagerInterfacemySceneInterface
 
DtSharedSettingsManagermySettingsManager
 
const
DtVisualizerCreationSettings::VisualTypeVisualizerCreationMap
myVisualTypeVisualizerCreationMap
 
DtBaseConnectionmyBaseConnection
 
DtElementID myElementId
 
DtUnicode myElementDefinitionName
 
const DtElementDefinitionmyElementDefinition
 
std::string myDisplayUnitCollectionName
 
std::string myConnectionObjectID
 
std::string myConnectionObjectType
 
std::string myDisplayName
 
std::string myElementOverlayName
 
std::string myDriverType
 
DtElementAttributes::ElementSubtypes myElementSubtype
 
EntityStateListener::DamageState myDamageState
 
bool myElementVisible
 
bool myElementReported
 
bool myDistribute
 
ModelSetToSceneObjectIdMap myModelSetToSceneObjectIdMap
 

Member Typedef Documentation

MAX_MODEL_SETS is defined in DtModelSetEnums.h.

Constructor & Destructor Documentation

makVrv::DtTacticalGraphicElement::DtTacticalGraphicElement ( DtBaseConnection conn,
DtStateListener listener 
)

CTOR.

virtual makVrv::DtTacticalGraphicElement::~DtTacticalGraphicElement ( )
virtual

DTOR.

makVrv::DtTacticalGraphicElement::DtTacticalGraphicElement ( )
delete

not allowed - default constructor

makVrv::DtTacticalGraphicElement::DtTacticalGraphicElement ( const DtTacticalGraphicElement )
delete

not allowed - copy constructor

Member Function Documentation

DtTacticalGraphicElement& makVrv::DtTacticalGraphicElement::operator= ( const DtTacticalGraphicElement )
delete

not allowed - equals operator

virtual void makVrv::DtTacticalGraphicElement::visualize ( const DtSharedModelSetSettings::ModelSetVisualizedMap sets)
overridevirtual

Visualize the element. Find the element definition and creates the element wide kinematic state - DtEntityKinematicState. Processes the element wide parameters in preparation for calling DtElement::visualize. Element wide parameters are currently those specified for the 3D Model Set. DtSharedModelSetSettings::ModelSetVisualizedMap contains the model sets that are to be visualized. Each entry in the map is passed to setModelSetEnabled to either be created or destroyed if it has already been created.

Reimplemented from makVrv::DtElement.

Reimplemented in makVrv::DtVertexTacticalGraphicElement, and makVrv::DtShapeTacticalGraphicElement.

virtual void makVrv::DtTacticalGraphicElement::setModelSetEnabled ( DtModelSetId  modelSet,
bool  enabled 
)
overridevirtual

Sets the particular model set up. Does nothing if it already exists. This method does a large portion of entity creation. It creates the sceneObject agent and the visualizer set for a model set. It sets information from the visualizer definition on the kin state, and then calls updateVisibilityState If the model set is disabled it will delete the pointers and the stuct in myModelSetToEntityObjectMap.

Implements makVrv::DtElement.

virtual void makVrv::DtTacticalGraphicElement::createVisualizersByModelSetAndType ( DtModelSetId  modelSet,
int  visualType 
)
virtual
virtual void makVrv::DtTacticalGraphicElement::destroyVisualizersByModelSetAndType ( DtModelSetId  modelSet,
int  visualType 
)
virtual
template<typename VisualizerClass >
void makVrv::DtTacticalGraphicElement::findVisualizers ( std::vector< VisualizerClass * > &  visualizers)
inline

Find all visualizers Note this is for all model sets.

References myModelSetDataArray.

template<typename VisualizerClass >
void makVrv::DtTacticalGraphicElement::findVisualizersByDynamicCast ( std::vector< VisualizerClass * > &  visualizers)
inline

Find all visualizers in all model sets if they satisfy the dynamic_cast to the VizualizerClass.

References myModelSetDataArray.

virtual void makVrv::DtTacticalGraphicElement::setObjectIsVisible ( bool  vis)
virtual

Set the element to be visible.

virtual const ModelSetDataArray& makVrv::DtTacticalGraphicElement::modelSetDataArray ( ) const
virtual

Get the current model set array.

virtual const DtTacticalGraphicModelSetData* makVrv::DtTacticalGraphicElement::findModelSetData ( DtModelSetId  modelSet) const
virtual

Model set object accessors.

virtual DtTacticalGraphicModelSetData* makVrv::DtTacticalGraphicElement::findModelSetData ( DtModelSetId  modelSet)
virtual

Model set object accessors.

virtual DtSceneObjectAgent* makVrv::DtTacticalGraphicElement::findSceneObjectForModelSet ( DtModelSetId  modelSet) const
virtual

Model set object accessors.

virtual DtTacticalGraphicVisualizerSet* makVrv::DtTacticalGraphicElement::findVisualizerSetForModelSet ( DtModelSetId  modelSet) const
virtual

Model set object accessors.

virtual DtEnvironmentalKinematicState* makVrv::DtTacticalGraphicElement::findKinematicState ( ) const
virtual

Attempt to find this element's kinematic state, can return nullptr.

virtual DtTacticalGraphicStateListener& makVrv::DtTacticalGraphicElement::tacticalGraphicStateListener ( )
virtual

Get the listener for the entity this visualizer is visualizing.

virtual const DtElementEntry::ElementType makVrv::DtTacticalGraphicElement::elementType ( ) const
overridevirtual

Returns the element type, in this case tactical graphic.

Implements makVrv::DtElement.

Reimplemented in makVrv::DtVertexTacticalGraphicElement, makVrv::DtShapeTacticalGraphicElement, and makVrv::DtPointTacticalGraphicElement.

static const DtElementEntry::ElementType makVrv::DtTacticalGraphicElement::theElementType ( )
static
virtual void makVrv::DtTacticalGraphicElement::slot_forceChanged ( DtForceType  force)
virtual

Used to set the elements subtype, which is used to determine force type in the object list panel.

virtual DtEnvironmentalKinematicState* makVrv::DtTacticalGraphicElement::createKinState ( )
virtual

Create a DtEnvironmentalKinematicState object Shape and Vertex elements override this method to create derived types.

Reimplemented in makVrv::DtShapeTacticalGraphicElement, makVrv::DtVertexTacticalGraphicElement, and makVrv::DtPointTacticalGraphicElement.

virtual void makVrv::DtTacticalGraphicElement::setPickable ( bool  pickable)
virtual

PickableSet pickable for all model sets.

virtual void makVrv::DtTacticalGraphicElement::setPickable ( bool  pickable,
DtModelSetId  modelSet 
)
virtual

Set pickable for a specific model set.

virtual std::vector<DtUniqueID> makVrv::DtTacticalGraphicElement::sceneObjectUniqueIds ( )
virtual

Scene Object Unique IDs.

Get the IDs for all the scene objects in this element There is one scene object per model set

virtual DtUniqueID makVrv::DtTacticalGraphicElement::sceneObjectIdForModelSet ( DtModelSetId  modelSet)
virtual

Get the ID of a scene object for a specific model set.

virtual void makVrv::DtTacticalGraphicElement::processElementParameters ( )
protectedvirtual

Process any element parameters for this entity.

void makVrv::DtTacticalGraphicElement::setKindAndCategory ( int  kind,
int  category 
)
protected

Set the kind and category for later identification of this tactical Not virtual called from constructor.

virtual void makVrv::DtTacticalGraphicElement::reportKindAndCategory ( )
protectedvirtual

Report that element kind/category was updated.

virtual void makVrv::DtTacticalGraphicElement::slot_visibilityChanged ( bool  vis)
protectedvirtual

Called when the listener indicates the element has become visible or not.

Member Data Documentation

DtTacticalGraphicStateListener& makVrv::DtTacticalGraphicElement::myListener
protected
DtEnvironmentalKinematicState* makVrv::DtTacticalGraphicElement::myKinematicState
protected
ModelSetDataArray makVrv::DtTacticalGraphicElement::myModelSetDataArray
protected
DtSignalConnectionManager makVrv::DtTacticalGraphicElement::myConnections
protected
std::pair<int, int> makVrv::DtTacticalGraphicElement::myKindCategory
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)