VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVrlinkElement.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvVrl/vrvVrl.h>
15 #include <vrvCore/DtElementEntry.h>
16 #include <vrvUtil/DtUnicode.h>
17 
18 #include <vector>
19 
20 class DtEntityType;
21 class DtEntityIdentifier;
22 
23 namespace makVrv
24 {
25  class DtBaseConnection;
26 
31  {
32  public:
33 
36 
37  virtual ~DtVrlinkElement();
38 
40  virtual void visualize(const DtSharedModelSetSettings::ModelSetVisualizedMap& sets);
41 
43  virtual void setVisible( bool visible );
44 
46  bool visible() const;
47 
50  inline DtElementID elementID() const
51  {
52  return myElementId;
53  }
54 
57  const DtUnicode& definition() const;
58 
60  virtual DtElementEntry::ObjectType elementType() const = 0;
61 
66  virtual void changeElementAttribute( const DtElementAttribute* attr );
67 
68  protected:
69 
71  void reportElementCreated();
73  void reportDisplayName();
75  void reportConnectionObjectType();
77  void reportConnectionObjectID();
79  void reportOverlayNameChanged();
81  void reportVisibility();
83  void reportDamageStateChanged();
85  void reportDriverType();
88  void reportElementSubtype();
90  void reportElementDefinitionName();
91 
92  void updateEntityType( const DtEntityType& type );
93 
94  virtual void setElementSubtype(DtElementAttributes::ElementSubtypes subtype);
95 
96 
98  void slot_updateDisplayNameRaw(const char* text);
99 
101  void slot_updateOverlayNameRaw(const char* text);
102 
104  void slot_updateConnectionObjectID( const DtEntityIdentifier& id );
105 
107  void slot_updateDisplayName(const std::string& text);
108 
110  void slot_updateOverlayName(const std::string& pname);
111 
113  void slot_updateDamageState(const unsigned int state);
114 
115  virtual void getDefinitions( std::vector<DtUnicode>& definitions ) = 0;
116  virtual void setModelSetEnabled( int modelSet, bool enabled ) = 0;
117 
118  protected:
122  std::string myConnectionObjectID;
124  std::string myDisplayName;
125  std::string myElementOverlayName;
127  unsigned int myDamageState;
130  };
131 
132 }
133 
#define DT_DLL_VRVVRL
Definition: vrvVrl.h:19
A unicode string.
Definition: DtUnicode.h:33
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
ElementSubtypes
Definition: DtElementAttributes.h:50
unsigned int ObjectType
Definition: DtElementEntry.h:50
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:37
Contains makVrv::DtSharedModelSetSettings class.
Contains makVrv::DtElementAttributes class.
DtElementAttribute is a common base class used for all element attributes, such as those found in a D...
Definition: DtElementAttribute.h:23
Contains DLL export macros.
Contains makVrv::DtElementEntry class.
std::map< int, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:30

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)