Inheritance diagram for uscxml::InterpreterImpl:
[legend]
Collaboration diagram for uscxml::InterpreterImpl:
[legend]

Public Types

enum  Binding { EARLY = 0, LATE = 1 }
 

Public Member Functions

void addMonitor (InterpreterMonitor *monitor)
 
virtual void assign (const std::string &location, const Data &data, const std::map< std::string, std::string > &attrs)
 
virtual void cancel ()
 Cancel and finalize state machine.
 
virtual void cancelDelayed (const std::string &eventId)
 
virtual bool checkValidSendType (const std::string &type, const std::string &target)
 
void cloneFrom (InterpreterImpl *other)
 
void cloneFrom (std::shared_ptr< InterpreterImpl > other)
 
virtual Event dequeueExternal (size_t blockMs)
 
virtual Event dequeueInternal ()
 MicrostepCallbacks.
 
virtual void deserialize (const std::string &encodedState)
 
virtual void enqueue (const std::string &type, const std::string &target, size_t delayMs, const Event &sendEvent)
 
virtual void enqueueAtInvoker (const std::string &invokeId, const Event &event)
 IOProcessorCallbacks.
 
virtual void enqueueAtParent (const Event &event)
 
virtual void enqueueExternal (const Event &event)
 
virtual void enqueueExternalDelayed (const Event &event, size_t delayMs, const std::string &eventUUID)
 
virtual void enqueueInternal (const Event &event)
 ContentExecutorCallbacks.
 
virtual Data evalAsData (const std::string &expr)
 
virtual void eventReady (Event &event, const std::string &eventUUID)
 DelayedEventQueueCallbacks.
 
ActionLanguagegetActionLanguage ()
 
virtual Data getAsData (const std::string &expr)
 
virtual std::string getBaseURL ()
 
virtual DatagetCache ()
 Cache Data.
 
std::list< XERCESC_NS::DOMElement * > getConfiguration ()
 
virtual const EventgetCurrentEvent ()
 
virtual XERCESC_NS::DOMDocument * getDocument () const
 
virtual XERCESC_NS::DOMDocument * getDocument ()
 
virtual Interpreter getInterpreter ()
 
virtual std::string getInvokeId ()
 
virtual const std::map< std::string, Invoker > & getInvokers ()
 
virtual const std::map< std::string, IOProcessor > & getIOProcessors ()
 
virtual size_t getLength (const std::string &expr)
 
virtual Logger getLogger ()
 
virtual std::set< InterpreterMonitor * > getMonitors ()
 Monitoring.
 
virtual const std::string & getName ()
 DataModelCallbacks.
 
virtual const std::string & getSessionId ()
 
InterpreterState getState ()
 
virtual void initData (XERCESC_NS::DOMElement *element)
 
virtual void invoke (XERCESC_NS::DOMElement *invoke)
 Invocations.
 
virtual void invoke (const std::string &type, const std::string &src, bool autoForward, XERCESC_NS::DOMElement *finalize, const Event &invokeEvent)
 
virtual bool isInState (const std::string &stateId)
 
virtual bool isMatched (const Event &event, const std::string &eventDesc)
 
virtual bool isTrue (const std::string &expr)
 
virtual void process (XERCESC_NS::DOMElement *block)
 Executable Content.
 
virtual void raiseDoneEvent (XERCESC_NS::DOMElement *state, XERCESC_NS::DOMElement *doneData)
 
void removeMonitor (InterpreterMonitor *monitor)
 
virtual void reset ()
 Reset state machine.
 
virtual std::string serialize ()
 
void setActionLanguage (const ActionLanguage &al)
 

 
void setFactory (Factory *factory)
 
virtual void setForeach (const std::string &item, const std::string &array, const std::string &index, uint32_t iteration)
 
virtual InterpreterState step (size_t blockMs)
 
virtual void uninvoke (XERCESC_NS::DOMElement *invoke)
 
virtual void uninvoke (const std::string &invokeId)
 
- Public Member Functions inherited from uscxml::DataModelCallbacks
virtual ~DataModelCallbacks ()
 silence virtual destructor warning from swig
 
- Public Member Functions inherited from uscxml::IOProcessorCallbacks
virtual ~IOProcessorCallbacks ()
 silence virtual destructor warning from swig
 
- Public Member Functions inherited from uscxml::InvokerCallbacks
virtual ~InvokerCallbacks ()
 silence virtual destructor warning from swig
 

Static Public Member Functions

static std::map< std::string, std::weak_ptr< InterpreterImpl > > getInstances ()
 

Protected Member Functions

virtual void init ()
 

Static Protected Member Functions

static void addInstance (std::shared_ptr< InterpreterImpl > instance)
 

Protected Attributes

ActionLanguage _al
 
std::set< std::string > _autoForwarders
 
URL _baseURL
 
Binding _binding
 
Data _cache
 
Event _currEvent
 
DataModel _dataModel
 
std::map< std::string, std::tuple< std::string, std::string, std::string > > _delayedEventTargets
 
std::recursive_mutex _delayMutex
 
DelayedEventQueue _delayQueue
 
XERCESC_NS::DOMDocument * _document
 
ContentExecutor _execContent
 
EventQueue _externalQueue
 
Factory_factory
 
std::map< std::string, XERCESC_NS::DOMElement * > _finalize
 
EventQueue _internalQueue
 
std::string _invokeId
 
Event _invokeReq
 
std::map< std::string, Invoker_invokers
 
std::map< std::string, IOProcessor_ioProcs
 
bool _isInitialized
 
Logger _logger = Logger::getDefault()
 
std::string _md5
 
MicroStep _microStepper
 
std::set< InterpreterMonitor * > _monitors
 
std::string _name
 
EventQueue _parentQueue
 
XERCESC_NS::DOMElement * _scxml
 
std::recursive_mutex _serializationMutex
 
std::string _sessionId
 
InterpreterState _state
 
std::string _xmlNS
 
std::string _xmlPrefix
 

Static Protected Attributes

static std::recursive_mutex _instanceMutex
 
static std::map< std::string, std::weak_ptr< InterpreterImpl > > _instances
 

Friends

class Debugger
 
class DebugSession
 
class Interpreter
 
class InterpreterIssue
 
class SCXMLIOProcessor
 
class TransformerImpl
 
class USCXMLInvoker
 

The documentation for this class was generated from the following files: