VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrfobjcore
aggregateNode.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2015 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
11
#pragma once
12
13
#include "
vrfobjcore/vrfobjcoreDefines.h
"
14
#include "
vrfutil/rwUUID.h
"
15
#include <vlpi/entityIdentifier.h>
16
#include <vlutil/vlSmartPointers.h>
17
#include <list>
18
#include "
vrfobjcore/orgViewManagedObjectList.h
"
19
#include "
vrfobjcore/vrfObjectReference.h
"
20
21
class
DtAggregateNode
;
22
class
DtAggregateData
;
23
class
DtOrganizationManager
;
24
25
typedef
DtBoost::shared_ptr<DtAggregateNode>
DtAggregateNodePtr
;
26
typedef
DtBoost::shared_ptr<const DtAggregateNode>
DtAggregateNodeConstPtr
;
27
typedef
std::list<DtAggregateNodePtr>
DtAggregateNodeList
;
28
typedef
DtBoost::shared_ptr<DtAggregateData>
DtAggregateDataPtr
;
29
typedef
DtBoost::shared_ptr<const DtAggregateData>
DtAggregateDataConstPtr
;
30
34
class
DT_DLL_vrfobjcore
DtAggregateNode
35
{
36
public
:
37
39
typedef
DtAggregateData
* (*DtAggregateDataCreator)();
40
41
public
:
42
44
DtAggregateNode
(
const
DtUUID
& uuid,
45
DtOrganizationManager
& organizationManager);
46
48
virtual
~
DtAggregateNode
();
49
51
virtual
void
addChild(
DtAggregateNodePtr
child);
52
54
const
DtAggregateNodeList
& childList()
const
;
55
57
virtual
const
DtSharedVrfObjectReference
& entity()
const
;
58
61
virtual
DtAggregateDataPtr
data();
62
virtual
DtAggregateDataConstPtr
data()
const
;
64
66
virtual
void
print
()
const
;
67
68
public
:
69
74
static
void
setAggregateDataCreator(DtAggregateDataCreator creator);
75
static
DtAggregateDataCreator aggregateDataCreator(
void
);
77
80
virtual
DtOrgViewManagedObjectListConstPtr
taskableSubordinates()
const
;
81
virtual
DtOrgViewManagedObjectListConstPtr
ableToMoveSubordinates()
const
;
82
virtual
DtOrgViewManagedObjectListConstPtr
allSubordinates()
const
;
84
85
private
:
86
88
DtAggregateNode
(
const
DtAggregateNode
& orig);
89
91
DtAggregateNode
& operator=(
const
DtAggregateNode
& orig);
92
93
protected
:
94
96
DtSharedVrfObjectReference
myEntity
;
97
99
DtAggregateDataPtr
myData
;
100
103
DtAggregateNodeList
myChildNodes
;
104
105
protected
:
106
109
static
DtAggregateDataCreator
theAggregateDataCreator
;
110
111
DtOrganizationManager
&
myOrganizationManager
;
112
DtOrgViewManagedObjectListConstPtr
myTaskableSubordinates
;
113
DtOrgViewManagedObjectListConstPtr
myAbleToMoveSubordinates
;
114
DtOrgViewManagedObjectListConstPtr
myAllSubordinates
;
115
};
Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)