Go to the documentation of this file.00001
00025 #ifndef _PROPLOGIC_H_
00026 #define _PROPLOGIC_H_
00027
00028 #include <set>
00029 #include <string>
00030
00031 #include <boost/function.hpp>
00032 #include <boost/shared_ptr.hpp>
00033
00034 #include <predicate_manager/common_defs.h>
00035
00036 namespace predicate_manager
00037 {
00041 class PropLogic
00042 {
00043 public:
00045 virtual bool evaluate ( boost::function<bool ( NameID ) > f ) const = 0;
00046
00048 virtual boost::shared_ptr<PropLogic> clone() const = 0;
00049
00051 virtual void printVariables ( NameIDSet& dep_set ) const = 0;
00052 };
00053 }
00054
00055 #endif