66 typedef std::shared_ptr<Variable>
PVariable;
69 typedef std::map<std::string, PVariable>
Struct;
70 typedef std::shared_ptr<std::map<std::string, PVariable>>
PStruct;
71 typedef std::vector<PVariable>
Array;
72 typedef std::shared_ptr<Array>
PArray;
73 typedef std::list<PVariable>
List;
74 typedef std::shared_ptr<List>
PList;
78 typedef void (
Variable::*bool_type)()
const;
80 void this_type_does_not_support_comparisons()
const {}
81 std::string print(PVariable variable, std::string indent,
bool ignoreIndentOnFirstLine,
bool oneLine);
82 std::string printStruct(PStruct rpcStruct, std::string indent,
bool ignoreIndentOnFirstLine,
bool oneLine);
83 std::string printArray(PArray rpcArray, std::string indent,
bool ignoreIndentOnFirstLine,
bool oneLine);
88 void parseXmlNode(
const xml_node *node, PStruct &xmlStruct);
90 bool errorStruct =
false;
93 int32_t integerValue = 0;
94 int64_t integerValue64 = 0;
95 double floatValue = 0;
96 bool booleanValue =
false;
106 explicit Variable(uint32_t integer);
108 explicit Variable(uint64_t integer);
109 explicit Variable(
const std::string &
string);
110 explicit Variable(
const char *
string);
113 explicit Variable(
const PArray &arrayVal);
114 explicit Variable(
const std::vector<std::string> &arrayVal);
115 explicit Variable(
const PStruct &structVal);
116 explicit Variable(
const std::vector<uint8_t> &binaryVal);
117 explicit Variable(
const uint8_t *binaryVal,
size_t binaryValSize);
118 explicit Variable(
const std::vector<char> &binaryVal);
119 explicit Variable(
const char *binaryVal,
size_t binaryValSize);
124 static PVariable createError(int32_t faultCode,
const std::string& faultString,
bool retry =
false);
125 std::string print(
bool stdout =
false,
bool stderr =
false,
bool oneLine =
false);
132 static PVariable fromString(std::string &value,
VariableType type);
133 std::string toString();
135 bool operator==(
const Variable &rhs);
136 bool operator<(
const Variable &rhs);
137 bool operator<=(
const Variable &rhs);
138 bool operator>(
const Variable &rhs);
139 bool operator>=(
const Variable &rhs);
140 bool operator!=(
const Variable &rhs);
141 operator bool_type()
const;
Enum
Definition: Logical.h:94
std::vector< uint8_t > binaryValue
Definition: Variable.h:99
std::shared_ptr< std::map< std::string, PVariable > > PStruct
Definition: Variable.h:70
PArray arrayValue
Definition: Variable.h:97
Definition: BaseLib.cpp:34
std::vector< PVariable > Array
Definition: Variable.h:71
std::shared_ptr< Array > PArray
Definition: Variable.h:72
VariableType type
Definition: Variable.h:91
VariableType
Definition: Variable.h:49
Enum
Definition: Physical.h:69
std::list< PVariable > List
Definition: Variable.h:73
PVariable value
Definition: UiElements.h:217
std::shared_ptr< Variable > PVariable
Definition: PhysicalInterfaceSettings.h:41
void setType(VariableType value)
Definition: Variable.h:128
std::shared_ptr< List > PList
Definition: Variable.h:74
std::map< std::string, PVariable > Struct
Definition: Variable.h:69
Definition: Variable.h:76
std::shared_ptr< PVariable > PPVariable
Definition: Variable.h:67
std::pair< std::string, PVariable > StructElement
Definition: Variable.h:68
Class representing a node of XML document.
Definition: rapidxml.h:539
std::string stringValue
Definition: Variable.h:92
Definition: BinaryPayload.h:38
PStruct structValue
Definition: Variable.h:98