entityCreator setup to use bear::Queue
authorPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 4 Aug 2009 04:09:13 +0000 (00:09 -0400)
committerPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 4 Aug 2009 04:09:13 +0000 (00:09 -0400)
src/entityCreator.cpp

index 5e0edaa..34b9a56 100644 (file)
@@ -17,7 +17,7 @@
 
 #include "entityCreator.h"
 
 
 #include "entityCreator.h"
 
-#include <queue>
+#include <bear/Queue.h>
 
 #include "entityManager.h"
 #include "input/inputManager.h"
 
 #include "entityManager.h"
 #include "input/inputManager.h"
 
 /// ***** Private Variables *****
 
 
 /// ***** Private Variables *****
 
-typedef std::queue<Ball*> queBall;
-typedef std::queue<Polygon*> quePoly;
+//static bear::Queue<int> s_test;
+
+typedef bear::Queue<Ball*>      queBall;
+typedef bear::Queue<Polygon*>   quePoly;
 
 static queBall s_startBalls;
 static queBall s_mouseBalls;
 
 static queBall s_startBalls;
 static queBall s_mouseBalls;
@@ -61,6 +63,11 @@ void creator::init()
     Ball* pBall;
     float fStartMass = 5;
 
     Ball* pBall;
     float fStartMass = 5;
 
+    s_startBalls.init();
+    s_mouseBalls.init();
+
+    s_startPolys.init();
+
     pBall = addBall(Vector2(50, 50), 20, cWhite, s_startBalls);
     pBall->mass = fStartMass;
 
     pBall = addBall(Vector2(50, 50), 20, cWhite, s_startBalls);
     pBall->mass = fStartMass;
 
@@ -101,10 +108,14 @@ void creator::init()
 }
 void creator::clean()
 {
 }
 void creator::clean()
 {
-    removeAllBalls(s_startBalls);
+    removeAllPolys(s_startPolys);
+    s_startPolys.fini();
+
     removeAllBalls(s_mouseBalls);
     removeAllBalls(s_mouseBalls);
+    s_mouseBalls.fini();
 
 
-    removeAllPolys(s_startPolys);
+    removeAllBalls(s_startBalls);
+    s_startBalls.fini();
 }
 
 /// ***** Public Methods *****
 }
 
 /// ***** Public Methods *****
@@ -127,7 +138,7 @@ void creator::handleInput()
     if(input::mouseLeft())
         addBall(input::mousePosition(), 10, cCyan);
 
     if(input::mouseLeft())
         addBall(input::mousePosition(), 10, cCyan);
 
-    if(input::mouseRight() && ! s_mouseBalls.empty())
+    if(input::mouseRight() && ! s_mouseBalls.isEmpty())
         removeBall();
 }
 
         removeBall();
 }
 
@@ -140,7 +151,7 @@ Ball* addBall(const Vector2& vecPos,
 {
     Ball* pBall = new Ball(vecPos, fRadius, color);
 
 {
     Ball* pBall = new Ball(vecPos, fRadius, color);
 
-    que.push(pBall);
+    que.pushBack(pBall);
     manager::add(pBall);
 
     return pBall;
     manager::add(pBall);
 
     return pBall;
@@ -151,7 +162,7 @@ Polygon* addPoly(const vector<Vector2>& vecPoints,
 {
     Polygon* pPoly = new Polygon(vecPoints, color);
 
 {
     Polygon* pPoly = new Polygon(vecPoints, color);
 
-    que.push(pPoly);
+    que.pushBack(pPoly);
     manager::add(pPoly);
 
     return pPoly;
     manager::add(pPoly);
 
     return pPoly;
@@ -159,16 +170,16 @@ Polygon* addPoly(const vector<Vector2>& vecPoints,
 
 void removeBall(queBall& que)
 {
 
 void removeBall(queBall& que)
 {
-    Ball* pBall = que.front();
+    Ball* pBall = que.getFront();
 
     manager::remove(pBall);
 
     manager::remove(pBall);
-    que.pop();
+    que.popFront();
 
     delete pBall;
 }
 void removeAllBalls(queBall& que)
 {
 
     delete pBall;
 }
 void removeAllBalls(queBall& que)
 {
-    while(! que.empty() )
+    while(! que.isEmpty() )
     {
         removeBall(que);
     }
     {
         removeBall(que);
     }
@@ -176,16 +187,16 @@ void removeAllBalls(queBall& que)
 
 static void removePoly(quePoly& que)
 {
 
 static void removePoly(quePoly& que)
 {
-    Polygon* pPoly = que.front();
+    Polygon* pPoly = que.getFront();
 
     manager::remove(pPoly);
 
     manager::remove(pPoly);
-    que.pop();
+    que.popFront();
 
     delete pPoly;
 }
 static void removeAllPolys(quePoly& que)
 {
 
     delete pPoly;
 }
 static void removeAllPolys(quePoly& que)
 {
-    while(! que.empty() )
+    while(! que.isEmpty() )
     {
         removePoly(que);
     }
     {
         removePoly(que);
     }