summaryrefslogtreecommitdiffstats
path: root/src/uscxml/interpreter/InterpreterDraft6.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/interpreter/InterpreterDraft6.h')
-rw-r--r--src/uscxml/interpreter/InterpreterDraft6.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/uscxml/interpreter/InterpreterDraft6.h b/src/uscxml/interpreter/InterpreterDraft6.h
index 7550124..a958b47 100644
--- a/src/uscxml/interpreter/InterpreterDraft6.h
+++ b/src/uscxml/interpreter/InterpreterDraft6.h
@@ -27,7 +27,8 @@ namespace uscxml {
class InterpreterDraft6 : public InterpreterImpl {
protected:
void interpret();
- void mainEventLoop();
+ InterpreterState step(bool blocking);
+ void stabilize();
void microstep(const Arabica::XPath::NodeSet<std::string>& enabledTransitions);
void enterStates(const Arabica::XPath::NodeSet<std::string>& enabledTransitions);
@@ -44,6 +45,8 @@ protected:
bool isPreemptingTransition(const Arabica::DOM::Node<std::string>& t1, const Arabica::DOM::Node<std::string>& t2);
bool isEnabledTransition(const Arabica::DOM::Node<std::string>& transition, const std::string& event);
+ Arabica::XPath::NodeSet<std::string> getDocumentInitialTransitions();
+
bool isCrossingBounds(const Arabica::DOM::Node<std::string>& transition);
bool isWithinParallel(const Arabica::DOM::Node<std::string>& transition);
Arabica::DOM::Node<std::string> findLCPA(const Arabica::XPath::NodeSet<std::string>& states);