VR-Vantage 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
extendedAttributesInitializer.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 #include <vlutil/vlString.h>
11 #include <vlutil/vlSmartPointers.h>
12 #include <vlutil/vlTime.h>
13 #include <vl/fom.h>
14 
15 class DtExerciseConn;
16 class DtObjClassDesc;
17 
22 {
23  public:
24 
27 
30 
33  virtual void initialize(DtExerciseConn* exConn);
34 
35 #if DtHLA
36 
37 
38  virtual void setObjectClassChooser(DtObjectClassChooserPtr chooser);
39 
43  virtual void addSupportedClass(const DtString& fullClassName, bool addSubclasses = false);
44 #endif
45 
46 protected:
47 
52 
55  virtual bool needsInitialization(DtExerciseConn* exConn);
56 
57 #if DtHLA
58 
59  virtual const DtString& publisherName() const = 0;
60 
62  virtual const DtString& reflectedListName() const = 0;
63 
65  virtual const DtString& defaultBaseObjectClass() const = 0;
66 
70  virtual void setUnknownAttributeFunctions(DtObjClassDesc* desc) = 0;
71 
74  virtual std::map<DtString, RTI::AttributeHandle> attributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl) const = 0;
75 
78  virtual void setAttributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl,
79  const std::map<DtString, RTI::AttributeHandle>& mapping) = 0;
80 #endif
81 
84  virtual void setPublisherStateRepCreator() = 0;
85 
88  virtual void setReflectedObjectStateRepCreator() = 0;
89 
91 
92 #if DtHLA
93 
94 
95 
96 
99  virtual bool areClassNamesEquivalent(const DtString&, const DtString&) const;
100 
103  virtual void addSupportedSubclasses(DtExerciseConn* exConn);
104 
106  virtual void initializeObjectClassChooser(DtExerciseConn* exConn);
107 
110  virtual void initializeObjectClasses(DtExerciseConn* exConn);
111 
114  virtual void initializeAttributes(DtObjClassDesc* desc);
115 
118  virtual void initializeExtendedAttributes(DtExerciseConn* exConn);
120 
121 #else
122 
124  virtual void initializeVariableRecordFactory(DtExerciseConn* exConn);
125 
126 #endif
127 
129 #if DtHLA
131  std::list<DtString> myFullBaseClassNames;
132  std::list<DtString> myFullClassNames;
133 
135 #endif
136 };
137 
138 typedef DtBoost::shared_ptr<DtExtendedAttributesInitializer> DtExtendedAttributesInitializerPtr;
139 
142 {
143 public:
144 
147 
150 
151 protected:
152 
154  virtual bool needsInitialization(DtExerciseConn* exConn);
155 
156 #if DtHLA
157 
158  virtual const DtString& publisherName() const;
159 
161  virtual const DtString& reflectedListName() const;
162 
164  virtual const DtString& defaultBaseObjectClass() const;
165 
169  virtual void setUnknownAttributeFunctions(DtObjClassDesc* desc);
170 
173  virtual std::map<DtString, RTI::AttributeHandle> attributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl) const;
174 
177  virtual void setAttributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl,
178  const std::map<DtString, RTI::AttributeHandle>& mapping);
179 #endif
180 
183  virtual void setPublisherStateRepCreator();
184 
187  virtual void setReflectedObjectStateRepCreator();
188 
189 protected:
190 
191  static DtTime thePrevExConnInitTime;
192  static bool theExConnNeedsInit;
193 
194 };
195 
198 {
199 public:
200 
203 
206 
207 protected:
208 
210  virtual bool needsInitialization(DtExerciseConn* exConn);
211 
212 #if DtHLA
213 
214  virtual const DtString& publisherName() const;
215 
217  virtual const DtString& reflectedListName() const;
218 
220  virtual const DtString& defaultBaseObjectClass() const;
221 
225  virtual void setUnknownAttributeFunctions(DtObjClassDesc* desc);
226 
229  virtual std::map<DtString, RTI::AttributeHandle> attributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl) const;
230 
233  virtual void setAttributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl,
234  const std::map<DtString, RTI::AttributeHandle>& mapping);
235 #endif
236 
239  virtual void setPublisherStateRepCreator();
240 
243  virtual void setReflectedObjectStateRepCreator();
244 
245 protected:
246 
247  static DtTime thePrevExConnInitTime;
248  static bool theExConnNeedsInit;
249 
250 };
251 
254 {
255 public:
256 
259 
262 
263 protected:
264 
266  virtual bool needsInitialization(DtExerciseConn* exConn);
267 
268 #if DtHLA
269 
270  virtual const DtString& publisherName() const;
271 
273  virtual const DtString& reflectedListName() const;
274 
276  virtual const DtString& defaultBaseObjectClass() const;
277 
281  virtual void setUnknownAttributeFunctions(DtObjClassDesc* desc);
282 
285  virtual std::map<DtString, RTI::AttributeHandle> attributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl) const;
286 
289  virtual void setAttributeNameToHandleMap(const RTI::ObjectClassHandle& classHdl,
290  const std::map<DtString, RTI::AttributeHandle>& mapping);
291 #endif
292 
295  virtual void setPublisherStateRepCreator();
296 
299  virtual void setReflectedObjectStateRepCreator();
300 
301 protected:
302 
303  static DtTime thePrevExConnInitTime;
304  static bool theExConnNeedsInit;
305 
306 };
307 


Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)