diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-31 11:31:14 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-31 11:31:14 (GMT) |
commit | eab5c12b2a1b9cfee94e8d0cbe41fb5d78594bb5 (patch) | |
tree | da32c5d07f126a6a0c8de42009f13c170198adaa /src/uscxml/Interpreter.h | |
parent | 6bf9b12de158cb5fc6c94ab41b84c27968ea9340 (diff) | |
download | uscxml-eab5c12b2a1b9cfee94e8d0cbe41fb5d78594bb5.zip uscxml-eab5c12b2a1b9cfee94e8d0cbe41fb5d78594bb5.tar.gz uscxml-eab5c12b2a1b9cfee94e8d0cbe41fb5d78594bb5.tar.bz2 |
More adhoc extensions for interpreters
Diffstat (limited to 'src/uscxml/Interpreter.h')
-rw-r--r-- | src/uscxml/Interpreter.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/uscxml/Interpreter.h b/src/uscxml/Interpreter.h index 8a2b282..dc889e3 100644 --- a/src/uscxml/Interpreter.h +++ b/src/uscxml/Interpreter.h @@ -364,7 +364,7 @@ public: nameIter++; } } - + const std::map<std::string, IOProcessor>& getIOProcessors() { return _ioProcessors; } @@ -377,6 +377,13 @@ public: return _dataModel; } + void setInvoker(const std::string& invokeId, Invoker invoker) { + _dontDestructOnUninvoke.insert(invokeId); + _invokers[invokeId] = invoker; + _invokers[invokeId].setInterpreter(this); + _invokers[invokeId].setInvokeId(invokeId); + } + const std::map<std::string, Invoker>& getInvokers() { return _invokers; } @@ -466,7 +473,8 @@ protected: bool _isInitialized; bool _domIsSetup; bool _userSuppliedDataModel; - + std::set<std::string> _dontDestructOnUninvoke; + bool _isStarted; bool _isRunning; @@ -657,6 +665,9 @@ public: return _impl->getIOProcessors(); } + void setInvoker(const std::string& invokeId, Invoker invoker) { + _impl->setInvoker(invokeId, invoker); + } const std::map<std::string, Invoker>& getInvokers() { return _impl->getInvokers(); } |