24 #include <boost/unordered_map.hpp>
28 class DtAgentManagerInterface;
29 class DtSharedSettingsManager;
30 class DtElementDefinition;
31 class DtStateListener;
32 class DtSceneObjectAgent;
33 class DtVisualizerSet;
36 namespace EntityStateListener
71 virtual void setVisible(
bool visible );
74 virtual bool visible()
const;
93 virtual void updateElementDefinitionFromDefinitions();
97 virtual void updateElementDefinitionFromDefinitions( std::vector<DtUnicode>& definitions );
102 virtual const DtUnicode& elementDefinition()
const;
103 virtual void setElementDefinition(
const DtUnicode& definition);
106 virtual std::string displayUnitCollectionName()
const;
109 virtual void setDisplayUnitCollectionName(
const std::string& definition);
116 virtual void setDriverType(
const std::string& driverType);
130 virtual ModelSetToSceneObjectIdMap& modelSetToSceneObjectIdMap();
137 virtual void removeSceneObjectIdForModelSet(
DtModelSetId modelSet ) ;
147 virtual void reportElementCreated();
151 virtual void reportDisplayName();
154 virtual void reportConnectionObjectID();
157 virtual void reportConnectionObjectType();
160 virtual void reportOverlayNameChanged();
163 virtual void reportVisibility();
166 virtual void reportDamageStateChanged();
169 virtual void reportDriverType();
173 virtual void reportElementSubtype();
176 virtual void reportElementDefinitionName();
179 virtual void reportDisplayUnitCollectionName();
183 void slot_updateOverlayNameRaw(
const char* text);
186 void slot_updateConnectionObjectID(
const std::string&
id );
190 void slot_updateConnectionObjectType(
const std::string& type );
193 void slot_updateDisplayName(
const std::string& text);
196 void slot_updateOverlayName(
const std::string& pname);
204 virtual void getDefinitions( std::vector<DtUnicode>& definitions );
206 virtual void setModelSetEnabled(
DtModelSetId modelSet,
bool enabled ) = 0;
210 virtual bool distribute()
const;
211 virtual void setDistribute(
const bool distribute );
217 virtual void warnVisualizationFailed(
const std::string& file,
int line,
const std::string&
function,
273 virtual const std::string& tag() = 0;
276 template<
typename ElementTemplateType>
300 return new ElementTemplateType( simulation, listener );
305 return ElementTemplateType::theElementType();
308 virtual const std::string&
tag()
311 const static std::string str(
"DIS" );
312 #elif DtHLA_1516_EVOLVED
313 const static std::string str(
"HLA1516e" );
315 const static std::string str(
"HLA1516" );
317 const static std::string str(
"HLA13" );
319 const static std::string str(
"" );
DtBaseConnection & myBaseConnection
Definition: DtElement.h:226
DtUnicode myElementDefinitionName
Definition: DtElement.h:228
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
std::string myDisplayUnitCollectionName
Definition: DtElement.h:230
DamageState
Definition: DtEntityStateListener.h:64
std::unordered_map< DtModelSetId, ModelSetVisualizerCreationMap > VisualTypeVisualizerCreationMap
Map that indicates whether a visualizer should be created, by visual type, for all given model sets...
Definition: DtVisualizerCreationSettings.h:43
EntityStateListener::DamageState myDamageState
Definition: DtElement.h:237
std::string myElementOverlayName
Definition: DtElement.h:234
bool myElementReported
Definition: DtElement.h:239
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
Definition: DtElement.h:277
The DtElement class implements the common behavior of simulation based elements added to the scene...
Definition: DtElement.h:44
ElementSubtypes
Definition: DtElementAttributes.h:57
virtual DtElementCreatorTemplate * clone() const
Every derived class must override this method.
Definition: DtElement.h:292
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
std::string myConnectionObjectType
Definition: DtElement.h:232
ModelSetToSceneObjectIdMap myModelSetToSceneObjectIdMap
Definition: DtElement.h:241
Contains makVrv::DtSharedModelSetSettings class.
bool myElementVisible
Definition: DtElement.h:238
DtElementID myElementId
Definition: DtElement.h:227
Abstract DtElementCreator creator.
Definition: DtElement.h:246
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
virtual ~DtElementCreator()
DTOR.
Definition: DtElement.h:257
The element definition class contains the element definition information. The makVrv::DtElementDefini...
Definition: DtElementDefinition.h:26
DtElementCreatorTemplate()
Definition: DtElement.h:281
virtual const std::string & tag()
Returns the creator's tag.
Definition: DtElement.h:308
boost::unordered_map< DtModelSetId, DtUniqueID > ModelSetToSceneObjectIdMap
Definition: DtElement.h:48
ElementType
Definition: DtElementEntry.h:26
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:31
Contains makVrv:DtBaseConnection class.
const DtElementDefinition * myElementDefinition
Definition: DtElement.h:229
std::map< DtModelSetId, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:28
Contains makVrv::DtElementAttributes class.
DtElementAttributes::ElementSubtypes myElementSubtype
Definition: DtElement.h:236
bool myDistribute
Definition: DtElement.h:240
DtSharedSettingsManager & mySettingsManager
Definition: DtElement.h:224
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
DtElementID elementID() const
Get the element ID of the element. Usually the element ID is the unique id of the listener...
Definition: DtElement.h:82
std::string myDisplayName
Definition: DtElement.h:233
DtModelSetId
Definition: DtModelSetEnums.h:19
const DtVisualizerCreationSettings::VisualTypeVisualizerCreationMap & myVisualTypeVisualizerCreationMap
Definition: DtElement.h:225
std::string myConnectionObjectID
Definition: DtElement.h:231
DtElementAttribute is a common base class used for all element attributes, such as those found in a D...
Definition: DtElementAttribute.h:20
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
DtElementCreator()
CTOR.
Definition: DtElement.h:251
DtAgentManagerInterface & mySceneInterface
Map that indicates whether a visualizer should be created, by visual type, for all given model sets...
Definition: DtElement.h:223
Contains makVrv::DtElementEntry class.
Contains makVrv::DtVisualizerCreationSettingsManager class.
virtual const DtElementEntry::ElementType elementType() const
Returns the creator's type.
Definition: DtElement.h:303
std::string myDriverType
Definition: DtElement.h:235
virtual ~DtElementCreatorTemplate()
DTOR.
Definition: DtElement.h:287
virtual DtElement * createElement(DtBaseConnection &simulation, DtStateListener &listener) const
Create function.
Definition: DtElement.h:297
Contains DLL export macros.