VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
organizationManagerNode.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
17 
18 #include <vlutil/vlList.h>
19 #include <vlpi/entityIdentifier.h>
20 #include <list>
21 #include <vector>
22 
25 {
26 public:
28  virtual ~DtOrganizationManagerNode();
29 
30 private:
35 
36 public:
37 
40  virtual const DtList* childList() const;
41  virtual DtList* childList();
43 
47  virtual bool removeChild(const DtOrganizationManagerNode* node);
48  virtual void removeAllChildren();
49  virtual void addChild(DtOrganizationManagerNode* node);
58  virtual void orderChildren(const std::vector<DtUUID>& childOrder);
59 
62  virtual void setParent(DtOrganizationManagerNode* parent);
63  virtual DtOrganizationManagerNode* parent() const;
65 
67  virtual void setVrfObject(DtVrfObject*);
68  const DtSharedVrfObjectReference& vrfObject() { return myVrfObject; };
69 
72  virtual void setUUID(const DtUUID &id);
73  virtual const DtUUID& uuid() const;
75 
78  virtual void setEntityIdentifier(const DtEntityIdentifier &id);
79  virtual const DtEntityIdentifier& entityIdentifier() const;
81 
85  virtual void setIsTopLevel(bool isTopLevel);
86  virtual bool isTopLevel() const;
88 
92  virtual void addChildAddedCallback(
93  DtUUIDCallbackFunction fcn, void* userData);
94  virtual void removeChildAddedCallback(
95  DtUUIDCallbackFunction fcn, void* userData);
97 
101  virtual void addChildRemovedCallback(
102  DtUUIDCallbackFunction fcn, void* userData);
103  virtual void removeChildRemovedCallback(
104  DtUUIDCallbackFunction fcn, void* userData);
106 
114  virtual void addSubordinatesChangedCallback(
115  DtUUIDCallbackFunction fcn, void* userData);
116  virtual void removeSubordinatesChangedCallback(
117  DtUUIDCallbackFunction fcn, void* userData);
119 
120 protected:
121 
123  virtual void invokeSubordinatesChangedCallbacks(
124  const DtUUID&) const;
125 
128  virtual void invokeChildAddedCallbacks(
129  const DtUUID&) const;
130 
133  virtual void invokeChildRemovedCallbacks(
134  const DtUUID&) const;
135 
137  void removeAllSubordinatesChangedCallbacks();
138 
139 protected:
141  DtList myChildList;
144  DtEntityIdentifier myEntityIdentifier;
146 
148  std::list<DtUUIDCallbackInfo> myChildAddedCallbackList;
149  std::list<DtUUIDCallbackInfo> myChildRemovedCallbackList;
150 
152 };

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)