00001 00025 #ifndef _CONTROLLER_TIMED_POMDP_H_ 00026 #define _CONTROLLER_TIMED_POMDP_H_ 00027 00028 #include <string> 00029 00030 #include <mdm_library/controller_pomdp.h> 00031 00032 00033 00034 namespace mdm_library 00035 { 00036 class ControllerTimedPOMDP : public ControllerPOMDP 00037 { 00038 public: 00039 ControllerTimedPOMDP ( const std::string& problem_file, 00040 const std::string& value_function_file, 00041 const CONTROLLER_STATUS initial_status = STARTED ); 00042 00043 void startController(); 00044 private: 00045 void observationCallback ( const WorldSymbolConstPtr& msg ); 00046 00047 void scheduleTimer(); 00048 void timerCallback ( const ros::TimerEvent& timerEvent ); 00049 void step(); 00050 00051 ros::Timer timer_; 00052 00053 Index o_; 00054 }; 00055 } 00056 00057 #endif