gft_queue.h
Go to the documentation of this file.
1 
2 #ifndef _GFT_QUEUE_H_
3 #define _GFT_QUEUE_H_
4 
5 #include "gft_common.h"
6 
7 namespace gft{
8  namespace Queue{
9 
13  typedef struct _queue {
14  int *data;
15  int get, put;
16  int nbuckets;
17  int nadded;
18  } Queue;
19 
20  Queue *Create(int nbuckets);
21  void Destroy(Queue **Q);
22 
23  void Push(Queue *Q, int p);
24 
28  int Pop(Queue *Q);
29 
30  void Reset(Queue *Q);
31  bool IsEmpty(Queue *Q);
32  bool IsFull(Queue *Q);
33 
34  } //end Queue namespace
35 } //end gft namespace
36 
37 #endif
38 
39 
bool IsEmpty(Queue *Q)
Definition: gft_queue.cpp:60
struct gft::Queue::_queue Queue
FIFO Queue with circular and growing features.
bool IsFull(Queue *Q)
Definition: gft_queue.cpp:65
int Pop(Queue *Q)
Definition: gft_queue.cpp:44
int * data
Definition: gft_queue.h:14
void Reset(Queue *Q)
Definition: gft_queue.cpp:54
int nbuckets
Definition: gft_queue.h:16
void Push(Queue *Q, int p)
Definition: gft_queue.cpp:34
Header file for common definitions and function prototypes.
Queue * Create(int nbuckets)
Definition: gft_queue.cpp:8
void Destroy(Queue **Q)
Definition: gft_queue.cpp:22
int nadded
Number of elements added.
Definition: gft_queue.h:17
FIFO Queue with circular and growing features.
Definition: gft_queue.h:13
int put
Definition: gft_queue.h:15