VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtAggregateEchelonManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvVrl/vrvVrl.h>
14 
17 
18 #include <boost/function.hpp>
19 #include <boost/signal.hpp>
20 
21 namespace makVrv
22 {
23  class DtDe;
24 }
25 
26 namespace makVrv
27 {
28  class DtConnection;
29 
32  {
33  public:
34  enum Flags
35  {
36  Destroyed = 0x80000000
37  };
38 
39  public:
41  static DtAggregateEchelonManager& instance(DtConnection& sim);
42 
44  static void registerInstance(DtConnection& sim, DtAggregateEchelonManager*);
45 
46  virtual ~DtAggregateEchelonManager();
47 
48  protected:
50  virtual void hierarchyItemModified(DtElementIDHierarchyNode*);
51 
53  virtual void hierarchyItemAboutToBeRemoved(DtElementIDHierarchyNode*);
54 
55  public:
56 
58  virtual void setDisplayInitiallyExpanded(bool);
59 
61  virtual void setRecord(const makArchives::DtAggregateSettingsRecord&);
62 
66  virtual void setDestroyed(DtElementID id, bool);
67  bool destroyed(DtElementID) const;
68 
71  void removeElementPendingDestroyedState(DtElementID id);
72 
74  const DtElementIDHierarchy& hierarchy() const
75  {
76  return myHierarchy;
77  }
78 
79  DtElementIDHierarchy& hierarchy()
80  {
81  return myHierarchy;
82  }
83 
84  boost::signal<void (DtElementID, bool b) > signal_aggregateDestroyedStateChanged;
85  boost::signal<void (DtElementIDHierarchyNode*) > signal_hierarchyItemModified;
86 
87  protected:
88 
90  virtual DtElementIDHierarchyNode::DisplayState expectedDisplayStateFor(const DtElementIDHierarchyNode* node);
91 
93  virtual void updateDestroyedState(DtElementIDHierarchyNode* parentNode);
94 
96  virtual void updateHierarchy(DtElementID parentId, const DtElementIDHierarchy::ElementIDs& children);
97 
98  protected:
100 
101  protected:
103  std::map<DtElementID, bool> myPendingDestroyedStates;
105  };
106 }

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)