From 50f82fac417bc5b27ecaeb34d4e8034339c5982f Mon Sep 17 00:00:00 2001 From: Aina Niemetz Date: Thu, 5 Mar 2020 13:21:43 -0800 Subject: Move ownership of DecisionEngine into PropEngine. (#3850) This is in preparation of fixing the issue we currently have with reset-assertions. This also removes a competition hack for QF_LRA. --- src/decision/decision_engine.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/decision/decision_engine.cpp') diff --git a/src/decision/decision_engine.cpp b/src/decision/decision_engine.cpp index dc798626e..7d31d930f 100644 --- a/src/decision/decision_engine.cpp +++ b/src/decision/decision_engine.cpp @@ -56,20 +56,21 @@ void DecisionEngine::init() { ITEDecisionStrategy* ds = new decision::JustificationHeuristic(this, d_userContext, d_satContext); - enableStrategy(ds); + d_enabledStrategies.push_back(ds); d_needIteSkolemMap.push_back(ds); } } - -void DecisionEngine::enableStrategy(DecisionStrategy* ds) +void DecisionEngine::shutdown() { - d_enabledStrategies.push_back(ds); -} + Trace("decision") << "Shutting down decision engine" << std::endl; -void DecisionEngine::clearStrategies(){ - for(unsigned i = 0; i < d_enabledStrategies.size(); ++i){ - delete d_enabledStrategies[i]; + Assert(d_engineState == 1); + d_engineState = 2; + + for (DecisionStrategy* s : d_enabledStrategies) + { + delete s; } d_enabledStrategies.clear(); d_needIteSkolemMap.clear(); -- cgit v1.2.3