39 #ifndef MBF_ABSTRACT_NAV__ABSTRACT_EXECUTION_BASE_H_ 40 #define MBF_ABSTRACT_NAV__ABSTRACT_EXECUTION_BASE_H_ 42 #include <boost/thread.hpp> 43 #include <boost/chrono/duration.hpp> 44 #include <boost/chrono/thread_clock.hpp> 46 #include <mbf_abstract_nav/MoveBaseFlexConfig.h> 97 virtual void run() = 0;
boost::condition_variable condition_
condition variable to wake up control thread
std::string name_
the plugin name; not the plugin type!
boost::cv_status waitForStateUpdate(boost::chrono::microseconds const &duration)
std::string getMessage()
Gets the current plugin execution message.
std::string getName()
Returns the name of the corresponding plugin.
bool cancel_
flag for canceling controlling
std::string message_
the last received plugin execution message
virtual bool cancel()=0
Cancel the plugin execution.
uint32_t outcome_
the last received plugin execution outcome
AbstractExecutionBase(std::string name)
boost::thread thread_
the controlling thread object
virtual void preRun()
Optional implementation-specific setup function, called right before execution.
uint32_t getOutcome()
Gets the current plugin execution outcome.
virtual void postRun()
Optional implementation-specific cleanup function, called right after execution.