50 errc_t getValueDouble(
double& value)
const
52 auto object = getObject();
53 if(!property_ || !
object)
return eErrorInvalidParam;
54 return property_->getValueDouble(
object, value);
56 errc_t setValueDouble(
double value)
58 auto object = getObject();
59 if(!property_ || !
object)
return eErrorInvalidParam;
60 return property_->setValueDouble(
object, value);
62 errc_t getValueInt(
int& value)
const
64 auto object = getObject();
65 if(!property_ || !
object)
return eErrorInvalidParam;
66 return property_->getValueInt(
object, value);
68 errc_t setValueInt(
int value)
70 auto object = getObject();
71 if(!property_ || !
object)
return eErrorInvalidParam;
72 return property_->setValueInt(
object, value);
74 errc_t getValueBool(
bool& value)
const
76 auto object = getObject();
77 if(!property_ || !
object)
return eErrorInvalidParam;
78 return property_->getValueBool(
object, value);
80 errc_t setValueBool(
bool value)
82 auto object = getObject();
83 if(!property_ || !
object)
return eErrorInvalidParam;
84 return property_->setValueBool(
object, value);
86 errc_t getValueString(std::string& value)
const
88 auto object = getObject();
89 if(!property_ || !
object)
return eErrorInvalidParam;
90 return property_->getValueString(
object, value);
94 auto object = getObject();
95 if(!property_ || !
object)
return eErrorInvalidParam;
96 return property_->setValueString(
object, value);
99 double getValueDouble()
const
102 getValueDouble(value);
105 int getValueInt()
const
111 bool getValueBool()
const
117 std::string getValueString()
const
120 getValueString(value);
124 operator double()
const
126 return getValueDouble();
130 return getValueInt();
132 operator bool()
const
134 return getValueBool();
136 operator std::string()
const
138 return getValueString();
143 setValueDouble(value);
152 template<typename T, typename = typename std::enable_if<std::is_same<T, bool>::value>::type>
160 setValueString(value);
164 void* getObject()
const;
166 ObjectPtrType object_{};
167 PropertyType* property_{
nullptr};