Go to the documentation of this file.00001
00025 #ifndef _PROP_XOR_H_
00026 #define _PROP_XOR_H_
00027
00028 #include <string>
00029
00030 #include <boost/function.hpp>
00031 #include <boost/shared_ptr.hpp>
00032
00033 #include <predicate_manager/prop_operator.h>
00034
00035
00036
00037 namespace predicate_manager
00038 {
00042 class Xor : public PropOperator
00043 {
00044 public:
00048 Xor ( const PropLogic& p1,
00049 const PropLogic& p2 ) :
00050 PropOperator ( p1, p2 )
00051 {}
00052
00054 bool evaluate ( boost::function<bool ( NameID ) > f ) const;
00055
00057 boost::shared_ptr<PropLogic> clone() const;
00058 };
00059 }
00060
00061 #endif