LambdaSkill Class Reference

#include <RobotAPI/libraries/skills/provider/LambdaSkill.h>

+ Inheritance diagram for LambdaSkill:

Public Types

using FunctionType = std::function< TerminatedSkillStatus()>
 
- Public Types inherited from Skill
using CallbackT = std::function< void(const SkillStatus s, const armarx::aron::data::DictPtr &)>
 

Public Member Functions

 LambdaSkill ()=delete
 
 LambdaSkill (const SkillDescription &desc, const FunctionType &f)
 
- Public Member Functions inherited from Skill
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 ()
 

Additional Inherited Members

- Public Attributes inherited from Skill
armarx::core::time::DateTime exited = armarx::core::time::DateTime::Invalid()
 
armarx::core::time::DateTime started = armarx::core::time::DateTime::Now()
 
- Protected Member Functions inherited from Skill
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...
 
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 inherited from Skill
static MainResult MakeAbortedResult ()
 
static MainResult MakeFailedResult ()
 
static MainResult MakeSucceededResult (aron::data::DictPtr data=nullptr)
 
- Protected Attributes inherited from Skill
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

Definition at line 9 of file LambdaSkill.h.

Member Typedef Documentation

◆ FunctionType

using FunctionType = std::function<TerminatedSkillStatus()>

Definition at line 12 of file LambdaSkill.h.

Constructor & Destructor Documentation

◆ LambdaSkill() [1/2]

LambdaSkill ( )
delete

◆ LambdaSkill() [2/2]

LambdaSkill ( const SkillDescription desc,
const FunctionType f 
)
inline

Definition at line 15 of file LambdaSkill.h.


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