00001 00002 #ifndef bwi_krexec_SearchRoom_h__guard 00003 #define bwi_krexec_SearchRoom_h__guard 00004 00005 #include "actasp/Action.h" 00006 00007 #include <ros/ros.h> 00008 00009 #include <sound_play/SoundRequest.h> 00010 00011 #include <string> 00012 00013 namespace bwi_krexec { 00014 00015 class SearchRoom : public actasp::Action{ 00016 public: 00017 SearchRoom(); 00018 00019 int paramNumber() const {return 2;} 00020 00021 std::string getName() const {return "searchroom";} 00022 00023 void run(); 00024 00025 bool hasFinished() const {return done;} 00026 00027 actasp::Action *cloneAndInit(const actasp::AspFluent & fluent) const; 00028 00029 virtual actasp::Action *clone() const {return new SearchRoom(*this);} 00030 00031 private: 00032 00033 std::vector<std::string> getParameters() const; 00034 std::string person; 00035 std::string room; 00036 static ros::Publisher ask_pub; 00037 static bool pub_set; 00038 bool done; 00039 00040 }; 00041 00042 } 00043 00044 #endif 00045