38 const std::vector<std::shared_ptr<ModelRegistration>>& registrations);
53 ::grpc::Status AddResource(::grpc::ServerContext* context,
54 const ::viam::module::v1::AddResourceRequest* request,
55 ::viam::module::v1::AddResourceResponse* response)
override;
57 ::grpc::Status ReconfigureResource(
58 ::grpc::ServerContext* context,
59 const ::viam::module::v1::ReconfigureResourceRequest* request,
60 ::viam::module::v1::ReconfigureResourceResponse* response)
override;
62 ::grpc::Status RemoveResource(::grpc::ServerContext* context,
63 const ::viam::module::v1::RemoveResourceRequest* request,
64 ::viam::module::v1::RemoveResourceResponse* response)
override;
66 ::grpc::Status Ready(::grpc::ServerContext* context,
67 const ::viam::module::v1::ReadyRequest* request,
68 ::viam::module::v1::ReadyResponse* response)
override;
70 ::grpc::Status ValidateConfig(::grpc::ServerContext* context,
71 const ::viam::module::v1::ValidateConfigRequest* request,
72 ::viam::module::v1::ValidateConfigResponse* response)
override;
74 void add_model_from_registry_inlock_(
API api,
Model model,
const std::lock_guard<std::mutex>&);
75 Dependencies get_dependencies_(google::protobuf::RepeatedPtrField<std::string>
const& proto,
76 std::string
const& resource_name);
77 std::shared_ptr<Resource> get_parent_resource_(
const Name& name);
80 std::unique_ptr<Module> module_;
81 std::shared_ptr<RobotClient> parent_;
82 std::string parent_addr_;
83 std::unique_ptr<Server> server_;
Defines the namespace_, family, and name for a particular resource model.
Definition resource_api.hpp:117
ModuleService(int argc, char **argv, const std::vector< std::shared_ptr< ModelRegistration > > ®istrations)
Creates a new ModuleService. Socket path and log level will be inferred from passed in command line a...