20 #ifndef MICROSTEPIMPL_H_98233709
21 #define MICROSTEPIMPL_H_98233709
34 class InterpreterMonitor;
43 virtual Event dequeueInternal() = 0;
44 virtual Event dequeueExternal(
size_t blockMs) = 0;
45 virtual bool isMatched(
const Event& event,
const std::string& eventDesc) = 0;
46 virtual void raiseDoneEvent(XERCESC_NS::DOMElement* state, XERCESC_NS::DOMElement* doneData) = 0;
49 virtual bool isTrue(
const std::string& expr) = 0;
50 virtual void initData(XERCESC_NS::DOMElement* element) = 0;
53 virtual void process(XERCESC_NS::DOMElement* block) = 0;
56 virtual void invoke(XERCESC_NS::DOMElement* invoke) = 0;
57 virtual void uninvoke(XERCESC_NS::DOMElement* invoke) = 0;
60 virtual std::set<InterpreterMonitor*> getMonitors() = 0;
62 virtual Logger getLogger() = 0;
65 virtual Data& getCache() = 0;
83 virtual InterpreterState step(
size_t blockMs) = 0;
84 virtual void reset() = 0;
85 virtual bool isInState(
const std::string& stateId) = 0;
86 virtual std::list<XERCESC_NS::DOMElement*> getConfiguration() = 0;
88 virtual void init(XERCESC_NS::DOMElement* scxml) = 0;
89 virtual void markAsCancelled() = 0;
91 virtual void deserialize(
const Data& encodedState) = 0;
92 virtual Data serialize() = 0;
Definition: MicroStepImpl.h:73
Definition: Breakpoint.cpp:26
Definition: MicroStepImpl.h:40
Central class to interpret and process SCXML documents.
Definition: Interpreter.h:79