IOLink  IOL_v1.2.0_release
MetadataNodeHelper.h
1 #pragma once
2 
3 #include <memory>
4 
5 #include <iolink/IOLinkAPI.h>
6 #include <iolink/metadata/MetadataNode.h>
7 
8 namespace iolink
9 {
10 
14 class IOLINK_API MetadataNodeHelper
15 {
16 public:
31  static std::shared_ptr<const MetadataNode> getNode(std::shared_ptr<const MetadataNode> root, const std::string& path);
32 
39  static bool exists(std::shared_ptr<const MetadataNode> root, const std::string& path);
40 
53  static std::shared_ptr<const MetadataNode> createPath(std::shared_ptr<MetadataNode> origin,
54  const std::string& path,
55  std::shared_ptr<VariantDataValue> value);
56 };
57 
58 } // end namespace iolink