PIValueTree::childValue method
This commit is contained in:
@@ -119,6 +119,16 @@ void PIValueTree::applyValues(const PIValueTree & root, bool recursive) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PIVariant PIValueTree::childValue(const PIString & child_name, const PIVariant & default_value, bool * exists) const {
|
||||||
|
if (!contains(child_name)) {
|
||||||
|
if (exists) *exists = false;
|
||||||
|
return default_value;
|
||||||
|
}
|
||||||
|
return child(child_name).value();
|
||||||
|
if (exists) *exists = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool PIValueTree::contains(const PIString & name) const {
|
bool PIValueTree::contains(const PIString & name) const {
|
||||||
if (_is_null) return true;
|
if (_is_null) return true;
|
||||||
for (const auto & c: _children)
|
for (const auto & c: _children)
|
||||||
|
|||||||
@@ -92,6 +92,7 @@ public:
|
|||||||
|
|
||||||
const PIVector<PIValueTree> & children() const { return _children; }
|
const PIVector<PIValueTree> & children() const { return _children; }
|
||||||
void clearChildren() { _children.clear(); }
|
void clearChildren() { _children.clear(); }
|
||||||
|
PIVariant childValue(const PIString & child_name, const PIVariant & default_value = PIVariant(), bool * exists = nullptr) const;
|
||||||
|
|
||||||
bool contains(const PIString & name) const;
|
bool contains(const PIString & name) const;
|
||||||
bool contains(const PIStringList & path) const;
|
bool contains(const PIStringList & path) const;
|
||||||
|
|||||||
Reference in New Issue
Block a user