Timetabler
cclause.h
Go to the documentation of this file.
1 
3 #ifndef CCLAUSE_H
4 #define CCLAUSE_H
5 
6 #include <vector>
7 #include "core/SolverTypes.h"
8 class Clauses;
9 
10 using namespace Minisat;
11 
21 class CClause {
22 private:
26  std::vector<Lit> lits;
27 public:
28  CClause(const std::vector<Lit>&);
29  CClause(const Lit&);
30  CClause(const Var&);
31  CClause();
32  std::vector<CClause> operator~();
33  std::vector<CClause> operator&(const CClause&);
34  Clauses operator&(const Clauses&);
35  CClause operator|(const CClause&);
36  Clauses operator|(const Clauses&);
37  std::vector<CClause> operator>>(const CClause&);
38  Clauses operator>>(const Clauses&);
39  void createLitAndAdd(const Var&);
40  void createLitAndAdd(const Var&, const Var&);
41  void createLitAndAdd(const Var&, const Var&, const Var&);
42  void addLits(const Lit&);
43  void addLits(const Lit&, const Lit&);
44  void addLits(const Lit&, const Lit&, const Lit&);
45  void addLits(const std::vector<Lit>&);
46  std::vector<Lit> getLits() const;
47  void clear();
48  void printClause();
49 };
50 
51 #endif
Class for representing a clause.
Definition: cclause.h:21
Class for representing a set of clauses.
Definition: clauses.h:23