00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _CSP_FILTERS_DUMMY_H
00025 #define _CSP_FILTERS_DUMMY_H
00026
00027
00028 CSP_NAMESPACE_BEGIN(csp);
00029 CSP_NAMESPACE_BEGIN(filters);
00030
00031
00039 class CSP_API Dummy :
00040 public Filter
00041 {
00042 public:
00043 Dummy(Problem& problem, Retraction& retraction) :
00044 Filter(L"Dummy", L"Dummy", problem, retraction) {}
00045
00046 virtual bool restoresArcConsistency() const { return false; }
00047 virtual bool isDummy() const { return true; }
00048
00049 virtual bool propagate(
00050 const vlist_type& uninstantiatedVariables,
00051 const vlist_type& modifiedVariables,
00052 const bool keepChanges = true);
00053
00054 private:
00056 Dummy(const Dummy&);
00057
00059 Dummy& operator=(const Dummy&);
00060
00061 bool check(Constraint& constraint, Variable& variable);
00062 };
00063
00064
00065 CSP_NAMESPACE_END(filters);
00066 CSP_NAMESPACE_END(csp);
00067
00068
00069 #endif // _CSP_FILTERS_DUMMY_H
00070
00071
00072
00073