branch.hh
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef __GECODE_TEST_BRANCH_HH__
00039 #define __GECODE_TEST_BRANCH_HH__
00040
00041 #include "gecode/kernel.hh"
00042
00043 #include "gecode/int.hh"
00044
00045 #ifdef GECODE_HAS_SET_VARS
00046 #include "gecode/set.hh"
00047 #endif
00048
00049 #ifdef GECODE_HAS_CPLTSET_VARS
00050 #include "gecode/cpltset.hh"
00051 #endif
00052
00053 #include "test/test.hh"
00054
00055 namespace Test {
00056
00058 namespace Branch {
00059
00064 class IntTest : public Base {
00065 protected:
00067 int arity;
00069 Gecode::IntSet dom;
00070 public:
00072 IntTest(const std::string& s, int a, const Gecode::IntSet& d);
00074 virtual bool run(void);
00076 virtual void post(Gecode::Space* home, Gecode::IntVarArray& x) = 0;
00077 };
00078
00083 class BoolTest : public Base {
00084 protected:
00086 int arity;
00087 public:
00089 BoolTest(const std::string& s, int a);
00091 virtual bool run(void);
00093 virtual void post(Gecode::Space* home, Gecode::BoolVarArray& x) = 0;
00094 };
00095
00096 #ifdef GECODE_HAS_SET_VARS
00097
00101 class SetTest : public Base {
00102 protected:
00104 int arity;
00106 Gecode::IntSet dom;
00107 public:
00109 SetTest(const std::string& s, int a, const Gecode::IntSet& d);
00111 virtual bool run(void);
00113 virtual void post(Gecode::Space* home, Gecode::SetVarArray& x) = 0;
00114 };
00115 #endif
00116
00117 #ifdef GECODE_HAS_CPLTSET_VARS
00118
00122 class CpltSetTest : public Base {
00123 protected:
00125 int arity;
00127 Gecode::IntSet dom;
00128 public:
00130 CpltSetTest(const std::string& s, int a, const Gecode::IntSet& d);
00132 virtual bool run(void);
00134 virtual void post(Gecode::Space* home, Gecode::CpltSetVarArray& x) = 0;
00135 };
00136 #endif
00137
00138 }
00139
00140 }
00141
00142 #endif
00143
00144