Viam C++ SDK current
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Friends | List of all members
viam::sdk::Registry Class Reference

A registry of known resources. More...

#include <registry.hpp>

Public Member Functions

void register_model (std::shared_ptr< const ModelRegistration > resource)
 Registers a resource with the Registry.
 
std::shared_ptr< const ModelRegistrationlookup_model (const std::string &name) const
 Lookup a given registered resource.
 
std::shared_ptr< const ModelRegistrationlookup_model (const API &api, const Model &model) const
 Lookup a given registered resource.
 
template<typename ResourceClientT >
void register_resource_client ()
 Register a resource client constructor.
 
template<typename ResourceServerT >
void register_resource_server ()
 Register a resource server constructor.
 
template<typename ResourceClientT , typename ResourceServerT >
void register_resource ()
 Register resource client and server constructors.
 
std::shared_ptr< const ResourceServerRegistrationlookup_resource_server (const API &api) const
 Lookup a registered server api.
 
std::shared_ptr< const ResourceClientRegistrationlookup_resource_client (const API &api) const
 Lookup a registered client api.
 
const std::unordered_map< std::string, std::shared_ptr< const ModelRegistration > > & registered_models () const
 Provide information on registered resource models.
 
const std::unordered_map< API, std::shared_ptr< const ResourceServerRegistration > > & registered_resource_servers () const
 Provide access to registered resources.
 

Static Public Member Functions

static Registryget ()
 Get the application-wide instance of Registry.
 

Friends

class Instance
 

Detailed Description

A registry of known resources.

Member Function Documentation

◆ lookup_model() [1/2]

std::shared_ptr< const ModelRegistration > viam::sdk::Registry::lookup_model ( const API & api,
const Model & model ) const

Lookup a given registered resource.

Parameters
apiThe api of the resource to lookup.
modelThe model of the resource to lookup.
Returns
a shared_ptr to the resource's registration data.

◆ lookup_model() [2/2]

std::shared_ptr< const ModelRegistration > viam::sdk::Registry::lookup_model ( const std::string & name) const

Lookup a given registered resource.

Parameters
nameThe name of the resource to lookup.
Returns
a shared_ptr to the resource's registration data.

◆ lookup_resource_client()

std::shared_ptr< const ResourceClientRegistration > viam::sdk::Registry::lookup_resource_client ( const API & api) const

Lookup a registered client api.

Parameters
apiThe api to lookup.
Returns
A shared_ptr to the registered api's ResourceClientRegistration.

◆ lookup_resource_server()

std::shared_ptr< const ResourceServerRegistration > viam::sdk::Registry::lookup_resource_server ( const API & api) const

Lookup a registered server api.

Parameters
apiThe api to lookup.
Returns
A shared_ptr to the registered api's ResourceServerRegistration.

◆ register_model()

void viam::sdk::Registry::register_model ( std::shared_ptr< const ModelRegistration > resource)

Registers a resource with the Registry.

Parameters
resourceAn object containing resource registration information.
Exceptions
`Exception`if the resource has already been registered.

◆ registered_models()

const std::unordered_map< std::string, std::shared_ptr< const ModelRegistration > > & viam::sdk::Registry::registered_models ( ) const

Provide information on registered resource models.

Returns
A map from name to ModelRegistration of all registered resource models.

◆ registered_resource_servers()

const std::unordered_map< API, std::shared_ptr< const ResourceServerRegistration > > & viam::sdk::Registry::registered_resource_servers ( ) const

Provide access to registered resources.

Returns
A map from API to ResourceServerRegistration of all registered resources.

The documentation for this class was generated from the following file: