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 "MaxSATFormula.h"
7 #include "cclause.h"
8 #include "core/SolverTypes.h"
9 #include "data.h"
10 #include "mtl/Vec.h"
11 #include "tsolver.h"
12 #include <vector>
13 
14 using namespace Minisat;
15 
32 };
33 
44 class TimeTabler {
45  private:
49  TSolver *solver;
53  MaxSATFormula *formula;
57  std::vector<lbool> model;
58 
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:23
Definition: time_tabler.h:27
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:19
Class for data.
Definition: data.h:30
Definition: time_tabler.h:31
Class for time tabler.
Definition: time_tabler.h:44