31 #ifndef HMLOGICALPARAMETER_H_ 32 #define HMLOGICALPARAMETER_H_ 34 #include "../../Variable.h" 39 #include <unordered_map> 47 namespace HmDeviceDescription
67 enum Enum { none = 0x00, typeInteger = 0x01, typeBoolean = 0x02, typeString = 0x03, typeFloat = 0x04, typeEnum = 0x20, typeAction = 0x30 };
70 bool defaultValueExists =
false;
77 virtual std::shared_ptr<Variable> getEnforceValue();
78 virtual std::shared_ptr<Variable> getDefaultValue();
86 int32_t min = -2147483648;
87 int32_t max = 2147483647;
88 int32_t defaultValue = 0;
89 int32_t enforceValue = 0;
95 virtual std::shared_ptr<Variable> getEnforceValue();
96 virtual std::shared_ptr<Variable> getDefaultValue();
102 double min = 1.175494351e-38f;
103 double max = 3.40282347e+38f;
104 double defaultValue = 0;
105 double enforceValue = 0;
111 virtual std::shared_ptr<Variable> getEnforceValue();
112 virtual std::shared_ptr<Variable> getDefaultValue();
120 int32_t defaultValue = 0;
121 int32_t enforceValue = 0;
127 virtual std::shared_ptr<Variable> getEnforceValue();
128 virtual std::shared_ptr<Variable> getDefaultValue();
136 bool defaultValue =
false;
137 bool enforceValue =
false;
142 virtual std::shared_ptr<Variable> getEnforceValue();
143 virtual std::shared_ptr<Variable> getDefaultValue();
157 virtual std::shared_ptr<Variable> getEnforceValue();
158 virtual std::shared_ptr<Variable> getDefaultValue();
166 bool defaultValue =
false;
167 bool enforceValue =
false;
172 virtual std::shared_ptr<Variable> getEnforceValue();
173 virtual std::shared_ptr<Variable> getDefaultValue();
virtual ~LogicalParameterBoolean()
Definition: HmLogicalParameter.h:141
std::string enforceValue
Definition: HmLogicalParameter.h:152
Enum
Definition: HmLogicalParameter.h:67
int32_t index
Definition: HmLogicalParameter.h:55
BaseLib::SharedObjects * _bl
Definition: HmLogicalParameter.h:80
This is the base library main class.
Definition: BaseLib.h:95
Definition: HmLogicalParameter.h:131
std::unordered_map< std::string, int32_t > specialValues
Definition: HmLogicalParameter.h:90
Definition: BaseLib.cpp:34
virtual ~LogicalParameterInteger()
Definition: HmLogicalParameter.h:94
virtual ~LogicalParameterEnum()
Definition: HmLogicalParameter.h:125
Definition: HmLogicalParameter.h:50
Definition: HmLogicalParameter.h:161
virtual ~LogicalParameterAction()
Definition: HmLogicalParameter.h:171
std::vector< ParameterOption > options
Definition: HmLogicalParameter.h:126
virtual ~LogicalParameter()
Definition: HmLogicalParameter.h:75
std::unordered_map< std::string, double > specialValues
Definition: HmLogicalParameter.h:106
Definition: HmLogicalParameter.h:62
std::string unit
Definition: HmLogicalParameter.h:69
std::string min
Definition: HmLogicalParameter.h:149
Definition: HmLogicalParameter.h:65
virtual ~LogicalParameterFloat()
Definition: HmLogicalParameter.h:110
ParameterOption()
Definition: HmLogicalParameter.h:57
Definition: HmLogicalParameter.h:83
virtual ~ParameterOption()
Definition: HmLogicalParameter.h:59
bool isDefault
Definition: HmLogicalParameter.h:54
Definition: HmLogicalParameter.h:99
std::string id
Definition: HmLogicalParameter.h:53
Definition: HmLogicalParameter.h:146
Class representing a node of XML document.
Definition: rapidxml.h:539
Definition: HmLogicalParameter.h:115
virtual ~LogicalParameterString()
Definition: HmLogicalParameter.h:156
std::string max
Definition: HmLogicalParameter.h:150
std::string defaultValue
Definition: HmLogicalParameter.h:151