Skill Class Reference

Base class for skills. More...

#include <RobotAPI/libraries/skills/core/Skill.h>

+ Inheritance diagram for Skill:

Classes

struct  ExitResult
 A result struct for skill exit function. More...
 
struct  InitResult
 A result struct for skill initialization. More...
 
struct  MainResult
 A result struct for th main method of a skill. More...
 
struct  PrepareResult
 A result struct for skill preparing. More...
 

Public Types

using CallbackT = std::function< void(const SkillStatus s, const armarx::aron::data::DictPtr &)>
 

Public Member Functions

ExitResult exitSkill ()
 Exit method of a skill. More...
 
aron::data::DictPtr getParameters () const
 Get the parameters of a skill that have been set so far. More...
 
SkillDescription getSkillDescription () const
 Get the description of a skill. More...
 
SkillID getSkillId () const
 Get the id of the skill. More...
 
InitResult initSkill ()
 Initialization of a skill. More...
 
MainResult mainOfSkill ()
 Main method of a skill. More...
 
void notifySkillToStop ()
 Notify the skill from extern to stop. More...
 
PrepareResult prepareSkill ()
 Prepare a skill once. More...
 
void setCallback (const CallbackT &callback)
 
void setExecutorName (const std::string &executorName)
 
void setManager (const manager::dti::SkillManagerInterfacePrx &manager)
 
void setParameters (const aron::data::DictPtr &d)
 Hard set the parameters, ignoring everything that has been set or merged before. More...
 
void setProviderId (const skills::ProviderID &pid)
 Set the provider id of the description of the skill. More...
 
bool shouldSkillTerminate () const
 Returns whether the skill should terminate as soon as possible. More...
 
 Skill ()=delete
 We completely remove the default constructor! A skill without a desciption cannot exist. More...
 
 Skill (const SkillDescription &)
 Constructor of a skill for inheritance. Every skill must have a skill description. More...
 
void updateParameters (const aron::data::DictPtr &d)
 Merge parameters to the local parameters of the skill. More...
 
virtual ~Skill ()
 Virtual destructor of a skill. More...
 
- Public Member Functions inherited from Logging
SpamFilterDataPtr deactivateSpam (float deactivationDurationSec=10.0f, const std::string &identifier="", bool deactivate=true) const
 disables the logging for the current line for the given amount of seconds. More...
 
MessageTypeT getEffectiveLoggingLevel () const
 
 Logging ()
 
void setLocalMinimumLoggingLevel (MessageTypeT level)
 With setLocalMinimumLoggingLevel the minimum verbosity-level of log-messages can be set. More...
 
void setTag (const LogTag &tag)
 
void setTag (const std::string &tagName)
 
virtual ~Logging ()
 

Public Attributes

armarx::core::time::DateTime exited = armarx::core::time::DateTime::Invalid()
 
armarx::core::time::DateTime started = armarx::core::time::DateTime::Now()
 

Protected Member Functions

std::optional< TerminatedSkillStatusUpdatecallSubskill (const SkillID &skillId)
 Call a subskill with the given ID and its default parameters. More...
 
std::optional< TerminatedSkillStatusUpdatecallSubskill (const SkillID &skillId, const aron::data::DictPtr &parameters)
 Call a subskill with the given ID and parameters. More...
 
template<class ParameterT >
std::optional< TerminatedSkillStatusUpdatecallSubskill (const SkillID &skillId, const ParameterT &parameters)
 Call a subskill with the given ID and parameters. More...
 
std::optional< TerminatedSkillStatusUpdatecallSubskill (const SkillID &skillId, std::function< void(aron::data::DictPtr &parameters)> parametersFunction)
 Call a subskill with parameters based on the default parameters. More...
 
template<class ParameterT >
std::optional< TerminatedSkillStatusUpdatecallSubskill (const SkillID &skillId, std::function< void(ParameterT &parameters)> parametersFunction)
 Call a subskill with parameters based on the default parameters. More...
 
std::optional< TerminatedSkillStatusUpdatecallSubskill (const skills::SkillProxy &proxy)
 Call a subskill with default parameters and block until the subskill terminates. More...
 
std::optional< TerminatedSkillStatusUpdatecallSubskill (const skills::SkillProxy &proxy, const aron::data::DictPtr &parameters)
 Call a subskill with given parameters and block until the subskill terminates. More...
 
skills::SkillExecutionID callSubskillAsync (const skills::SkillProxy &proxy)
 Similar to callSubskill but non-blocking. More...
 
skills::SkillExecutionID callSubskillAsync (const skills::SkillProxy &proxy, const aron::data::DictPtr &parameters)
 Similar to callSubskill but non-blocking. More...
 
virtual ExitResult exit ()
 Override this method with the actual implementation. More...
 
virtual InitResult init ()
 Override this method with the actual implementation. More...
 
void installConditionWithCallback (std::function< bool()> &&f, std::function< void()> &&cb)
 install a condition which is frequently checked from the conditionCheckingThread More...
 
virtual MainResult main ()
 Override this method with the actual implementation. The callback is for status updates to the calling instance. More...
 
void notifyTimeoutReached ()
 
virtual void onStopRequested ()
 
virtual void onTimeoutReached ()
 Override these methods if you want to do something special when notification comes. More...
 
virtual PrepareResult prepare ()
 Override this method with the actual implementation. More...
 
void throwIfSkillShouldTerminate (const std::function< void()> &do_before, const std::string &abortedMessage="")
 
void throwIfSkillShouldTerminate (const std::string &abortedMessage="")
 
- Protected Member Functions inherited from Logging
bool checkLogLevel (MessageTypeT level) const
 
const LogSenderPtrgetLogSender () const
 Retrieve log sender. More...
 
LogSenderPtr loghelper (const char *file, int line, const char *function) const
 

Static Protected Member Functions

static MainResult MakeAbortedResult ()
 
static MainResult MakeFailedResult ()
 
static MainResult MakeSucceededResult (aron::data::DictPtr data=nullptr)
 

Protected Attributes

CallbackT callback = CallbackT()
 
std::atomic_bool constructing = true
 
SkillDescription description
 
std::string executorName = ""
 
std::atomic_bool exiting = false
 
std::atomic_bool finished = false
 
std::atomic_bool initializing = false
 
manager::dti::SkillManagerInterfacePrx manager = nullptr
 
armarx::aron::data::DictPtr parameters = nullptr
 
std::mutex parametersMutex
 
std::atomic_bool preparing = false
 
std::atomic_bool running = false
 
std::atomic_bool stopped = false
 
std::atomic_bool timeoutReached = false
 
- Protected Attributes inherited from Logging
MessageTypeT minimumLoggingLevel
 
SpamFilterDataPtr spamFilter
 
LogTag tag
 

Detailed Description

Base class for skills.

Definition at line 29 of file Skill.h.

Member Typedef Documentation

◆ CallbackT

using CallbackT = std::function<void(const SkillStatus s, const armarx::aron::data::DictPtr&)>

Definition at line 33 of file Skill.h.

Constructor & Destructor Documentation

◆ Skill() [1/2]

Skill ( )
delete

We completely remove the default constructor! A skill without a desciption cannot exist.

◆ Skill() [2/2]

Skill ( const SkillDescription desc)

Constructor of a skill for inheritance. Every skill must have a skill description.

Definition at line 7 of file Skill.cpp.

◆ ~Skill()

virtual ~Skill ( )
inlinevirtual

Virtual destructor of a skill.

Definition at line 67 of file Skill.h.

Member Function Documentation

◆ callSubskill() [1/7]

std::optional< TerminatedSkillStatusUpdate > callSubskill ( const SkillID skillId)
protected

Call a subskill with the given ID and its default parameters.

Parameters
skillIdThe subskill's ID.
Returns
The terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 63 of file Skill.cpp.

◆ callSubskill() [2/7]

std::optional< TerminatedSkillStatusUpdate > callSubskill ( const SkillID skillId,
const aron::data::DictPtr parameters 
)
protected

Call a subskill with the given ID and parameters.

Parameters
skillIdThe subskill's ID.
parametersThe parameters.
Returns
The terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 69 of file Skill.cpp.

◆ callSubskill() [3/7]

std::optional<TerminatedSkillStatusUpdate> callSubskill ( const SkillID skillId,
const ParameterT &  parameters 
)
inlineprotected

Call a subskill with the given ID and parameters.

Parameters
skillIdThe subskill's ID.
parametersThe parameters.
Returns
The terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 260 of file Skill.h.

+ Here is the call graph for this function:

◆ callSubskill() [4/7]

std::optional<TerminatedSkillStatusUpdate> callSubskill ( const SkillID skillId,
std::function< void(aron::data::DictPtr &parameters)>  parametersFunction 
)
protected

Call a subskill with parameters based on the default parameters.

Creates the skill's default parameters, and calls parametersFunction on them. This allows the caller to modify the parameters before executing the skill.

Parameters
skillIdThe subskill's ID.
parametersFunctionFunction which edits the parameters.
Returns
The terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

◆ callSubskill() [5/7]

std::optional<TerminatedSkillStatusUpdate> callSubskill ( const SkillID skillId,
std::function< void(ParameterT &parameters)>  parametersFunction 
)
inlineprotected

Call a subskill with parameters based on the default parameters.

Creates the skill's default parameters, converts them to ParameterT, and calls parametersFunction on them. This allows the caller to modify the parameters as ParameterT before executing the skill.

Parameters
skillIdThe subskill's ID.
parametersFunctionFunction which edits the parameters.
Returns
The terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 301 of file Skill.h.

+ Here is the call graph for this function:

◆ callSubskill() [6/7]

std::optional< TerminatedSkillStatusUpdate > callSubskill ( const skills::SkillProxy proxy)
protected

Call a subskill with default parameters and block until the subskill terminates.

If you call a subskill this way it will be stopped if the current skill stops.

Parameters
proxySkill proxy.
Returns
Terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 22 of file Skill.cpp.

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

◆ callSubskill() [7/7]

std::optional< TerminatedSkillStatusUpdate > callSubskill ( const skills::SkillProxy proxy,
const aron::data::DictPtr parameters 
)
protected

Call a subskill with given parameters and block until the subskill terminates.

Parameters
proxySkill proxy.
parametersParameters passed to the skill.
Returns
Terminated skill status update.
Exceptions
armarx::skills::error::SkillAbortedExceptionIf the calling skill has been aborted.
armarx::skills::error::SkillFailedExceptionIf the calling skill's timeout was reached.

Definition at line 28 of file Skill.cpp.

+ Here is the call graph for this function:

◆ callSubskillAsync() [1/2]

skills::SkillExecutionID callSubskillAsync ( const skills::SkillProxy proxy)
protected

Similar to callSubskill but non-blocking.

Definition at line 43 of file Skill.cpp.

+ Here is the call graph for this function:

◆ callSubskillAsync() [2/2]

skills::SkillExecutionID callSubskillAsync ( const skills::SkillProxy proxy,
const aron::data::DictPtr parameters 
)
protected

Similar to callSubskill but non-blocking.

Definition at line 49 of file Skill.cpp.

+ Here is the call graph for this function:

◆ exit()

Skill::ExitResult exit ( )
protectedvirtual

Override this method with the actual implementation.

Reimplemented in SimpleSpecializedSkill< AronT >, SimpleSpecializedSkill< skills::Example::HelloWorldAcceptedType >, SimpleSpecializedSkill< arondto::PointAtParams >, SimpleSpecializedSkill< joint_control::arondto::MoveJointsWithVelocityAcceptedType >, SimpleSpecializedSkill< visual_search::arondto::WhatCanYouSeeNowAcceptedType >, SimpleSpecializedSkill< arondto::MoveJointsToNamedConfigurationParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecuteGraspAcceptedType >, SimpleSpecializedSkill< armarx::control::skills::params::ZeroTorque >, SimpleSpecializedSkill< grasp_object::arondto::OpenHandAndDetachAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForPutdownAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::CloseHandAndAttachAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToLocationParams >, SimpleSpecializedSkill< arondto::BringObjectToLandmarkAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterGraspAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterPutdownAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::OpenHandAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::PutdownObjectAcceptedType >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToPoseAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToNamedLocationParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForGraspAcceptedType >, SimpleSpecializedSkill< arondto::GuideHumanToRoomParams >, SimpleSpecializedSkill< RetrieveHandParams >, SimpleSpecializedSkill< arondto::RelaxHandParams >, SimpleSpecializedSkill< arondto::MoveJointsWithVelocityParams >, SimpleSpecializedSkill< arondto::NavigateToChargingStationParams >, SimpleSpecializedSkill< arondto::MoveJointsToPositionParams >, SimpleSpecializedSkill< skills::Example::RecursiveSkillParams >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToLandmarkAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::GraspObjectAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::CloseHandAcceptedType >, SimpleSpecializedSkill< arondto::ExecuteTrajectoryParams >, SimpleSpecializedSkill< arondto::FollowerParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecutePutdownAcceptedType >, SimpleSpecializedSkill< arondto::NamedConfigurationParams >, and SimpleSkill.

Definition at line 437 of file Skill.cpp.

◆ exitSkill()

Skill::ExitResult exitSkill ( )

Exit method of a skill.

It is guaranteed that exit is always called (unless there is a segfault or similar)

Definition at line 271 of file Skill.cpp.

+ Here is the call graph for this function:

◆ getParameters()

aron::data::DictPtr getParameters ( ) const

Get the parameters of a skill that have been set so far.

Definition at line 121 of file Skill.cpp.

◆ getSkillDescription()

SkillDescription getSkillDescription ( ) const
inline

Get the description of a skill.

Definition at line 81 of file Skill.h.

◆ getSkillId()

SkillID getSkillId ( ) const
inline

Get the id of the skill.

Definition at line 74 of file Skill.h.

+ Here is the caller graph for this function:

◆ init()

Skill::InitResult init ( )
protectedvirtual

Override this method with the actual implementation.

Reimplemented in SimpleSpecializedSkill< AronT >, SimpleSpecializedSkill< skills::Example::HelloWorldAcceptedType >, SimpleSpecializedSkill< arondto::PointAtParams >, SimpleSpecializedSkill< joint_control::arondto::MoveJointsWithVelocityAcceptedType >, SimpleSpecializedSkill< visual_search::arondto::WhatCanYouSeeNowAcceptedType >, SimpleSpecializedSkill< arondto::MoveJointsToNamedConfigurationParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecuteGraspAcceptedType >, SimpleSpecializedSkill< armarx::control::skills::params::ZeroTorque >, SimpleSpecializedSkill< grasp_object::arondto::OpenHandAndDetachAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForPutdownAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::CloseHandAndAttachAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToLocationParams >, SimpleSpecializedSkill< arondto::BringObjectToLandmarkAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterGraspAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterPutdownAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::OpenHandAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::PutdownObjectAcceptedType >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToPoseAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToNamedLocationParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForGraspAcceptedType >, SimpleSpecializedSkill< arondto::GuideHumanToRoomParams >, SimpleSpecializedSkill< RetrieveHandParams >, SimpleSpecializedSkill< arondto::RelaxHandParams >, SimpleSpecializedSkill< arondto::MoveJointsWithVelocityParams >, SimpleSpecializedSkill< arondto::NavigateToChargingStationParams >, SimpleSpecializedSkill< arondto::MoveJointsToPositionParams >, SimpleSpecializedSkill< skills::Example::RecursiveSkillParams >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToLandmarkAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::GraspObjectAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::CloseHandAcceptedType >, SimpleSpecializedSkill< arondto::ExecuteTrajectoryParams >, SimpleSpecializedSkill< arondto::FollowerParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecutePutdownAcceptedType >, SimpleSpecializedSkill< arondto::NamedConfigurationParams >, and SimpleSkill.

Definition at line 421 of file Skill.cpp.

◆ initSkill()

Skill::InitResult initSkill ( )

Initialization of a skill.

Called directly after construction. If this method does not return SUCCEEDED the skill execution is failed.

Definition at line 243 of file Skill.cpp.

+ Here is the call graph for this function:

◆ installConditionWithCallback()

void installConditionWithCallback ( std::function< bool()> &&  f,
std::function< void()> &&  cb 
)
protected

install a condition which is frequently checked from the conditionCheckingThread

Definition at line 15 of file Skill.cpp.

◆ main()

Skill::MainResult main ( )
protectedvirtual

Override this method with the actual implementation. The callback is for status updates to the calling instance.

Reimplemented in SimpleSpecializedSkill< AronT >, SimpleSpecializedSkill< skills::Example::HelloWorldAcceptedType >, SimpleSpecializedSkill< arondto::PointAtParams >, SimpleSpecializedSkill< joint_control::arondto::MoveJointsWithVelocityAcceptedType >, SimpleSpecializedSkill< visual_search::arondto::WhatCanYouSeeNowAcceptedType >, SimpleSpecializedSkill< arondto::MoveJointsToNamedConfigurationParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecuteGraspAcceptedType >, SimpleSpecializedSkill< armarx::control::skills::params::ZeroTorque >, SimpleSpecializedSkill< grasp_object::arondto::OpenHandAndDetachAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForPutdownAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::CloseHandAndAttachAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToLocationParams >, SimpleSpecializedSkill< arondto::BringObjectToLandmarkAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterGraspAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformAfterPutdownAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::OpenHandAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::PutdownObjectAcceptedType >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToPoseAcceptedType >, SimpleSpecializedSkill< arondto::NavigateToNamedLocationParams >, SimpleSpecializedSkill< grasp_object::arondto::MovePlatformForGraspAcceptedType >, SimpleSpecializedSkill< arondto::GuideHumanToRoomParams >, SimpleSpecializedSkill< RetrieveHandParams >, SimpleSpecializedSkill< arondto::RelaxHandParams >, SimpleSpecializedSkill< arondto::MoveJointsWithVelocityParams >, SimpleSpecializedSkill< arondto::NavigateToChargingStationParams >, SimpleSpecializedSkill< arondto::MoveJointsToPositionParams >, SimpleSpecializedSkill< skills::Example::RecursiveSkillParams >, SimpleSpecializedSkill< platform_control::arondto::MovePlatformToLandmarkAcceptedType >, SimpleSpecializedSkill< grasp_object::arondto::GraspObjectAcceptedType >, SimpleSpecializedSkill< hand_control::arondto::CloseHandAcceptedType >, SimpleSpecializedSkill< arondto::ExecuteTrajectoryParams >, SimpleSpecializedSkill< arondto::FollowerParams >, SimpleSpecializedSkill< grasp_object::arondto::ExecutePutdownAcceptedType >, SimpleSpecializedSkill< arondto::NamedConfigurationParams >, PeriodicSpecializedSkill< AronT >, PeriodicSkill, and SimpleSkill.

Definition at line 444 of file Skill.cpp.

◆ mainOfSkill()

Skill::MainResult mainOfSkill ( )

Main method of a skill.

Definition at line 261 of file Skill.cpp.

+ Here is the call graph for this function:

◆ MakeAbortedResult()

Skill::MainResult MakeAbortedResult ( )
staticprotected

Definition at line 333 of file Skill.cpp.

+ Here is the caller graph for this function:

◆ MakeFailedResult()

Skill::MainResult MakeFailedResult ( )
staticprotected

Definition at line 324 of file Skill.cpp.

+ Here is the caller graph for this function:

◆ MakeSucceededResult()

Skill::MainResult MakeSucceededResult ( aron::data::DictPtr  data = nullptr)
staticprotected

Definition at line 315 of file Skill.cpp.

+ Here is the caller graph for this function:

◆ notifySkillToStop()

void notifySkillToStop ( )

Notify the skill from extern to stop.

Definition at line 342 of file Skill.cpp.

◆ notifyTimeoutReached()

void notifyTimeoutReached ( )
protected

Definition at line 356 of file Skill.cpp.

◆ onStopRequested()

void onStopRequested ( )
protectedvirtual

Reimplemented in RetrieveHand, and PointAt.

Definition at line 415 of file Skill.cpp.

◆ onTimeoutReached()

void onTimeoutReached ( )
protectedvirtual

Override these methods if you want to do something special when notification comes.

Reimplemented in PointAt.

Definition at line 410 of file Skill.cpp.

◆ prepare()

Skill::PrepareResult prepare ( )
protectedvirtual

Override this method with the actual implementation.

Definition at line 429 of file Skill.cpp.

◆ prepareSkill()

Skill::PrepareResult prepareSkill ( )

Prepare a skill once.

This method is called in a loop as long as it returns RUNNING If the loop does not terminate with SUCCEDED the skill execution is failed.

Definition at line 252 of file Skill.cpp.

+ Here is the call graph for this function:

◆ setCallback()

void setCallback ( const CallbackT callback)
inline

Definition at line 95 of file Skill.h.

◆ setExecutorName()

void setExecutorName ( const std::string &  executorName)
inline

Definition at line 107 of file Skill.h.

◆ setManager()

void setManager ( const manager::dti::SkillManagerInterfacePrx &  manager)
inline

Definition at line 101 of file Skill.h.

◆ setParameters()

void setParameters ( const aron::data::DictPtr d)

Hard set the parameters, ignoring everything that has been set or merged before.

Definition at line 108 of file Skill.cpp.

+ Here is the caller graph for this function:

◆ setProviderId()

void setProviderId ( const skills::ProviderID pid)
inline

Set the provider id of the description of the skill.

This method is called when creating a skill in a skill provider

Definition at line 89 of file Skill.h.

◆ shouldSkillTerminate()

bool shouldSkillTerminate ( ) const

Returns whether the skill should terminate as soon as possible.

Definition at line 371 of file Skill.cpp.

+ Here is the caller graph for this function:

◆ throwIfSkillShouldTerminate() [1/2]

void throwIfSkillShouldTerminate ( const std::function< void()> &  do_before,
const std::string &  abortedMessage = "" 
)
protected

Definition at line 280 of file Skill.cpp.

◆ throwIfSkillShouldTerminate() [2/2]

void throwIfSkillShouldTerminate ( const std::string &  abortedMessage = "")
protected

Definition at line 291 of file Skill.cpp.

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

◆ updateParameters()

void updateParameters ( const aron::data::DictPtr d)

Merge parameters to the local parameters of the skill.

Definition at line 92 of file Skill.cpp.

Member Data Documentation

◆ callback

CallbackT callback = CallbackT()
protected

Definition at line 326 of file Skill.h.

◆ constructing

std::atomic_bool constructing = true
protected

Definition at line 339 of file Skill.h.

◆ description

SkillDescription description
protected

Definition at line 336 of file Skill.h.

◆ executorName

std::string executorName = ""
protected

Definition at line 328 of file Skill.h.

◆ exited

◆ exiting

std::atomic_bool exiting = false
protected

Definition at line 343 of file Skill.h.

◆ finished

std::atomic_bool finished = false
protected

Definition at line 344 of file Skill.h.

◆ initializing

std::atomic_bool initializing = false
protected

Definition at line 340 of file Skill.h.

◆ manager

manager::dti::SkillManagerInterfacePrx manager = nullptr
protected

Definition at line 327 of file Skill.h.

◆ parameters

armarx::aron::data::DictPtr parameters = nullptr
protected

Definition at line 333 of file Skill.h.

◆ parametersMutex

std::mutex parametersMutex
mutableprotected

Definition at line 332 of file Skill.h.

◆ preparing

std::atomic_bool preparing = false
protected

Definition at line 341 of file Skill.h.

◆ running

std::atomic_bool running = false
protected

Definition at line 342 of file Skill.h.

◆ started

◆ stopped

std::atomic_bool stopped = false
protected

Definition at line 347 of file Skill.h.

◆ timeoutReached

std::atomic_bool timeoutReached = false
protected

Definition at line 348 of file Skill.h.


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