Go to the documentation of this file.00001
00025 #ifndef _PROP_NOT_H_
00026 #define _PROP_NOT_H_
00027
00028 #include <string>
00029 #include <set>
00030
00031 #include <boost/function.hpp>
00032
00033 #include <predicate_manager/prop_logic.h>
00034
00035
00036
00037 namespace predicate_manager
00038 {
00043 class Not : public PropLogic
00044 {
00045 public:
00050 Not ( const std::string& name, const uint32_t pm_id = 0 );
00051
00053 bool evaluate ( boost::function<bool ( NameID ) > f ) const;
00054
00056 boost::shared_ptr<PropLogic> clone() const;
00057
00059 void printVariables ( NameIDSet& dep_set ) const;
00060
00061 private:
00062 NameID pred_name_id_;
00063 };
00064 }
00065
00066 #endif