Hybrid A* Planner
 All Classes Namespaces Files Functions Variables Friends Pages
bucketedqueue.h
1 #ifndef _PRIORITYQUEUE2_H_
2 #define _PRIORITYQUEUE2_H_
3 
4 #define MAXDIST 1000
5 #define RESERVE 64
6 
7 #include <vector>
8 #include <set>
9 #include <queue>
10 #include <assert.h>
11 #include "point.h"
12 
13 namespace HybridAStar {
15 
21 
22  public:
24 
29  bool empty();
31  void push(int prio, INTPOINT t);
33  INTPOINT pop();
34 
35  private:
36 
37  static void initSqrIndices();
38  static std::vector<int> sqrIndices;
39  static int numBuckets;
40  int count;
41  int nextBucket;
42 
43  std::vector<std::queue<INTPOINT> > buckets;
44 };
45 }
46 #endif
BucketPrioQueue()
Standard constructor.
Definition: bucketedqueue.cpp:13
bool empty()
Checks whether the Queue is empty.
Definition: bucketedqueue.cpp:26
void push(int prio, INTPOINT t)
push an element
Definition: bucketedqueue.cpp:31
Priority queue for integer coordinates with squared distances as priority.
Definition: bucketedqueue.h:20
INTPOINT pop()
return and pop the element with the lowest squared distance */
Definition: bucketedqueue.cpp:48