summaryrefslogtreecommitdiffstats
path: root/src/uscxml/interpreter/InterpreterImpl.cpp
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2017-07-13 20:29:09 (GMT)
committerStefan Radomski <github@mintwerk.de>2017-07-13 20:29:09 (GMT)
commit04b04aa6624caf73ffe4fc33f918e7f48b27da37 (patch)
tree40a8f92a0abd081f59a8aacc4b726dabf3c8f2f5 /src/uscxml/interpreter/InterpreterImpl.cpp
parente0d6ac8097bfd148a9956128a48b7d1addf81e68 (diff)
downloaduscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.zip
uscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.tar.gz
uscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.tar.bz2
LambdaMonitors and prepared use-case examples
Diffstat (limited to 'src/uscxml/interpreter/InterpreterImpl.cpp')
-rw-r--r--src/uscxml/interpreter/InterpreterImpl.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/uscxml/interpreter/InterpreterImpl.cpp b/src/uscxml/interpreter/InterpreterImpl.cpp
index 414dba2..1caa3f0 100644
--- a/src/uscxml/interpreter/InterpreterImpl.cpp
+++ b/src/uscxml/interpreter/InterpreterImpl.cpp
@@ -103,6 +103,9 @@ InterpreterImpl::~InterpreterImpl() {
if (_document)
delete _document;
+ if (_lambdaMonitor)
+ delete _lambdaMonitor;
+
{
std::lock_guard<std::recursive_mutex> lock(_instanceMutex);
_instances.erase(getSessionId());
@@ -139,7 +142,7 @@ void InterpreterImpl::reset() {
if (_microStepper)
_microStepper.reset();
- _isInitialized = false;
+// _isInitialized = false;
_state = USCXML_INSTANTIATED;
// _dataModel.reset();
if (_delayQueue)
@@ -622,4 +625,12 @@ void InterpreterImpl::enqueueAtParent(const Event& event) {
}
+LambdaMonitor& InterpreterImpl::on() {
+ if (_lambdaMonitor == NULL) {
+ _lambdaMonitor = new LambdaMonitor();
+ addMonitor(_lambdaMonitor);
+ }
+ return *_lambdaMonitor;
+}
+
}