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. More...
 
std::unique_ptr< ControllerWrapper< T > > create (const std::string &name)
 
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

using AronDTO = typename ControllerDescriptionType::AronDTO

Definition at line 65 of file ControllerBuilder.h.

◆ ControllerDescriptionType

◆ CtrlProxy

Constructor & Destructor Documentation

◆ ControllerBuilder()

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()

ControllerBuilder& allowReuse ( const bool  allowReuse)
inline

Definition at line 543 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ config()

AronDTO& config ( )
inline

Definition at line 165 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ create() [1/2]

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

Creates the controller with the default name.

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

Definition at line 203 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ create() [2/2]

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

Definition at line 210 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ createGetTSComplianceMPCtrl()

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 513 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ createTSComplianceCtrl()

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 361 of file ControllerBuilder.h.

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

◆ createTSComplianceMPCtrl()

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 484 of file ControllerBuilder.h.

+ Here is the call graph for this function:

◆ daemonize()

ControllerBuilder& daemonize ( )
inline

Definition at line 191 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ getControllerName()

std::string getControllerName ( )
inline

Definition at line 556 of file ControllerBuilder.h.

◆ getReusing()

bool getReusing ( )
inline

Definition at line 550 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withConfig() [1/4]

ControllerBuilder& withConfig ( const ::armarx::aron::data::dto::DictPtr &  configDict)
inline

Definition at line 124 of file ControllerBuilder.h.

◆ withConfig() [2/4]

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]

ControllerBuilder& withConfig ( const AronDTO dto)
inline

Definition at line 158 of file ControllerBuilder.h.

◆ withConfig() [4/4]

ControllerBuilder& withConfig ( const std::filesystem::path &  filename)
inline

Definition at line 131 of file ControllerBuilder.h.

◆ withDefaultConfig()

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()

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()

ControllerBuilder& withNamePrefix ( const std::string &  namePrefix)
inline

Definition at line 180 of file ControllerBuilder.h.

+ Here is the caller graph for this function:

◆ withNodeSet()

ControllerBuilder& withNodeSet ( const std::string &  nodeSetName)
inline

Definition at line 173 of file ControllerBuilder.h.

Member Data Documentation

◆ ctrlConfigClassName

constexpr const char* ctrlConfigClassName
staticconstexpr
Initial value:
=
detail::ctrl_class_name::CtrlConfigClassName_v<ControllerDescriptionType>

Definition at line 61 of file ControllerBuilder.h.


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