ContentExecutor.h
Go to the documentation of this file.
1 
20 #ifndef CONTENTEXECUTOR_H_A2D592FA
21 #define CONTENTEXECUTOR_H_A2D592FA
22 
23 
24 #include "uscxml/Common.h"
25 #include "uscxml/messages/Data.h"
26 #include <string>
27 
28 // forward declare
29 namespace XERCESC_NS {
30 class DOMElement;
31 }
32 
33 namespace uscxml {
34 
35 class ContentExecutorImpl;
36 class X;
37 
42 class USCXML_API ContentExecutor {
43 public:
45 
46  virtual void process(XERCESC_NS::DOMElement* block);
47  virtual void invoke(XERCESC_NS::DOMElement* invoke);
48  virtual void uninvoke(XERCESC_NS::DOMElement* invoke);
49  virtual Data elementAsData(XERCESC_NS::DOMElement* element, bool asExpression = false);
50  virtual void raiseDoneEvent(XERCESC_NS::DOMElement* state, XERCESC_NS::DOMElement* doneData);
51  virtual std::shared_ptr<ContentExecutorImpl> getImpl() const;
52 
53 protected:
54  std::shared_ptr<ContentExecutorImpl> _impl;
55 };
56 
57 }
58 
59 #endif /* end of include guard: CONTENTEXECUTOR_H_A2D592FA */
Definition: Breakpoint.cpp:26
#define PIMPL_OPERATORS(type)
The usual operators as required for the PIMPL pattern.
Definition: Common.h:68
Definition: Breakpoint.h:30
Definition: ContentExecutor.h:42
Definition: Data.h:44