7 #include <iolink/VariantDataValue.h>
8 #include <iolink/metadata/MetadataNodeIterator.h>
28 MetadataNode(
const std::string& key, std::shared_ptr<VariantDataValue> value);
42 std::shared_ptr<MetadataNode> clone()
const;
48 const std::string& key()
const;
54 std::shared_ptr<VariantDataValue> value()
const;
59 size_t childCount()
const;
67 bool hasChild(
const std::string& key)
const;
76 std::shared_ptr<const MetadataNode> child(
const std::string& key)
const;
85 std::shared_ptr<MetadataNode> child(
const std::string& key);
92 void addChild(std::shared_ptr<MetadataNode> child);
98 void removeChild(
const std::string& key);
133 std::string toString()
const;