Go to the documentation of this file.
29 #include <ArmarXCore/interface/observers/VariantBase.h>
30 #include <ArmarXCore/interface/observers/ConditionCheckBase.h>
31 #include <ArmarXCore/interface/observers/ObserverInterface.h>
57 virtual public ConditionCheckBase
108 void evaluateCondition(
const DataFieldRegistry& dataFields);
135 void setNumberParameters(
int numberParameters);
144 void addSupportedType(
VariantTypeId dataFieldType = 0, ParameterTypeList parameterTypes = ParameterTypeList());
168 static ParameterTypeList createParameterTypeList(
int numberTypes, ...);
171 void assureTypeSupported(
const CheckConfiguration& configuration,
VariantTypeId dataFieldType);
198 const std::string _checkStr;
200 CheckBase(std::string check) : _checkStr(check) {}
205 #define ARMARX_CREATE_CHECK(OFFERER,NEWCHECK) namespace checks { namespace OFFERER { \
206 const CheckBaseConstPtr NEWCHECK = CheckBase::create(#NEWCHECK);\
209 extern template class ::IceInternal::Handle<::armarx::ConditionCheck>;
The Variant class is described here: Variants.
std::shared_ptr< const CheckBase > CheckBaseConstPtr
std::map< std::string, Variant > StringVariantMap
virtual const std::string & getCheckStr() const
static CheckBasePtr create(const std::string &check)
virtual bool evaluate(const StringVariantMap &dataFields)
Evaluate the condition based on the current data field values.
std::shared_ptr< CheckBase > CheckBasePtr
virtual ConditionCheck * clone()
Clones the current check.
friend std::ostream & operator<<(std::ostream &stream, const ConditionCheck &rhs)
~ConditionCheck() override
Destructor.
friend std::ostream & operator<<(std::ostream &stream, const ConditionCheckPtr &rhs)
armarx::ChannelRegistry ChannelRegistry
Creates a new ConditionCheck instance.
std::vector< VariantTypeId > VariantTypeIdList
#define ARMARXCORE_IMPORT_EXPORT
This file offers overloads of toIce() and fromIce() functions for STL container types.