4#include <unordered_map>
6#include <viam/sdk/common/proto_convert.hpp>
7#include <viam/sdk/common/proto_value.hpp>
8#include <viam/sdk/referenceframe/frame.hpp>
9#include <viam/sdk/resource/resource_api.hpp>
16class ResourceLevelServiceConfig;
25class DiscoverResourcesResponse;
36 ProtoStruct attributes;
44 std::string namespace_,
45 ProtoStruct attributes,
53 const API& api()
const;
55 const Model& model()
const;
56 const std::string& name()
const;
57 const std::string& namespace_()
const;
58 const std::string& type()
const;
59 const std::vector<std::string>& depends_on()
const;
60 const std::vector<ResourceLevelServiceConfig>& service_config()
const;
61 const ProtoStruct& attributes()
const;
68 std::string namespace__;
70 std::vector<std::string> depends_on_;
71 std::vector<ResourceLevelServiceConfig> service_config_;
72 ProtoStruct attributes_;
74 std::vector<std::string> implicit_depends_on_;
78namespace proto_convert_details {
87 void operator()(
const ResourceConfig&, app::v1::ComponentConfig*)
const;
97 std::vector<ResourceConfig> operator()(
98 const service::discovery::v1::DiscoverResourcesResponse*)
const;
Definition resource_api.hpp:21
Defines the namespace_, family, and name for a particular resource model.
Definition resource_api.hpp:125
A name for specific instances of resources.
Definition resource_api.hpp:61
Type-erased value for storing google::protobuf::Value types. A ProtoValue can be nullptr,...
Definition proto_value.hpp:55
Definition resource.hpp:40
Definition resource.hpp:34
Definition proto_convert.hpp:24
Definition proto_convert.hpp:18