ControllerBuilder< T > Class Template Reference

#include <armarx/control/client/ControllerBuilder.h>

Public Types

using AronDTO = typename ControllerDescriptionType::AronDTO
 
using ControllerDescriptionType = ControllerDescription<T>
 
using CtrlProxy = detail::proxy::ProxyType_t<ControllerDescriptionType>
 

Public Member Functions

ControllerBuilderallowReuse (const bool allowReuse)
 
AronDTOconfig ()
 
 ControllerBuilder (const armarx::RobotUnitInterfacePrx &controllerCreator, const memory::config::Reader &configProvider, const memory::config::Writer &configWriter, const std::string &controllerNamePrefix)
 
std::unique_ptr< ControllerWrapper< T > > create ()
 Creates the controller with the default name.
 
std::unique_ptr< ControllerWrapper< T > > create (const std::string &name)
 
CtrlProxy createGetTSComplianceCtrl (const std::string &namePrefix="", const ::armarx::aron::data::dto::DictPtr &configDict=nullptr, const std::string &configFilename="", bool flagActivate=true, bool flagAllowReuse=true, bool flagFromMemory=false)
 
CtrlProxy createGetTSComplianceMPCtrl (const std::string &namePrefix, const ::armarx::aron::data::dto::DictPtr &mpConfigDict, const ::armarx::aron::data::dto::DictPtr &configDict=nullptr, const std::string &configFilename="", bool flagActivate=true, bool flagAllowReuse=true, bool flagFromMemory=false, bool flagStart=true)
 
std::unique_ptr< ControllerWrapper< T > > createTSComplianceCtrl (const std::string &namePrefix="", const ::armarx::aron::data::dto::DictPtr &configDict=nullptr, const std::string &configFilename="", bool flagActivate=true, bool flagAllowReuse=true, bool flagFromMemory=false)
 
std::unique_ptr< ControllerWrapper< T > > createTSComplianceMPCtrl (const std::string &namePrefix, const ::armarx::aron::data::dto::DictPtr &mpConfigDict, const ::armarx::aron::data::dto::DictPtr &configDict=nullptr, const std::string &configFilename="", bool flagActivate=true, bool flagAllowReuse=true, bool flagFromMemory=false, bool flagStart=true)
 
ControllerBuilderdaemonize ()
 
std::string getControllerName ()
 
bool getReusing ()
 
ControllerBuilderwithConfig (const ::armarx::aron::data::dto::DictPtr &configDict)
 
ControllerBuilderwithConfig (const armarx::armem::MemoryID &memoryId)
 
ControllerBuilderwithConfig (const AronDTO &dto)
 
ControllerBuilderwithConfig (const std::filesystem::path &filename)
 
ControllerBuilderwithDefaultConfig (const std::string &name="default")
 
ControllerBuilderwithDefaultConfigFile (const std::string &name="default", const std::string &robotNameSuffix="", const std::string &appendix="")
 
ControllerBuilderwithNamePrefix (const std::string &namePrefix)
 
ControllerBuilderwithNodeSet (const std::string &nodeSetName)
 

Static Public Attributes

static constexpr const char * ctrlConfigClassName
 

Detailed Description

template<auto T>
class armarx::control::client::ControllerBuilder< T >

Definition at line 52 of file ControllerBuilder.h.

Member Typedef Documentation

◆ AronDTO

template<auto T>
using AronDTO = typename ControllerDescriptionType::AronDTO

Definition at line 65 of file ControllerBuilder.h.

◆ ControllerDescriptionType

Definition at line 55 of file ControllerBuilder.h.

◆ CtrlProxy

Definition at line 58 of file ControllerBuilder.h.

Constructor & Destructor Documentation

◆ ControllerBuilder()

template<auto T>
ControllerBuilder ( const armarx::RobotUnitInterfacePrx & controllerCreator,
const memory::config::Reader & configProvider,
const memory::config::Writer & configWriter,
const std::string & controllerNamePrefix )
inline

Definition at line 71 of file ControllerBuilder.h.

Member Function Documentation

◆ allowReuse()

template<auto T>
ControllerBuilder & allowReuse ( const bool allowReuse)
inline

Definition at line 588 of file ControllerBuilder.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ config()

template<auto T>
AronDTO & config ( )
inline

Definition at line 167 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ create() [1/2]

template<auto T>
std::unique_ptr< ControllerWrapper< T > > create ( )
inline

Creates the controller with the default name.

Returns
std::optional<ControllerWrapper<AronDTO, ct>>

Definition at line 205 of file ControllerBuilder.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create() [2/2]

template<auto T>
std::unique_ptr< ControllerWrapper< T > > create ( const std::string & name)
inline

Definition at line 212 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ createGetTSComplianceCtrl()

template<auto T>
CtrlProxy createGetTSComplianceCtrl ( const std::string & namePrefix = "",
const ::armarx::aron::data::dto::DictPtr & configDict = nullptr,
const std::string & configFilename = "",
bool flagActivate = true,
bool flagAllowReuse = true,
bool flagFromMemory = false )
inline

Definition at line 503 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ createGetTSComplianceMPCtrl()

template<auto T>
CtrlProxy createGetTSComplianceMPCtrl ( const std::string & namePrefix,
const ::armarx::aron::data::dto::DictPtr & mpConfigDict,
const ::armarx::aron::data::dto::DictPtr & configDict = nullptr,
const std::string & configFilename = "",
bool flagActivate = true,
bool flagAllowReuse = true,
bool flagFromMemory = false,
bool flagStart = true )
inline

Definition at line 550 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ createTSComplianceCtrl()

template<auto T>
std::unique_ptr< ControllerWrapper< T > > createTSComplianceCtrl ( const std::string & namePrefix = "",
const ::armarx::aron::data::dto::DictPtr & configDict = nullptr,
const std::string & configFilename = "",
bool flagActivate = true,
bool flagAllowReuse = true,
bool flagFromMemory = false )
inline

load predefined config from file or use the configFilename provided by the user

get up-to-date controller configs and update the copy of it in wrapper with the null space target from the controller

Definition at line 374 of file ControllerBuilder.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ createTSComplianceMPCtrl()

template<auto T>
std::unique_ptr< ControllerWrapper< T > > createTSComplianceMPCtrl ( const std::string & namePrefix,
const ::armarx::aron::data::dto::DictPtr & mpConfigDict,
const ::armarx::aron::data::dto::DictPtr & configDict = nullptr,
const std::string & configFilename = "",
bool flagActivate = true,
bool flagAllowReuse = true,
bool flagFromMemory = false,
bool flagStart = true )
inline

Definition at line 521 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ daemonize()

template<auto T>
ControllerBuilder & daemonize ( )
inline

Definition at line 193 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ getControllerName()

template<auto T>
std::string getControllerName ( )
inline

Definition at line 601 of file ControllerBuilder.h.

◆ getReusing()

template<auto T>
bool getReusing ( )
inline

Definition at line 595 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withConfig() [1/4]

template<auto T>
ControllerBuilder & withConfig ( const ::armarx::aron::data::dto::DictPtr & configDict)
inline

Definition at line 124 of file ControllerBuilder.h.

◆ withConfig() [2/4]

template<auto T>
ControllerBuilder & withConfig ( const armarx::armem::MemoryID & memoryId)
inline

Definition at line 115 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withConfig() [3/4]

template<auto T>
ControllerBuilder & withConfig ( const AronDTO & dto)
inline

Definition at line 160 of file ControllerBuilder.h.

◆ withConfig() [4/4]

template<auto T>
ControllerBuilder & withConfig ( const std::filesystem::path & filename)
inline

Definition at line 131 of file ControllerBuilder.h.

◆ withDefaultConfig()

template<auto T>
ControllerBuilder & withDefaultConfig ( const std::string & name = "default")
inline

Definition at line 86 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withDefaultConfigFile()

template<auto T>
ControllerBuilder & withDefaultConfigFile ( const std::string & name = "default",
const std::string & robotNameSuffix = "",
const std::string & appendix = "" )
inline

Definition at line 101 of file ControllerBuilder.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ withNamePrefix()

template<auto T>
ControllerBuilder & withNamePrefix ( const std::string & namePrefix)
inline

Definition at line 182 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withNodeSet()

template<auto T>
ControllerBuilder & withNodeSet ( const std::string & nodeSetName)
inline

Definition at line 175 of file ControllerBuilder.h.

Member Data Documentation

◆ ctrlConfigClassName

template<auto T>
const char* ctrlConfigClassName
staticconstexpr

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