public interface ILauncherMode extends SolutionFoundListener
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ANSWER_PREFIX |
static java.lang.String |
CURRENT_OPTIMUM_VALUE_PREFIX |
static ILauncherMode |
DECISION
The launcher is in decision mode: the answer is either SAT, UNSAT or
UNKNOWN
|
static ILauncherMode |
OPTIMIZATION
The launcher is in optimization mode: the answer is either SAT,
UPPER_BOUND, OPTIMUM_FOUND, UNSAT or UNKNOWN.
|
static java.lang.String |
SOLUTION_PREFIX |
VOID
Modifier and Type | Method and Description |
---|---|
void |
displayResult(ISolver solver,
IProblem problem,
ILogAble logger,
java.io.PrintWriter out,
Reader reader,
long beginTime,
boolean displaySolutionLine)
Output of the launcher when the solver stops
|
ExitCode |
getCurrentExitCode()
Allow the launcher to get the current status of the problem: SAT, UNSAT,
UPPER_BOUND, etc.
|
void |
setExitCode(ExitCode exitCode)
Allow to set a specific exit code to the launcher (in case of trivial
unsatisfiability for instance).
|
void |
setIncomplete(boolean isIncomplete)
Allows the launcher to specifically return an upper bound of the optimal
solution in case of a time out (for maxsat competitions for instance).
|
void |
solve(IProblem problem,
Reader reader,
ILogAble logger,
java.io.PrintWriter out,
long beginTime)
Main solver call: one call for a decision problem, a loop for an
optimization problem.
|
onSolutionFound, onSolutionFound, onUnsatTermination
static final java.lang.String SOLUTION_PREFIX
static final java.lang.String ANSWER_PREFIX
static final java.lang.String CURRENT_OPTIMUM_VALUE_PREFIX
static final ILauncherMode DECISION
static final ILauncherMode OPTIMIZATION
void displayResult(ISolver solver, IProblem problem, ILogAble logger, java.io.PrintWriter out, Reader reader, long beginTime, boolean displaySolutionLine)
solver
- the solver that is launched by the launcherproblem
- the problem that is solvedlogger
- the element that is able to log the resultout
- the printwriter to associate to the solverreader
- the problem readerbeginTime
- the time at which the solver was launcheddisplaySolutionLine
- indicates whether the solution line shound be displayed or not
(not recommended for large solutions)void solve(IProblem problem, Reader reader, ILogAble logger, java.io.PrintWriter out, long beginTime)
problem
- the problem to solvelogger
- the element that is able to log the resultout
- the printwriter to associate to the solverbeginTime
- the time at which the solver startsvoid setIncomplete(boolean isIncomplete)
isIncomplete
- ExitCode getCurrentExitCode()
void setExitCode(ExitCode exitCode)