28 #ifndef CAbstractReactiveNavigationSystem_H
29 #define CAbstractReactiveNavigationSystem_H
44 using namespace mrpt::slam;
45 using namespace mrpt::poses;
64 virtual bool getCurrentPoseAndSpeeds(
mrpt::poses::CPose2D &curPose,
float &curV,
float &curW) = 0;
71 virtual bool changeSpeeds(
float v,
float w ) = 0;
77 return changeSpeeds(0,0);
96 virtual void sendNavigationStartEvent () { std::cout <<
"[sendNavigationStartEvent] Not implemented by the user." << std::endl; }
98 virtual void sendNavigationEndEvent() { std::cout <<
"[sendNavigationEndEvent] Not implemented by the user." << std::endl; }
152 virtual float evaluate( TNavigationParams *params )=0;
156 void navigationStep();
160 virtual void navigate( TNavigationParams *params )=0;
164 virtual void setParams( TNavigationParams *params)=0;
169 virtual void suspend();
210 virtual void performNavigationStep( )=0;
224 EIGEN_MAKE_ALIGNED_OPERATOR_NEW