diff --git a/rs.cc b/rs.cc index 0458ca4..e70a681 100644 --- a/rs.cc +++ b/rs.cc @@ -181,11 +181,11 @@ void RctSys::printSystem(void) void RctSys::ctxAutEnable(void) { assert(ctx_aut == nullptr); - ctx_aut = new CtxAut; + ctx_aut = new CtxAut(opts); } void RctSys::ctxAutAddState(std::string stateName) { assert(ctx_aut != nullptr); - + ctx_aut->addState(stateName); } diff --git a/rsin_driver.cc b/rsin_driver.cc index 7366265..c78679a 100644 --- a/rsin_driver.cc +++ b/rsin_driver.cc @@ -94,3 +94,10 @@ RctSys *rsin_driver::getReactionSystem(void) return rs; } +void rsin_driver::useContextAutomaton(void) +{ + ensureOptionsAllowed(); + use_ctx_aut = true; + getReactionSystem()->ctxAutEnable(); +} + diff --git a/rsin_driver.hh b/rsin_driver.hh index 630755d..f150146 100644 --- a/rsin_driver.hh +++ b/rsin_driver.hh @@ -46,7 +46,7 @@ public: FormRSCTL *getFormRSCTL(void); void ensureOptionsAllowed(void); - void useContextAutomaton(void) { ensureOptionsAllowed(); use_ctx_aut = true; getReactionSystem()->ctxAutEnable(); }; + void useContextAutomaton(void); void useConcentrations(void) { ensureOptionsAllowed(); use_concentrations = true; }; void ensureReactionSystemReady(void);