Go to the documentation of this file.00001
00007 #ifndef _VARIABLES_H_
00008 #define _VARIABLES_H_
00009
00010 #include <vector>
00011
00012
00013 namespace cnf {
00014
00025 class VariableSet
00026 {
00027 private:
00038 std::vector< std::vector<unsigned int> > dim;
00039
00046 std::vector<unsigned int> sizes;
00047
00052 std::vector<bool> varValue;
00053
00054 public:
00055
00066 VariableSet(unsigned int,unsigned int);
00067
00079 VariableSet(unsigned int,unsigned int,unsigned int);
00080
00091 void addVars(unsigned int, unsigned int);
00092
00104 void addVars(unsigned int, unsigned int, unsigned int);
00105
00117 unsigned int getVarCode(unsigned int,unsigned int,unsigned int);
00118
00130 unsigned int getVarCode(unsigned int,unsigned int,unsigned int,unsigned int);
00131
00142 bool getVarValue(unsigned int,unsigned int,unsigned int);
00143
00155 bool getVarValue(unsigned int,unsigned int,unsigned int,unsigned int);
00156
00157
00164 unsigned int getCard();
00165
00175 void parseDimacs(std::istream *);
00176
00177 };
00178
00179 }
00180
00181 #endif