1 #ifndef _CONSTRAINT_STORE_PLAD 2 #define _CONSTRAINT_STORE_PLAD 3 4 #include "constraints/abstract_constraint.hpp" 5 #include "queue/rbase_generating_queue.hpp" 6 #include "library/library.hpp" 7 #include "library/perm.hpp" 8 9 struct Problem; 10 11 class ConstraintStore 12 { 13 Problem* p; 14 vec1<AbstractConstraint*> constraints; 15 bool constraints_initalized; 16 public: 17 18 typedef const vec1<AbstractConstraint*>* get_type; get() const19 const vec1<AbstractConstraint*>* get() const 20 { return &constraints; } 21 22 ConstraintStore(Problem* _p); 23 24 void addConstraint(AbstractConstraint* con); 25 26 void initConstraints(bool rbase_building); 27 28 ~ConstraintStore(); 29 30 bool initCalled() const; 31 32 bool verifySolution(const Permutation& p) const; 33 }; 34 35 #endif 36