Timetabler
time_tabler.h
Go to the documentation of this file.
1 
3 #ifndef TIME_TABLER_H
4 #define TIME_TABLER_H
5 
6 #include <vector>
7 #include "core/SolverTypes.h"
8 #include "mtl/Vec.h"
9 #include "cclause.h"
10 #include "data.h"
11 #include "tsolver.h"
12 #include "MaxSATFormula.h"
13 
14 using namespace Minisat;
15 
16 
33 };
34 
45 class TimeTabler {
46 private:
50  TSolver *solver;
54  MaxSATFormula *formula;
58  std::vector<lbool> model;
59 public:
64  TimeTabler();
65  ~TimeTabler();
66  void addClauses(const std::vector<CClause>&, int);
67  void addClauses(const Clauses&, int);
68  bool checkAllTrue(const std::vector<Var>&);
69  bool isVarTrue(const Var&);
70  SolverStatus solve();
71  Var newVar();
72  Lit newLiteral(bool);
73  void printResult(SolverStatus);
74  void displayTimeTable();
75  void displayUnsatisfiedOutputReasons();
76  void addHighLevelClauses();
77  void writeOutput(std::string);
78  void addExistingAssignments();
79  void addToFormula(vec<Lit>&, int);
80  void displayChangesInGivenAssignment();
81 };
82 
83 #endif
Definition: time_tabler.h:24
Definition: time_tabler.h:28
Data data
Definition: time_tabler.h:63
Class for solver.
Definition: tsolver.h:25
Class for representing a set of clauses.
Definition: clauses.h:23
SolverStatus
Enum to store the solver status.
Definition: time_tabler.h:20
Class for data.
Definition: data.h:30
Definition: time_tabler.h:32
Class for time tabler.
Definition: time_tabler.h:45