SCXMLIOProcessor.h
Go to the documentation of this file.
1 
20 #ifndef SCXMLIOProcessor_H_2CUY93KU
21 #define SCXMLIOProcessor_H_2CUY93KU
22 
23 #include "uscxml/config.h"
25 
26 #ifdef BUILD_AS_PLUGINS
27 #include "uscxml/plugins/Plugins.h"
28 #endif
29 
30 namespace uscxml {
31 
37 public:
39  virtual ~SCXMLIOProcessor();
40  virtual std::shared_ptr<IOProcessorImpl> create(uscxml::IOProcessorCallbacks* callbacks);
41 
42  virtual std::list<std::string> getNames() {
43  std::list<std::string> names;
44  names.push_back("scxml");
45  names.push_back("http://www.w3.org/TR/scxml/#SCXMLEventProcessor");
46  return names;
47  }
48 
49  virtual void eventFromSCXML(const std::string& target, const Event& event);
50  virtual bool isValidTarget(const std::string& target);
51 
53 };
54 
55 #ifdef BUILD_AS_PLUGINS
56 PLUMA_INHERIT_PROVIDER(SCXMLIOProcessor, IOProcessorImpl)
57 #endif
58 
59 }
60 
61 #endif /* end of include guard: SCXMLIOProcessor_H_2CUY93KU */
Definition: Breakpoint.cpp:26
virtual void eventFromSCXML(const std::string &target, const Event &event)
We received an event from the SCXML Interpreter we are associated with.
Definition: SCXMLIOProcessor.cpp:78
virtual bool isValidTarget(const std::string &target)
Determine whether the given target is a valid destination for events.
Definition: SCXMLIOProcessor.cpp:70
The scxml I/O processor as per standard.
Definition: SCXMLIOProcessor.h:36
Abstract base class for IOProcessors implementations.
Definition: IOProcessorImpl.h:54
Definition: Event.h:94
Data getDataModelVariables()
Export a Data object for the `_x['name']` data-model namespace.
Definition: SCXMLIOProcessor.cpp:62
Callbacks available for every IO processor.
Definition: IOProcessorImpl.h:36
Definition: Data.h:44
virtual std::shared_ptr< IOProcessorImpl > create(uscxml::IOProcessorCallbacks *callbacks)
Factory demands a new instance.
Definition: SCXMLIOProcessor.cpp:56
virtual std::list< std::string > getNames()
Return a list of names for types we implement.
Definition: SCXMLIOProcessor.h:42