Robot Raconteur Core C++ Library
Loading...
Searching...
No Matches
RobotRaconteur::DynamicServiceFactory Class Referenceabstract

Dynamic service factory base class. More...

#include <ServiceFactory.h>

Public Member Functions

virtual boost::shared_ptr< ServiceFactoryCreateServiceFactory (boost::string_ref def)=0
 Override to return service factory from a service definition string.
virtual std::vector< boost::shared_ptr< ServiceFactory > > CreateServiceFactories (const std::vector< std::string > &def)=0
 Override to return collection of service factories from a collection of service definition strings.

Detailed Description

Dynamic service factory base class.

Dynamic service factories are used to automatically generate service definitions as needed. They are using with dynamic languages such as Python and MATLAB with service definitions pulled by the client.

Member Function Documentation

◆ CreateServiceFactories()

virtual std::vector< boost::shared_ptr< ServiceFactory > > RobotRaconteur::DynamicServiceFactory::CreateServiceFactories ( const std::vector< std::string > & def)
pure virtual

Override to return collection of service factories from a collection of service definition strings.

Factory should return a vector service factory implementing the provided vector of service definition string. Clients will provide related service definitions at the same time so they can be verified.

Parameters
defThe collection of service definition strings
Returns
RR_SHARED_PTR<ServiceFactory> The generated service factories

◆ CreateServiceFactory()

virtual boost::shared_ptr< ServiceFactory > RobotRaconteur::DynamicServiceFactory::CreateServiceFactory ( boost::string_ref def)
pure virtual

Override to return service factory from a service definition string.

Factory should return a service factory implementing the provided service definition string.

Parameters
defThe service definition as a string
Returns
RR_SHARED_PTR<ServiceFactory> The generated service factory

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