]> rtime.felk.cvut.cz Git - hubacji1/iamcar.git/blobdiff - incl/rrtplanner.h
Merge branch 'release/0.7.0'
[hubacji1/iamcar.git] / incl / rrtplanner.h
index 53195dbdf55fb6d516fe9ffff0497dd27b734d55..4910d13831d9d0cd5df2186fe6c19cf2f3df755c 100644 (file)
@@ -28,46 +28,12 @@ class LaValle1998: public RRTBase {
         public:
                 //using RRTBase::RRTBase;
                 LaValle1998(RRTNode *init, RRTNode *goal);
-
-                // RRT framework
-                RRTNode *(*nn)(
-#if NNVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                std::vector<RRTNode *> &nodes,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *)
-#if NNVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*steer)(
-                                RRTNode *init,
-                                RRTNode *goal);
                 bool next();
 };
 
 class Kuwata2008: public RRTBase {
         public:
                 Kuwata2008(RRTNode *init, RRTNode *goal);
-
-                // RRT framework
-                RRTNode *(*nn)(
-#if NNVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                std::vector<RRTNode *> &nodes,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *)
-#if NNVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*steer)(
-                                RRTNode *init,
-                                RRTNode *goal);
                 bool next();
 };
 
@@ -79,89 +45,31 @@ class Karaman2011: public RRTBase {
                                 std::vector<RRTNode *> nvs);
                 bool rewire(std::vector<RRTNode *> nvs, RRTNode *ns);
         public:
+                Karaman2011();
                 Karaman2011(RRTNode *init, RRTNode *goal);
-
-                // RRT framework
-                RRTNode *(*nn)(
-#if NNVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                std::vector<RRTNode *> &nodes,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *)
-#if NNVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*nv)(
-#if NVVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                RRTNode *root,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *),
-                                float dist
-#if NVVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*steer)(
-                                RRTNode *init,
-                                RRTNode *goal);
                 bool next();
 };
 
 class T1: public RRTBase {
         public:
                 T1(RRTNode *init, RRTNode *goal);
-
-                // RRT framework
-                RRTNode *(*nn)(
-#if NNVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                std::vector<RRTNode *> &nodes,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *)
-#if NNVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*nv)(
-#if NVVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                RRTNode *root,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *),
-                                float dist
-#if NVVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*steer)(
-                                RRTNode *init,
-                                RRTNode *goal);
                 bool next();
 };
 
 class T2: public Karaman2011 {
         public:
                 using Karaman2011::Karaman2011;
-
                 bool next();
                 float goal_cost();
 };
 
 class T3: public RRTBase {
         protected:
+        public:
                 T2 p_root_;
                 T2 p_goal_;
-        public:
+                ~T3();
+                T3();
                 T3(RRTNode *init, RRTNode *goal);
                 bool next();
                 bool link_obstacles(
@@ -182,36 +90,6 @@ class Klemm2015: public Karaman2011 {
                 void swap();
         public:
                 Klemm2015(RRTNode *init, RRTNode *goal);
-
-                // RRT framework
-                RRTNode *(*nn)(
-#if NNVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                std::vector<RRTNode *> &nodes,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *)
-#if NNVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*nv)(
-#if NVVERSION>1
-                                std::vector<RRTNode *> (&nodes)[IYSIZE],
-#else
-                                RRTNode *root,
-#endif
-                                RRTNode *node,
-                                float (*cost)(RRTNode *, RRTNode *),
-                                float dist
-#if NVVERSION>2
-                                , char tree
-#endif
-                                );
-                std::vector<RRTNode *> (*steer)(
-                                RRTNode *init,
-                                RRTNode *goal);
                 bool next();
 };