VR-Forces 5.0.2 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( int 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  static const DtElementEntry::ElementType theElementType();
78 
80  boost::signalslib::signal<void( DtAggregateElement* )> signal_subordinatesChanged;
81  protected:
83  virtual DtAggregateKinematicState* createAggregateKinState( DtSceneObjectAgent& sceneObject, int modelSet );
84 
86  void damageSet( EntityStateListener::DamageState damage );
87 
88  protected:
90 
92  };
93 
95 }
boost::signalslib::signal< void(DtAggregateElement *)> signal_subordinatesChanged
Definition: DtAggregateElement.h:80
A single Aggregate element. An Aggregate element may be visualized using multiple visualizer sets one...
Definition: DtAggregateElement.h:32
DamageState
Definition: DtEntityStateListener.h:59
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:268
DtSignalConnectionManager myConnections
Definition: DtAggregateElement.h:91
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
DtAggregateKinematicState Controls kinematic state of a scene object This class has no accessors to k...
Definition: DtAggregateKinematicState.h:25
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
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:32
Base class to provide boost signal/slot management.
DtAggregateStateListener & myAggregateListener
Definition: DtAggregateElement.h:89
Contains makVrv::DtUniqueID type.
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
std::map< int, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:27
Contains DLL export macros.

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)