summaryrefslogtreecommitdiff
path: root/src/queue.h
diff options
context:
space:
mode:
authorMike Buland <eichlan@xagasoft.com>2009-11-18 21:22:54 +0000
committerMike Buland <eichlan@xagasoft.com>2009-11-18 21:22:54 +0000
commit92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e (patch)
tree1211ddf7e5d1034e5a981df8231590625a5eb73b /src/queue.h
parent509d136e9adb60c56369565b9545e613cac3678e (diff)
downloadlibbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.gz
libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.bz2
libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.tar.xz
libbu++-92fef73aa43f48e01c5c2e884cfd1e6706a3ce3e.zip
Hey, fixed the problems in heap. It should now work properly no matter what the
data or order etc.
Diffstat (limited to 'src/queue.h')
-rw-r--r--src/queue.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/queue.h b/src/queue.h
index 78f6db6..8b5c607 100644
--- a/src/queue.h
+++ b/src/queue.h
@@ -8,14 +8,29 @@
8#ifndef BU_QUEUE_H 8#ifndef BU_QUEUE_H
9#define BU_QUEUE_H 9#define BU_QUEUE_H
10 10
11#include <memory>
12
13namespace Bu 11namespace Bu
14{ 12{
15 template<typename value, typename valuealloc = std::allocator<value> > 13 /**
14 * Queue abstract baseclass
15 */
16 template<typename value>
16 class Queue 17 class Queue
17 { 18 {
18 public: 19 public:
20 Queue()
21 {
22 }
23
24 virtual ~Queue()
25 {
26 }
27
28 virtual void enqueue( const value &i )=0;
29 virtual value dequeue()=0;
30 virtual value &peek()=0;
31 virtual const value &peek() const=0;
32 virtual bool isEmpty() const=0;
33 virtual int getSize() const=0;
19 34
20 private: 35 private:
21 36