VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtAggregateElement.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 
17 
19 #include <vrvCore/DtUniqueID.h>
20 
21 #include <boost/unordered_map.hpp>
22 
23 namespace makVrv
24 {
25  class DtSceneObjectAgent;
26  class DtAggregateKinematicState;
27  class DtBaseConnection;
28 
33  {
34  public:
37 
39  virtual ~DtAggregateElement();
40 
42  DtAggregateElement() = delete;
43 
45  DtAggregateElement( const DtAggregateElement& ) = delete;
46 
48  DtAggregateElement& operator=( const DtAggregateElement& ) = delete;
49 
50  public:
52  virtual void visualize( const DtSharedModelSetSettings::ModelSetVisualizedMap& sets ) override;
53 
55  virtual bool setObjectIsVisible( bool visible, DtShowHideContext::ShowHideContext context );
56  virtual bool objectIsVisible() const;
57 
65  virtual void setModelSetEnabled( DtModelSetId modelSet, bool enabled ) override;
66 
68  virtual DtAggregateStateListener& aggregateStateListener();
69 
71  virtual void slot_subordinatesChanged();
72 
74  virtual const DtElementEntry::ElementType elementType() const override;
75 
77  virtual bool isLeafNode() const override;
78 
79  public:
80 
82  static const DtElementEntry::ElementType theElementType();
83 
85  boost::signalslib::signal<void( DtAggregateElement* )> signal_subordinatesChanged;
86  protected:
88  virtual DtEntityKinematicState* createKinState() override;
89 
91  void damageSet( EntityStateListener::DamageState damage );
92 
93  protected:
95  };
96 
98 }
boost::signalslib::signal< void(DtAggregateElement *)> signal_subordinatesChanged
Definition: DtAggregateElement.h:85
A single Aggregate element. An Aggregate element may be visualized using multiple visualizer sets one...
Definition: DtAggregateElement.h:32
DtEntityKinematicState Controls kinematic state of all scene objects for an element This class has no...
Definition: DtEntityKinematicState.h:60
DamageState
Definition: DtEntityStateListener.h:64
Contains makVrv::DtEntityElement class.
The DtAggregateStateListener extends DtEntityStateListener. It provides a interface to all the visual...
Definition: DtAggregateStateListener.h:33
ShowHideContext
Definition: DtShowHideContext.h:18
Contains makVrv:DtAggregateVisualizerSet class. This class will contain and manage state visualizers...
Definition: DtElement.h:277
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
ElementType
Definition: DtElementEntry.h:26
A single entity element. An entity element may be visualized using multiple visualizer sets one per m...
Definition: DtEntityElement.h:31
Base class to provide boost signal/slot management.
DtAggregateStateListener & myAggregateListener
Definition: DtAggregateElement.h:94
std::map< DtModelSetId, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:28
Contains makVrv::DtUniqueID type.
DtModelSetId
Definition: DtModelSetEnums.h:19
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
Contains DLL export macros.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)