From d37c22c147570922049776df6c4765b146eb06b7 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Sat, 24 Feb 2018 18:38:40 -0500 Subject: Documentation level is in the config interface --- .../logic/model/builder/LogicSolver.xtend | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/logic/model') diff --git a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/logic/model/builder/LogicSolver.xtend b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/logic/model/builder/LogicSolver.xtend index aaf14ebb..06307e2e 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/logic/model/builder/LogicSolver.xtend +++ b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/logic/model/builder/LogicSolver.xtend @@ -8,6 +8,9 @@ import java.util.List import java.util.TreeSet import java.util.SortedSet import java.math.BigDecimal +import java.util.HashMap +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type +import java.util.Map abstract class LogicReasoner { def abstract LogicResult solve(LogicProblem problem, LogicSolverConfiguration configuration, @@ -40,33 +43,62 @@ abstract class LogicSolverConfiguration { public int runtimeLimit = Unlimited /** Max runtime limit in seconds. */ public int memoryLimit = Unlimited + /** Documentation level of the solver. */ + public DocumentationLevel documentationLevel = DocumentationLevel::NONE public var TypeScopes typeScopes = new TypeScopes; public var SolutionScope solutionScope = new SolutionScope } +/** + * Describes the amount of debug information required to write to the workspace. + * + */ +public enum DocumentationLevel { + /** + * The solver writes only temporary files. + */ + NONE, + /** + * The solver is requested to write important artifacts and documents that are constructed during the generation. + * This option should not affect the performance of the solver seriously. + */ + NORMAL, + /** + * The solver is requested create additional documents to aid troubleshooting. + * The documents can constructed at the cost of performance. + */ + FULL +} + /** * Defines the the size of the generated models. Constant Unlimited defines no upper limit to the type. */ public class TypeScopes { public static val Unlimited = -1; + /** + * Sets the Integers that are already in the scope of the problem. + */ public var SortedSet knownIntegers = new TreeSet /** * Sets the number of Integers that has to be used to solve the problem. */ + public var minNewIntegers = 0 public var maxNewIntegers = Unlimited public var SortedSet knownReals = new TreeSet /** * Sets the number of Reals that has to be used to solve the problem. */ + public var minNewReals = 0 public var maxNewReals = Unlimited public var SortedSet knownStrings = new TreeSet /** * Sets the number of Strings that has to be used to solve the problem. */ + public var minNewStrings = 0 public var maxNewStrings = Unlimited /** @@ -77,6 +109,14 @@ public class TypeScopes { * Defines the maximal number of newly added elements. Default value is TypeScopes.Unlimited. */ public var maxNewElements = Unlimited + /** + * + */ + public var Map minNewElementsByType = new HashMap + /** + * + */ + public var Map maxNewElementsByType = new HashMap } /** -- cgit v1.2.3-54-g00ecf