LambdaSkill Class Reference

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

+ Inheritance diagram for LambdaSkill:

Public Types

using FunT = std::function< TerminatedSkillStatus(const std::string clientId, const aron::data::DictPtr &)>
 
- Public Types inherited from Skill
using CallbackT = std::function< void(const aron::data::DictPtr &)>
 

Public Member Functions

 LambdaSkill ()=delete
 
 LambdaSkill (const FunT &f, const SkillDescription &desc)
 
- Public Member Functions inherited from Skill
bool checkWhetherSkillShouldStopASAP () const
 
MainResult executeFullSkill (const MainInput &in)
 Do init, main, exit together. More...
 
ExitResult exitSkill (const ExitInput &in)
 
SkillID getSkillId () const
 The id of the skill (combination of provider and name must be unique). More...
 
InitResult initSkill (const InitInput &in)
 
bool isSkillAvailable (const InitInput &in) const
 
MainResult mainOfSkill (const MainInput &in)
 
void notifySkillToStopASAP ()
 
void resetSkill ()
 
 Skill ()=delete
 
 Skill (const SkillDescription &)
 
void waitForDependenciesOfSkill ()
 
virtual ~Skill ()=default
 
- 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

- Data Fields inherited from Skill
const SkillDescription description
 The descripion of the skill, which will be available via the provider/manager. More...
 
armarx::core::time::DateTime exited = armarx::core::time::DateTime::Invalid()
 
manager::dti::SkillManagerInterfacePrx manager = nullptr
 proxy that called the skills. Will be set from provider and is const afterwards More...
 
std::string providerName = "INVALID PROVIDER NAME"
 the provider that owns this skill. Will be set from provider and is const afterwards More...
 
armarx::core::time::DateTime started = armarx::core::time::DateTime::Invalid()
 running params More...
 
- Protected Member Functions inherited from Skill
void _exit ()
 
void _init ()
 
void _main ()
 
void installConditionWithCallback (std::function< bool()> &&f, std::function< void()> &&cb)
 install a condition which is frequently checked from the conditionCheckingThread More...
 
void notifyTimeoutReached ()
 
- 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
 
- Protected Attributes inherited from Skill
std::vector< std::pair< std::function< bool()>, std::function< void()> > > callbacks
 active conditions. First is condition (bool return func) More...
 
std::mutex callbacksMutex
 
std::atomic_bool running = false
 Use conditions this way. More...
 
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

◆ FunT

using FunT = std::function<TerminatedSkillStatus(const std::string clientId, const aron::data::DictPtr&)>

Definition at line 12 of file LambdaSkill.h.

Constructor & Destructor Documentation

◆ LambdaSkill() [1/2]

LambdaSkill ( )
delete

◆ LambdaSkill() [2/2]

LambdaSkill ( const FunT f,
const SkillDescription desc 
)
inline

Definition at line 15 of file LambdaSkill.h.


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