OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
EntityPropertiesItems.h
Go to the documentation of this file.
1#pragma once
2#pragma warning(disable : 4251)
3
4// OpenTwin header
6#include "OldTreeIcon.h"
7
8// std header
9#include <string>
10#include <vector>
11
12class EntityBase;
13class EntityContainer;
14class EntityProperties;
15
16namespace ot { class Property; };
17namespace ot { class Painter2D; };
18
19class __declspec(dllexport) EntityPropertiesBase
20{
21public:
22 EntityPropertiesBase();
23 virtual ~EntityPropertiesBase() {};
24
25 EntityPropertiesBase(const EntityPropertiesBase &other);
26
27 virtual EntityPropertiesBase *createCopy(void) = 0;
28
29 void setContainer(EntityProperties *c) { m_container = c; };
30
31 void setName(const std::string& _name) { m_name = _name; };
32 const std::string& getName(void) const { return m_name; };
33
34 void setGroup(const std::string& _group) { m_group = _group; };
35 const std::string& getGroup(void) const { return m_group; };
36
37 enum eType { DOUBLE, INTEGER, BOOLEAN, STRING, SELECTION, COLOR, ENTITYLIST, PROJECTLIST, GUIPAINTER };
38 virtual eType getType(void) const = 0;
39 virtual std::string getTypeString(void) const = 0;
40
41 void resetNeedsUpdate(void) { m_needsUpdateFlag = false; };
42 bool needsUpdate(void);
43 void setNeedsUpdate(void);
44
45 void setHasMultipleValues(bool b) { m_multipleValues = b; };
46 bool hasMultipleValues(void) const { return m_multipleValues; };
47
48 virtual bool isCompatible(EntityPropertiesBase *other) { return true; };
49 virtual bool hasSameValue(EntityPropertiesBase *other) = 0;
50
51 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) = 0;
52 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root);
53
54 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) = 0;
55 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root);
56
57 void setToolTip(const std::string& _toolTip) { m_toolTip = _toolTip; };
58 const std::string& getToolTip(void) const { return m_toolTip; };
59
60 void setReadOnly(bool _flag) { m_readOnly = _flag; };
61 bool getReadOnly(void) const { return m_readOnly; };
62
63 void setProtected(bool _flag) { m_protectedProperty = _flag; };
64 bool getProtected(void) const { return m_protectedProperty; };
65
66 void setVisible(bool _flag) { m_visible = _flag; };
67 bool getVisible(void) const { return m_visible; };
68
69 void setErrorState(bool _flag) { m_errorState = _flag; };
70 bool getErrorState(void) const { return m_errorState; };
71
72 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
73
74 EntityPropertiesBase& operator=(const EntityPropertiesBase &other);
75
76protected:
77 void setupPropertyData(ot::PropertyGridCfg& _configuration, ot::Property* _property);
78 void addBaseDataToJsonDocument(ot::JsonValue& _container, ot::JsonAllocator& _allocator) const;
79
80private:
81 void setMultipleValues(void) { m_multipleValues = true; }
82
83 EntityProperties* m_container;
84 bool m_needsUpdateFlag;
85 std::string m_name;
86 std::string m_group;
87 std::string m_toolTip;
88 bool m_multipleValues;
89 bool m_readOnly;
90 bool m_protectedProperty;
91 bool m_visible;
92 bool m_errorState;
93};
94
95// ################################################################################################################################################################
96
97class __declspec(dllexport) EntityPropertiesDouble : public EntityPropertiesBase
98{
99public:
100 static std::string typeString(void) { return "double"; };
101
102 EntityPropertiesDouble();
103 virtual ~EntityPropertiesDouble() {};
104
105 EntityPropertiesDouble(const std::string& _name, double _value);
106
107 EntityPropertiesDouble(const EntityPropertiesDouble& _other);
108
109 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesDouble(*this); };
110
111 EntityPropertiesDouble& operator=(const EntityPropertiesDouble& _other);
112
113 virtual eType getType(void) const override { return DOUBLE; };
114 virtual std::string getTypeString(void) const override { return EntityPropertiesDouble::typeString(); };
115
116 void setValue(double _value);
117 double getValue(void) const { return m_value; };
118
119 void setRange(double _min, double _max);
120 void setMin(double _min);
121 double getMin(void) const { return m_min; };
122 void setMax(double _max);
123 double getMax(void) const { return m_max; };
124
125 void setAllowCustomValues(bool _allowCustomValues);
126 bool getAllowCustomValues(void) const { return m_allowCustomValues; };
127
128 virtual bool hasSameValue(EntityPropertiesBase *other) override;
129
130 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
131 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
132
133 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
134 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
135
136 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
137
138 static EntityPropertiesDouble* createProperty(const std::string& _group, const std::string& _name, double _defaultValue, const std::string& _defaultCategory, EntityProperties& _properties);
139 static EntityPropertiesDouble* createProperty(const std::string& _group, const std::string& _name, double _defaultValue, double _minValue, double _maxValue, const std::string& _defaultCategory, EntityProperties& _properties);
140
141private:
142 double m_value;
143 bool m_allowCustomValues;
144 double m_min;
145 double m_max;
146};
147
148// ################################################################################################################################################################
149
150class __declspec(dllexport) EntityPropertiesInteger : public EntityPropertiesBase
151{
152public:
153 static std::string typeString(void) { return "integer"; };
154
155 EntityPropertiesInteger();
156 virtual ~EntityPropertiesInteger() {};
157
158 EntityPropertiesInteger(const std::string& _name, long _value);
159
160 EntityPropertiesInteger(const EntityPropertiesInteger& _other);
161
162 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesInteger(*this); };
163
164 EntityPropertiesInteger& operator=(const EntityPropertiesInteger& _other);
165
166 virtual eType getType(void) const override { return INTEGER; };
167 virtual std::string getTypeString(void) const override { return EntityPropertiesInteger::typeString(); };
168
169 void setValue(long _value);
170 long getValue(void) const { return m_value; };
171
172 void setRange(long _min, long _max);
173 void setMin(long _min);
174 long getMin(void) const { return m_min; };
175 void setMax(long _max);
176 long getMax(void) const { return m_max; };
177
178 void setAllowCustomValues(bool _allowCustomValues);
179 bool getAllowCustomValues(void) const { return m_allowCustomValues; };
180
181 virtual bool hasSameValue(EntityPropertiesBase *other) override;
182
183 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
184 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
185
186 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
187 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
188
189 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
190
191 static EntityPropertiesInteger* createProperty(const std::string& _group, const std::string& _name, long _defaultValue, const std::string& _defaultCategory, EntityProperties& _properties);
192 static EntityPropertiesInteger* createProperty(const std::string& _group, const std::string& _name, long _defaultValue, long _minValue, long _maxValue, const std::string& _defaultCategory, EntityProperties& _properties);
193
194private:
195 long m_value;
196 bool m_allowCustomValues;
197 long m_min;
198 long m_max;
199};
200
201// ################################################################################################################################################################
202
203class __declspec(dllexport) EntityPropertiesBoolean : public EntityPropertiesBase
204{
205public:
206 static std::string typeString(void) { return "boolean"; };
207
208 EntityPropertiesBoolean() : m_value(false) {};
209 virtual ~EntityPropertiesBoolean() {};
210
211 EntityPropertiesBoolean(const std::string &n, bool v) : m_value(v) { setName(n); };
212
213 EntityPropertiesBoolean(const EntityPropertiesBoolean &other) : EntityPropertiesBase(other) { m_value = other.m_value; };
214
215 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesBoolean(*this); };
216
217 EntityPropertiesBoolean& operator=(const EntityPropertiesBoolean &other) { if (&other != this) { EntityPropertiesBase::operator=(other); m_value = other.getValue(); }; return *this; };
218
219 virtual eType getType(void) const override { return BOOLEAN; };
220 virtual std::string getTypeString(void) const override { return EntityPropertiesBoolean::typeString(); };
221
222 void setValue(bool b) { if (m_value != b) setNeedsUpdate(); m_value = b; };
223 bool getValue(void) const { return m_value; };
224
225 virtual bool hasSameValue(EntityPropertiesBase *other) override;
226
227 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
228 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
229
230 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
231 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
232
233 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
234
235 static EntityPropertiesBoolean* createProperty(const std::string &group, const std::string &name, bool defaultValue, const std::string &defaultCategory, EntityProperties &properties);
236
237private:
238 bool m_value;
239};
240
241// ################################################################################################################################################################
242
243class __declspec(dllexport) EntityPropertiesString : public EntityPropertiesBase
244{
245public:
246 static std::string typeString(void) { return "string"; };
247
248 EntityPropertiesString() {};
249 virtual ~EntityPropertiesString() {};
250
251 EntityPropertiesString(const std::string &n, const std::string &v) : m_value(v) { setName(n); };
252
253 EntityPropertiesString(const EntityPropertiesString &other) : EntityPropertiesBase(other) { m_value = other.m_value; };
254
255 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesString(*this); };
256
257 EntityPropertiesString& operator=(const EntityPropertiesString &other) { if (&other != this) { EntityPropertiesBase::operator=(other); m_value =other.getValue(); }; return *this; };
258
259 virtual eType getType(void) const override { return STRING; };
260 virtual std::string getTypeString(void) const override { return EntityPropertiesString::typeString(); };
261
262 void setValue(const std::string &s) { if (m_value != s) setNeedsUpdate(); m_value = s; };
263 const std::string& getValue(void) const { return m_value; };
264
265 virtual bool hasSameValue(EntityPropertiesBase *other) override;
266
267 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
268 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
269
270 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
271 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
272
273 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
274
275 static EntityPropertiesString* createProperty(const std::string &group, const std::string &name, const std::string &defaultValue, const std::string &defaultCategory, EntityProperties &properties);
276
277private:
278 std::string m_value;
279};
280
281// ################################################################################################################################################################
282
283class __declspec(dllexport) EntityPropertiesSelection : public EntityPropertiesBase
284{
285public:
286 static std::string typeString(void) { return "selection"; };
287
288 EntityPropertiesSelection() {};
289 virtual ~EntityPropertiesSelection() {};
290
291 EntityPropertiesSelection(const EntityPropertiesSelection &other) : EntityPropertiesBase(other) { m_options = other.m_options; m_value = other.m_value; };
292
293 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesSelection(*this); };
294
295 EntityPropertiesSelection& operator=(const EntityPropertiesSelection &other) { if (&other != this) { assert(checkCompatibilityOfSettings(other)); EntityPropertiesBase::operator=(other); m_value = other.getValue(); }; return *this; };
296
297 virtual eType getType(void) const override { return SELECTION; };
298 virtual std::string getTypeString(void) const override { return EntityPropertiesSelection::typeString(); };
299
300 virtual bool isCompatible(EntityPropertiesBase *other) override;
301
302 bool setValue(const std::string &s);
303 const std::string& getValue(void)const { return m_value; };
304
305 void clearOptions() { m_options.clear(); };
306 void addOption(const std::string &option) { assert(std::find(m_options.begin(), m_options.end(), option) == m_options.end()); m_options.push_back(option); }
307 void resetOptions(std::list<std::string>& _options);
308 const std::vector<std::string> &getOptions(void) { return m_options; };
309
310 virtual bool hasSameValue(EntityPropertiesBase *other) override;
311
312 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
313 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
314
315 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
316 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
317
318 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
319
320 static EntityPropertiesSelection* createProperty(const std::string &group, const std::string &name, std::list<std::string>& options, const std::string &defaultValue, const std::string &defaultCategory, EntityProperties &properties);
321 static EntityPropertiesSelection* createProperty(const std::string &group, const std::string &name, std::list<std::string>&& options, const std::string &defaultValue, const std::string &defaultCategory, EntityProperties &properties);
322
323private:
324 bool checkCompatibilityOfSettings(const EntityPropertiesSelection &other);
325
326 std::vector<std::string> m_options;
327 std::string m_value;
328};
329
330// ################################################################################################################################################################
331
332class __declspec(dllexport) EntityPropertiesColor : public EntityPropertiesBase
333{
334public:
335 static std::string typeString(void) { return "color"; };
336
337 EntityPropertiesColor() : m_color{ 0.0, 0.0, 0.0 } {};
338
339 EntityPropertiesColor(const EntityPropertiesColor &other) : EntityPropertiesBase(other) { m_color[0] = other.getColorR(); m_color[1] = other.getColorG(); m_color[2] = other.getColorB(); };
340
341 EntityPropertiesColor(const std::string &n, double r, double g, double b) : m_color{ r, g, b } { setName(n); };
342 virtual ~EntityPropertiesColor() {};
343
344 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesColor(*this); };
345
346 EntityPropertiesColor& operator=(const EntityPropertiesColor &other);
347
348 virtual eType getType(void) const override { return COLOR; };
349 virtual std::string getTypeString(void) const override { return EntityPropertiesColor::typeString(); };
350
351 void setColorR(double c) { if (m_color[0] != c) setNeedsUpdate(); m_color[0] = c; };
352 void setColorG(double c) { if (m_color[1] != c) setNeedsUpdate(); m_color[1] = c; };
353 void setColorB(double c) { if (m_color[2] != c) setNeedsUpdate(); m_color[2] = c; };
354
355 void setColorRGB(double r, double g, double b) { if (m_color[0] != r || m_color[1] != g || m_color[2] != b) setNeedsUpdate(); m_color[0] = r; m_color[1] = g; m_color[2] = b; };
356
357 double getColorR(void) const { return m_color[0]; };
358 double getColorG(void) const { return m_color[1]; };
359 double getColorB(void) const { return m_color[2]; };
360
361 virtual bool hasSameValue(EntityPropertiesBase *other) override;
362
363 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
364 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
365
366 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
367 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
368
369 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
370
371 static EntityPropertiesColor* createProperty(const std::string &group, const std::string &name, std::vector<int> defaultValue, const std::string &defaultCategory, EntityProperties &properties);
372
373private:
374 double m_color[3];
375};
376
377// ################################################################################################################################################################
378
379class __declspec(dllexport) EntityPropertiesEntityList : public EntityPropertiesBase
380{
381public:
382 static std::string typeString(void) { return "entitylist"; };
383
384 EntityPropertiesEntityList() : m_entityContainerID(0), m_valueID(0) {};
385
386 EntityPropertiesEntityList(const EntityPropertiesEntityList &other) : EntityPropertiesBase(other) { m_entityContainerName = other.getEntityContainerName(); m_entityContainerID = other.getEntityContainerID(); m_valueName = other.getValueName(); m_valueID = other.getValueID(); };
387 EntityPropertiesEntityList(const std::string &n, const std::string &contName, ot::UID contID, const std::string &valName, ot::UID valID) : m_entityContainerName(contName), m_entityContainerID(contID), m_valueName(valName), m_valueID(valID) { setName(n); };
388
389 virtual ~EntityPropertiesEntityList() {};
390
391 virtual EntityPropertiesBase *createCopy(void) override { return new EntityPropertiesEntityList(*this); };
392
393 EntityPropertiesEntityList& operator=(const EntityPropertiesEntityList &other);
394
395 virtual eType getType(void) const override { return ENTITYLIST; };
396 virtual std::string getTypeString(void) const override { return EntityPropertiesEntityList::typeString(); };
397
398 virtual bool hasSameValue(EntityPropertiesBase *other) override;
399
400 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase *root) override;
401 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
402
403 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
404 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
405
406 virtual void copySettings(EntityPropertiesBase *other, EntityBase *root);
407
408 void setEntityContainerName(const std::string &containerName) { if (m_entityContainerName != containerName) setNeedsUpdate(); m_entityContainerName = containerName; };
409 void setEntityContainerID(ot::UID containerID) { if (m_entityContainerID != containerID) setNeedsUpdate(); m_entityContainerID = containerID; };
410
411 void setValueName(const std::string &vname) { if (m_valueName != vname) setNeedsUpdate(); m_valueName = vname; };
412 void setValueID(ot::UID vid) { if (m_valueID != vid) setNeedsUpdate(); m_valueID = vid; };
413
414 std::string getEntityContainerName(void) const { return m_entityContainerName; };
415 ot::UID getEntityContainerID(void) const { return m_entityContainerID; };
416
417 std::string getValueName(void) const { return m_valueName; };
418 ot::UID getValueID(void) const { return m_valueID; };
419
420 static EntityPropertiesEntityList* createProperty(const std::string &group, const std::string &name, const std::string &contName, ot::UID contID, const std::string &valName, ot::UID valID, const std::string &defaultCategory, EntityProperties &properties);
421
422private:
423
427 void updateValueAndContainer(EntityBase* _root, std::list<std::string>& _containerOptions);
428
429 EntityContainer *findContainerFromID(EntityBase *root, ot::UID entityID);
430 EntityContainer *findContainerFromName(EntityBase *root, const std::string &entityName);
431 EntityBase *findEntityFromName(EntityBase *root, const std::string &entityName);
432 EntityBase *findEntityFromID(EntityBase *root, ot::UID entityID);
433
434 std::string m_entityContainerName;
435 ot::UID m_entityContainerID;
436
437 std::string m_valueName;
438 ot::UID m_valueID;
439};
440
441// ################################################################################################################################################################
442
443class __declspec(dllexport) EntityPropertiesProjectList : public EntityPropertiesBase
444{
445public:
446 static std::string typeString(void) { return "projectlist"; };
447
448 EntityPropertiesProjectList() {};
449 EntityPropertiesProjectList(const std::string& name) { setName(name); }
450 virtual EntityPropertiesBase* createCopy(void) override { return new EntityPropertiesProjectList(*this); };
451 virtual eType getType(void) const override { return PROJECTLIST; };
452 virtual std::string getTypeString(void) const override { return EntityPropertiesProjectList::typeString(); };
453
454 virtual void copySettings(EntityPropertiesBase* other, EntityBase* root);
455
456 virtual bool hasSameValue(EntityPropertiesBase* other) override { return true; };
457
458 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase* root) override;
459 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
460
461 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
462 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
463
464 void setValue(std::string& value) { m_value = value; }
465 std::string getValue() const {return m_value;}
466private:
467 std::string m_value;
468};
469
470// ################################################################################################################################################################
471
472class __declspec(dllexport) EntityPropertiesGuiPainter : public EntityPropertiesBase
473{
474public:
475 static std::string typeString(void) { return "guipainter"; };
476
477 EntityPropertiesGuiPainter();
478 virtual ~EntityPropertiesGuiPainter();
479
482 EntityPropertiesGuiPainter(const std::string& n, ot::Painter2D* _painter) : m_painter(_painter) { setName(n); };
483
484 EntityPropertiesGuiPainter(const EntityPropertiesGuiPainter& other);
485
486 virtual EntityPropertiesBase* createCopy(void) override { return new EntityPropertiesGuiPainter(*this); };
487
488 EntityPropertiesGuiPainter& operator=(const EntityPropertiesGuiPainter& other);
489
490 virtual eType getType(void) const override { return GUIPAINTER; };
491 virtual std::string getTypeString(void) const override { return EntityPropertiesGuiPainter::typeString(); };
492
493 void setValue(ot::Painter2D* _painter);
494
497 const ot::Painter2D* getValue(void) const { return m_painter; };
498
499 virtual bool hasSameValue(EntityPropertiesBase* other) override;
500
501 virtual void addToConfiguration(ot::PropertyGridCfg& _configuration, EntityBase* root) override;
502 virtual void setFromConfiguration(const ot::Property* _property, EntityBase* root) override;
503
504 virtual void addToJsonDocument(ot::JsonDocument& jsonDoc, EntityBase* root) override;
505 virtual void readFromJsonObject(const ot::ConstJsonObject& object, EntityBase* root) override;
506
507 virtual void copySettings(EntityPropertiesBase* other, EntityBase* root);
508
509 static EntityPropertiesGuiPainter* createProperty(const std::string& group, const std::string& name, ot::Painter2D* _defaultPainter, const std::string& defaultCategory, EntityProperties& properties);
510
511private:
512 ot::Painter2D* m_painter;
513};
bsoncxx::types::value value
Definition DocumentManager.h:16
JSON document.
Definition JSON.h:276
Definition Painter2D.h:17
Definition PropertyGridCfg.h:21
The Property class is used as a base class for all Properties that can be displayed and modified in t...
Definition Property.h:21
double double double b[]
Definition GeometryOperations.h:24
UICORE_API_EXPORT void setErrorState(UID _lineEditUid, bool _error)
Will set the nice line edit error state.
Definition uiAPI.cpp:436
UICORE_API_EXPORT void setToolTip(UID _objectUID, const QString &_toolTip)
Will set the objects ToolTip For the list of suitable objects refer to the documentation.
Definition uiAPI.cpp:530
UICORE_API_EXPORT QString getToolTip(UID _toolButtonUID)
Will get the current ToolTip of the toolButton.
Definition uiAPI.cpp:714
Definition Connector.h:8
unsigned long UID
Unique identifier (32 bit unsigned integer)
Definition CoreTypes.h:27
rapidjson::Value JsonValue
Writable JSON value.
Definition JSON.h:27
rapidjson::GenericObject< true, rapidjson::GenericValue< rapidjson::UTF8<>, rapidjson::MemoryPoolAllocator< rapidjson::CrtAllocator > > > ConstJsonObject
Read only JSON Object.
Definition JSON.h:35
rapidjson::MemoryPoolAllocator< rapidjson::CrtAllocator > JsonAllocator
Allocator used for writing to JSON values.
Definition JSON.h:30