Working on CA

This commit is contained in:
Artur Meski
2018-03-03 21:56:03 +00:00
parent cf8c5df9ea
commit c5b4dc91d9
3 changed files with 10 additions and 3 deletions

4
rs.cc
View File

@@ -181,11 +181,11 @@ void RctSys::printSystem(void)
void RctSys::ctxAutEnable(void) void RctSys::ctxAutEnable(void)
{ {
assert(ctx_aut == nullptr); assert(ctx_aut == nullptr);
ctx_aut = new CtxAut; ctx_aut = new CtxAut(opts);
} }
void RctSys::ctxAutAddState(std::string stateName) void RctSys::ctxAutAddState(std::string stateName)
{ {
assert(ctx_aut != nullptr); assert(ctx_aut != nullptr);
ctx_aut->addState(stateName);
} }

View File

@@ -94,3 +94,10 @@ RctSys *rsin_driver::getReactionSystem(void)
return rs; return rs;
} }
void rsin_driver::useContextAutomaton(void)
{
ensureOptionsAllowed();
use_ctx_aut = true;
getReactionSystem()->ctxAutEnable();
}

View File

@@ -46,7 +46,7 @@ public:
FormRSCTL *getFormRSCTL(void); FormRSCTL *getFormRSCTL(void);
void ensureOptionsAllowed(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 useConcentrations(void) { ensureOptionsAllowed(); use_concentrations = true; };
void ensureReactionSystemReady(void); void ensureReactionSystemReady(void);