summaryrefslogtreecommitdiffstats
path: root/src/app/Queue/queue_mgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/Queue/queue_mgr.cpp')
-rw-r--r--src/app/Queue/queue_mgr.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/app/Queue/queue_mgr.cpp b/src/app/Queue/queue_mgr.cpp
new file mode 100644
index 0000000..f7f0b27
--- /dev/null
+++ b/src/app/Queue/queue_mgr.cpp
@@ -0,0 +1,31 @@
+#include "queue_mgr.h"
+
+const TQString QueueManager::defaultName="default";
+TQMap<TQString, Queue*> QueueManager::_queues;
+
+QueueManager::QueueManager()
+{
+ Queue *defaultQ = new Queue(defaultName);
+ _queues.insert(defaultQ->name(), defaultQ);
+}
+
+QueueManager::~QueueManager()
+{
+ TQMap<TQString, Queue*>::iterator it;
+ for (it = _queues.begin(); it != _queues.end(); ++it )
+ delete it.data();
+ _queues.clear();
+}
+
+Queue* QueueManager::queue(const TQString& queueName)
+{
+ if (!_queues.contains(queueName))
+ return 0;
+ return _queues[queueName];
+}
+
+TQValueList<TQString> QueueManager::queues() const
+{
+ return _queues.keys();
+}
+