00001 // Copyright (C) 2005-2008 Washington University in St Louis, Baylor College of Medicine. All rights reserved 00002 // Author: Tao Ju, Refactored by Sasakthi S. Abeysinghe (sasakthi@gmail.com) 00003 // Description: Grid queue 00004 00005 #ifndef SKELETON_MAKER_GRID_QUEUE2_H 00006 #define SKELETON_MAKER_GRID_QUEUE2_H 00007 00008 #include "grid_queue.h" 00009 00010 namespace wustl_mm { 00011 namespace SkeletonMaker { 00012 00013 class GridQueue2 00014 { 00015 public: 00016 GridQueue2(); 00017 ~GridQueue2(); 00018 gridQueueEle* getNext(); 00019 void reset(); 00020 int getNumElements(); 00021 void prepend(int xx, int yy, int zz); 00022 gridQueueEle * remove(); 00023 gridQueueEle* swap(); 00024 private: 00025 gridQueueEle* head ; 00026 gridQueueEle* pre ; 00027 gridQueueEle* prepre ; 00028 gridQueueEle* cur ; 00029 int numEles ; 00030 }; 00031 00032 } 00033 } 00034 #endif