summaryrefslogtreecommitdiff
path: root/src/theory/ee_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/ee_manager.h')
-rw-r--r--src/theory/ee_manager.h22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/theory/ee_manager.h b/src/theory/ee_manager.h
index aa4bcc66c..14175037e 100644
--- a/src/theory/ee_manager.h
+++ b/src/theory/ee_manager.h
@@ -25,6 +25,9 @@
#include "theory/uf/equality_engine.h"
namespace CVC4 {
+
+class TheoryEngine;
+
namespace theory {
/**
@@ -48,9 +51,10 @@ struct EeTheoryInfo
class EqEngineManager
{
public:
+ EqEngineManager(TheoryEngine& te);
virtual ~EqEngineManager() {}
/**
- * Finish initialize, called by TheoryEngine::finishInit after theory
+ * Initialize theories, called during TheoryEngine::finishInit after theory
* objects have been created but prior to their final initialization. This
* sets up equality engines for all theories.
*
@@ -59,16 +63,6 @@ class EqEngineManager
*/
virtual void initializeTheories() = 0;
/**
- * Finish initialize, called by TheoryEngine::finishInit after theory
- * objects have been created but prior to their final initialization. This
- * sets up equality engines for all theories.
- *
- * This method is context-independent, and is applied once during
- * the lifetime of TheoryEngine (during finishInit).
- */
- virtual void initializeModel(TheoryModel* m,
- eq::EqualityEngineNotify* notify) = 0;
- /**
* Get the equality engine theory information for theory with the given id.
*/
const EeTheoryInfo* getEeTheoryInfo(TheoryId tid) const;
@@ -80,7 +74,13 @@ class EqEngineManager
*/
virtual eq::EqualityEngine* getCoreEqualityEngine() = 0;
+ /** Allocate equality engine that is context-dependent on c with info esi */
+ eq::EqualityEngine* allocateEqualityEngine(EeSetupInfo& esi,
+ context::Context* c);
+
protected:
+ /** Reference to the theory engine */
+ TheoryEngine& d_te;
/** Information related to the equality engine, per theory. */
std::map<TheoryId, EeTheoryInfo> d_einfo;
};
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback