38 #ifndef CONDITIONCOMPARE_HPP 39 #define CONDITIONCOMPARE_HPP 42 #include "../internal/DataSource.hpp" 45 {
namespace scripting {
56 template<
typename T,
typename compare_op>
64 : mdata1( data1 ), mdata2( data2 )
72 ConditionCompare*
copy( std::map<const base::DataSourceBase*, base::DataSourceBase*>& alreadyCloned )
const {
82 return op( mdata1->
get(), mdata2->
get() );
virtual result_t get() const =0
This interface represents the concept of a condition which can be evaluated and return true or false...
virtual ~ConditionCompare()
bool evaluate()
Evaluate the Condition and return the outcome.
virtual ConditionInterface * clone() const
virtual DataSource< T > * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const =0
internal::DataSource< T >::shared_ptr mdata2
ConditionCompare(internal::DataSource< T > *data1, internal::DataSource< T > *data2)
boost::intrusive_ptr< DataSource< T > > shared_ptr
internal::DataSource< T >::shared_ptr mdata1
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
ConditionCompare * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const