OpenLexocad  28.0
PropertyValue.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Core/Variant.h>
4 #include <unordered_map>
5 
6 
7 
8 namespace Core
9 {
10 class Property;
11 
12 class LX_CORE_EXPORT PropertyValue // Wraps property type and Core::Variant value
13 {
14 public:
15  PropertyValue() : propertyName(""), propertyType(Base::Type::badType()), value(Core::Variant()) {}
16 
17  PropertyValue(const std::string& name, Base::Type t, const Core::Variant& v) : propertyName(name), propertyType(t), value(v) {}
18 
19  std::string propertyName;
22 };
23 
24 
25 typedef std::unordered_map<std::string, Core::Property*> PropertyMap;
26 typedef std::unordered_map<std::string, Core::PropertyValue> PropertyValueMap;
27 
28 } // namespace Core
Base::Type
Definition: Type.h:51
Core::PropertyMap
std::unordered_map< std::string, Core::Property * > PropertyMap
Definition: PropertyValue.h:25
Core::PropertyValue::PropertyValue
PropertyValue(const std::string &name, Base::Type t, const Core::Variant &v)
Definition: PropertyValue.h:17
Core
Definition: Base.h:5
Core::Variant
Definition: Variant.h:78
Variant.h
Core::PropertyValue::propertyType
Base::Type propertyType
Definition: PropertyValue.h:20
Core::PropertyValue::value
Core::Variant value
Definition: PropertyValue.h:21
Core::PropertyValue
Definition: PropertyValue.h:13
Core::PropertyValue::PropertyValue
PropertyValue()
Definition: PropertyValue.h:15
Core::PropertyValue::propertyName
std::string propertyName
Definition: PropertyValue.h:19
Base
Definition: AbstractXMLReader.h:5
Core::PropertyValueMap
std::unordered_map< std::string, Core::PropertyValue > PropertyValueMap
Definition: PropertyValue.h:26