summaryrefslogtreecommitdiffstats
path: root/src/uscxml/interpreter/BasicEventQueue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/interpreter/BasicEventQueue.cpp')
-rw-r--r--src/uscxml/interpreter/BasicEventQueue.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/uscxml/interpreter/BasicEventQueue.cpp b/src/uscxml/interpreter/BasicEventQueue.cpp
index d484ada..7505f46 100644
--- a/src/uscxml/interpreter/BasicEventQueue.cpp
+++ b/src/uscxml/interpreter/BasicEventQueue.cpp
@@ -74,6 +74,11 @@ void BasicEventQueue::enqueue(const Event& event) {
_cond.notify_all();
}
+void BasicEventQueue::reset() {
+ std::lock_guard<std::recursive_mutex> lock(_mutex);
+ _queue.clear();
+}
+
static void dummyCallback(evutil_socket_t fd, short what, void *arg) {
timeval tv;
tv.tv_sec = 365 * 24 * 3600;
@@ -206,4 +211,10 @@ void BasicDelayedEventQueue::stop() {
}
}
+void BasicDelayedEventQueue::reset() {
+ std::lock_guard<std::recursive_mutex> lock(_mutex);
+ cancelAllDelayed();
+ _queue.clear();
+}
+
} \ No newline at end of file