summaryrefslogtreecommitdiffstats
path: root/src/app/Queue/queue.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2025-08-28 22:44:34 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2025-08-31 23:25:26 +0900
commit086012dcad8a976a0dabbb7cbc20c9cb612cdfa9 (patch)
tree56c9bfcfd7cd13b17707dc8862f26932e9814973 /src/app/Queue/queue.h
parent409e7f624d202c7f96b4d0ab2da1834135169f8b (diff)
downloadkrusader-master.tar.gz
krusader-master.zip
Restructure source foldersHEADmaster
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'src/app/Queue/queue.h')
-rw-r--r--src/app/Queue/queue.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/app/Queue/queue.h b/src/app/Queue/queue.h
new file mode 100644
index 0000000..8f3a598
--- /dev/null
+++ b/src/app/Queue/queue.h
@@ -0,0 +1,33 @@
+#ifndef QUEUE_H
+#define QUEUE_H
+
+#include <tqobject.h>
+#include <tdeio/jobclasses.h>
+#include <tqptrlist.h>
+
+/**
+ * Queue can hold anything which inherits TDEIO::Job, and schedule it, start it, stop etc...
+ * the main reason to hold the Job itself (at least for phase 1) is to keep the code
+ * in krusader relatively unchaged, and allow to create the job as usual and choose if
+ * to start it, or queue it.
+ *
+ */
+class Queue: public TQObject
+{
+ TQ_OBJECT
+
+public:
+ Queue(const TQString& name);
+ virtual ~Queue();
+
+ inline const TQString& name() const { return _name; }
+ void enqueue(TDEIO::Job *job);
+
+protected:
+ void dumpQueue();
+
+ TQString _name;
+ TQPtrList<TDEIO::Job> _jobs;
+};
+
+#endif // QUEUE_H