30#include <IceUtil/Handle.h>
33#include <ArmarXCore/interface/observers/ObserverInterface.h>
34#include <ArmarXCore/interface/observers/VariantBase.h>
57 virtual public LiteralImplBase,
62 template <
class BaseClass,
class VariantClass>
80 LiteralImpl(
const std::string& dataFieldIdentifierStr,
81 const std::string& checkName,
82 const ParameterList& checkParameters);
92 const std::string& checkName,
93 const ParameterList& checkParameters);
103 const std::string& checkName,
104 const ParameterList& checkParameters);
106 LiteralImpl(
const DatafieldRefBasePtr& dataFieldIdentifier,
107 const std::string& checkName,
108 const ParameterList& checkParameters);
126 void setValue(
bool value,
const Ice::Current&
c = Ice::emptyCurrent)
override;
128 const ::armarx::DataFieldIdentifierBasePtr&
id,
129 const ::armarx::VariantBasePtr&
data,
130 const Ice::Current&
c = Ice::emptyCurrent)
override;
137 Ice::ObjectPtr
ice_clone()
const override;
144 void output(std::ostream& out)
const override;
169 void init(
const std::string& dataFieldIdentifierStr,
170 const std::string& checkName,
171 const ParameterList& checkParameters);
178 std::unique_ptr<Impl> impl;
181extern template class ::IceInternal::Handle<::armarx::LiteralImpl>;
std::ostream & operator<<(std::ostream &strm, const AbstractInterface &a)
#define ARMARXCORE_IMPORT_EXPORT
DataFieldIdentifier provide the basis to identify data field within a distributed ArmarX scenario.
LiteralImpls are the basic elements for defining conditional expressions.
friend class GenericFactory
void output(std::ostream &out) const override
output to stream.
CheckConfiguration getCheckConfiguration(const Ice::Current &c=Ice::emptyCurrent) override
Retrieve check configuration.
LiteralImpl()
Creates an empty LiteralImpl.
Ice::ObjectPtr ice_clone() const override
Reimplementation of the ice_clone method.
void setValueAndData(bool value, const ::armarx::DataFieldIdentifierBasePtr &id, const ::armarx::VariantBasePtr &data, const Ice::Current &c=Ice::emptyCurrent) override
friend class ConditionHandler
void setValue(bool value, const Ice::Current &c=Ice::emptyCurrent) override
Set value of LiteralImpl.
TermImpl is the superclass for all implementations of terms in the expression tree,...
::IceInternal::Handle<::Ice::ObjectAdapter > ObjectAdapterPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< DataFieldIdentifier > DataFieldIdentifierPtr
Typedef of DataFieldIdentifierPtr as IceInternal::Handle<DataFieldIdentifier> for convenience.
IceInternal::Handle< LiteralImpl > LiteralImplPtr
Typedef of LiteralImplPtr as IceInternal::Handle<LiteralImpl> for convenience.