-
Notifications
You must be signed in to change notification settings - Fork 0
/
ContainerRoot.h
153 lines (147 loc) · 7.68 KB
/
ContainerRoot.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
#ifndef H_ContainerRoot
#define H_ContainerRoot
#include "hashmap.h"
#include "KMF4C.h"
typedef struct _Group Group;
typedef struct _Visitor Visitor;
typedef struct _ContainerRoot ContainerRoot;
typedef struct _ContainerNode ContainerNode;
typedef struct _TypeDefinition TypeDefinition;
typedef struct _DeployUnit DeployUnit;
typedef struct _Group Group;
typedef struct _Channel Channel;
typedef struct _TypeLibrary TypeLibrary;
typedef struct _TypedElement TypedElement;
typedef struct _NodeNetwork NodeNetwork;
typedef struct _MBinding MBinding;
typedef struct _Repository Repository;
typedef char* (*fptrContRootMetaClassName)(ContainerRoot*);
typedef char* (*fptrContRootInternalGetKey)(ContainerRoot*);
typedef ContainerNode* (*fptrContRootFindNodesByID)(ContainerRoot*, char*);
typedef TypeDefinition* (*fptrContRootFindTypeDefsByID)(ContainerRoot*, char*);
typedef Repository* (*fptrContRootFindRepositoriesByID)(ContainerRoot*, char*);
typedef TypedElement* (*fptrContRootFindDataTypesByID)(ContainerRoot*, char*);
typedef TypeLibrary* (*fptrContRootFindLibrariesByID)(ContainerRoot*, char*);
typedef Channel* (*fptrContRootFindHubsByID)(ContainerRoot*, char*);
typedef MBinding* (*fptrContRootFindBndingsByID)(ContainerRoot*, char*);
typedef DeployUnit* (*fptrContRootFindDeployUnitsByID)(ContainerRoot*, char*);
typedef NodeNetwork* (*fptrContRootFindNodeNetworksByID)(ContainerRoot*, char*);
typedef Group* (*fptrContRootFindGroupsByID)(ContainerRoot*, char*);
typedef void (*fptrContRootAddNodes)(ContainerRoot*, ContainerNode*);
typedef void (*fptrContRootAddTypeDefinitions)(ContainerRoot*, TypeDefinition*);
typedef void (*fptrContRootAddRepositories)(ContainerRoot*, Repository*);
typedef void (*fptrContRootAddDataTypes)(ContainerRoot*, TypedElement*);
typedef void (*fptrContRootAddLibraries)(ContainerRoot*, TypeLibrary*);
typedef void (*fptrContRootAddHubs)(ContainerRoot*, Channel*);
typedef void (*fptrContRootAddBindings)(ContainerRoot*, MBinding*);
typedef void (*fptrContRootAddDeployUnits)(ContainerRoot*, DeployUnit*);
typedef void (*fptrContRootAddNodeNetworks)(ContainerRoot*, NodeNetwork*);
typedef void (*fptrContRootAddGroups)(ContainerRoot*, Group*);
typedef void (*fptrContRootRemoveNodes)(ContainerRoot*, ContainerNode*);
typedef void (*fptrContRootRemoveTypeDefinitions)(ContainerRoot*, TypeDefinition*);
typedef void (*fptrContRootRemoveRepositories)(ContainerRoot*, Repository*);
typedef void (*fptrContRootRemoveDataTypes)(ContainerRoot*, TypedElement*);
typedef void (*fptrContRootRemoveLibraries)(ContainerRoot*, TypeLibrary*);
typedef void (*fptrContRootRemoveHubs)(ContainerRoot*, Channel*);
typedef void (*fptrContRootRemoveBindings)(ContainerRoot*, MBinding*);
typedef void (*fptrContRootRemoveDeployUnits)(ContainerRoot*, DeployUnit*);
typedef void (*fptrContRootRemoveNodeNetworks)(ContainerRoot*, NodeNetwork*);
typedef void (*fptrContRootRemoveGroups)(ContainerRoot*, Group*);
typedef void (*fptrDeleteContainerRoot)(ContainerRoot*);
typedef void (*fptrVisitContainerRoot)(void*, Visitor*);
typedef void* (*fptrFindByPathContainerRoot)(char*, ContainerRoot*);
typedef struct _ContainerRoot {
void *pDerivedObj;
char *eContainer;
char *path;
map_t refs;
fptrKMFMetaClassName metaClassName;
fptrKMFInternalGetKey internalGetKey;
fptrVisitAttr VisitAttributes;
fptrVisitAttr VisitPathAttributes;
fptrVisitRefs VisitReferences;
fptrVisitRefs VisitPathReferences;
fptrFindByPath FindByPath;
fptrDelete Delete;
char generated_KMF_ID[9];
map_t nodes;
map_t typeDefinitions;
map_t repositories;
map_t dataTypes;
map_t libraries;
map_t hubs;
map_t mBindings;
map_t deployUnits;
map_t nodeNetworks;
map_t groups;
fptrContRootFindNodesByID FindNodesByID;
fptrContRootFindTypeDefsByID FindTypeDefsByID;
fptrContRootFindRepositoriesByID FindRepositoriesByID;
fptrContRootFindDataTypesByID FindDataTypesByID;
fptrContRootFindLibrariesByID FindLibrariesByID;
fptrContRootFindHubsByID FindHubsByID;
fptrContRootFindBndingsByID FindBindingsByID;
fptrContRootFindDeployUnitsByID FindDeployUnitsByID;
fptrContRootFindNodeNetworksByID FindNodeNetworksByID;
fptrContRootFindGroupsByID FindGroupsByID;
fptrContRootAddNodes AddNodes;
fptrContRootAddTypeDefinitions AddTypeDefinitions;
fptrContRootAddRepositories AddRepositories;
fptrContRootAddDataTypes AddDataTypes;
fptrContRootAddLibraries AddLibraries;
fptrContRootAddHubs AddHubs;
fptrContRootAddBindings AddBindings;
fptrContRootAddDeployUnits AddDeployUnits;
fptrContRootAddNodeNetworks AddNodeNetworks;
fptrContRootAddGroups AddGroups;
fptrContRootRemoveNodes RemoveNodes;
fptrContRootRemoveTypeDefinitions RemoveTypeDefinitions;
fptrContRootRemoveRepositories RemoveRepositories;
fptrContRootRemoveDataTypes RemoveDataTypes;
fptrContRootRemoveLibraries RemoveLibraries;
fptrContRootRemoveHubs RemoveHubs;
fptrContRootRemoveBindings RemoveBindings;
fptrContRootRemoveDeployUnits RemoveDeployUnits;
fptrContRootRemoveNodeNetworks RemoveNodeNetworks;
fptrContRootRemoveGroups RemoveGroups;
fptrVisitContainerRoot Visit;
fptrVisitContainerRoot VisitPaths;
} ContainerRoot;
ContainerRoot* new_ContainerRoot(void);
char* ContainerRoot_metaClassName(void* const this);
char* ContainerRoot_internalGetKey(void* const this);
ContainerNode* ContainerRoot_FindNodesByID(ContainerRoot* const this, char*);
TypeDefinition* ContainerRoot_FindTypeDefsByID(ContainerRoot* const this, char*);
Repository* ContainerRoot_FindRepositoriesByID(ContainerRoot* const this, char*);
TypedElement* ContainerRoot_FindDataTypesByID(ContainerRoot* const this, char*);
TypeLibrary* ContainerRoot_FindLibrariesByID(ContainerRoot* const this, char*);
Channel* ContainerRoot_FindHubsByID(ContainerRoot* const this, char*);
MBinding* ContainerRoot_FindBndingsByID(ContainerRoot* const this, char*);
DeployUnit* ContainerRoot_FindDeployUnitsByID(ContainerRoot* const this, char*);
NodeNetwork* ContainerRoot_FindNodeNetworksByID(ContainerRoot* const this, char*);
Group* ContainerRoot_FindGroupsByID(ContainerRoot* const this, char*);
void ContainerRoot_AddNodes(ContainerRoot* const this, ContainerNode* ptr);
void ContainerRoot_AddTypeDefinitions(ContainerRoot* const this, TypeDefinition* ptr);
void ContainerRoot_AddRepositories(ContainerRoot* const this, Repository* ptr);
void ContainerRoot_AddDataTypes(ContainerRoot* const this, TypedElement* ptr);
void ContainerRoot_AddLibraries(ContainerRoot* const this, TypeLibrary* ptr);
void ContainerRoot_AddHubs(ContainerRoot* const this, Channel* ptr);
void ContainerRoot_AddBindings(ContainerRoot* const this, MBinding* ptr);
void ContainerRoot_AddDeployUnits(ContainerRoot* const this, DeployUnit* ptr);
void ContainerRoot_AddNodeNetworks(ContainerRoot* const this, NodeNetwork* ptr);
void ContainerRoot_AddGroups(ContainerRoot* const this, Group* ptr);
void ContainerRoot_RemoveNodes(ContainerRoot* const this, ContainerNode* ptr);
void ContainerRoot_RemoveTypeDefinitions(ContainerRoot* const this, TypeDefinition* ptr);
void ContainerRoot_RemoveRepositories(ContainerRoot* const this, Repository* ptr);
void ContainerRoot_RemoveDataTypes(ContainerRoot* const this, TypedElement* ptr);
void ContainerRoot_RemoveLibraries(ContainerRoot* const this, TypeLibrary* ptr);
void ContainerRoot_RemoveHubs(ContainerRoot* const this, Channel* ptr);
void ContainerRoot_RemoveBindings(ContainerRoot* const this, MBinding* ptr);
void ContainerRoot_RemoveDeployUnits(ContainerRoot* const this, DeployUnit* ptr);
void ContainerRoot_RemoveNodeNetworks(ContainerRoot* const this, NodeNetwork* ptr);
void ContainerRoot_RemoveGroups(ContainerRoot* const this, Group* ptr);
void delete_ContainerRoot(void* const this);
void ContainerRoot_Visit(void* const this, Visitor* visitor);
void ContainerRoot_VisitPaths(void* const this, Visitor* visitor);
void* ContainerRoot_FindByPath(char* _path, void* const this);
#endif