summaryrefslogtreecommitdiff
path: root/src/theory/theory.h
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2018-09-12 13:18:13 -0500
committerGitHub <noreply@github.com>2018-09-12 13:18:13 -0500
commitf4f11801394afa718a5125e4386704a72e74ca48 (patch)
tree05ebc80af205de90000942de8cfb58a906fcc890 /src/theory/theory.h
parent700a21a55d277d7bb4e475849e98aab58d91dba5 (diff)
Initial infrastructure for theory decision manager (#2447)
Diffstat (limited to 'src/theory/theory.h')
-rw-r--r--src/theory/theory.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/theory/theory.h b/src/theory/theory.h
index 5d176a36b..534f091bf 100644
--- a/src/theory/theory.h
+++ b/src/theory/theory.h
@@ -25,8 +25,8 @@
#include <string>
#include <unordered_set>
-#include "context/cdlist.h"
#include "context/cdhashset.h"
+#include "context/cdlist.h"
#include "context/cdo.h"
#include "context/context.h"
#include "expr/node.h"
@@ -39,6 +39,7 @@
#include "smt/logic_request.h"
#include "theory/assertion.h"
#include "theory/care_graph.h"
+#include "theory/decision_manager.h"
#include "theory/logic_info.h"
#include "theory/output_channel.h"
#include "theory/valuation.h"
@@ -130,6 +131,9 @@ private:
*/
QuantifiersEngine* d_quantEngine;
+ /** Pointer to the decision manager. */
+ DecisionManager* d_decManager;
+
/** Extended theory module or NULL. Owned by the theory. */
ExtTheory* d_extTheory;
@@ -404,6 +408,9 @@ public:
return d_quantEngine;
}
+ /** Get the decision manager associated to this theory. */
+ DecisionManager* getDecisionManager() { return d_decManager; }
+
/**
* Finish theory initialization. At this point, options and the logic
* setting are final, and the master equality engine and quantifiers
@@ -461,7 +468,9 @@ public:
virtual void setMasterEqualityEngine(eq::EqualityEngine* eq) { }
/** Called to set the quantifiers engine. */
- virtual void setQuantifiersEngine(QuantifiersEngine* qe);
+ void setQuantifiersEngine(QuantifiersEngine* qe);
+ /** Called to set the decision manager. */
+ void setDecisionManager(DecisionManager* dm);
/** Setup an ExtTheory module for this Theory. Can only be called once. */
void setupExtTheory();
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback