00001 #ifndef bwi_krexec_CallSimulatedElevator_h__guard 00002 #define bwi_krexec_CallSimulatedElevator_h__guard 00003 00004 #include <boost/shared_ptr.hpp> 00005 00006 #include "actasp/Action.h" 00007 00008 namespace bwi_krexec { 00009 00010 struct CallSimulatedElevator : public actasp::Action { 00011 00012 CallSimulatedElevator(); 00013 00014 int paramNumber() const {return 2;} 00015 00016 std::string getName() const{return "callelevator";} 00017 00018 void run(); 00019 00020 bool hasFinished() const; 00021 00022 bool hasFailed() const; 00023 00024 actasp::Action *cloneAndInit(const actasp::AspFluent & fluent) const; 00025 00026 actasp::Action *clone() const {return new CallSimulatedElevator(*this);} 00027 00028 private: 00029 00030 std::vector<std::string> getParameters() const; 00031 00032 std::string elevator; 00033 bool going_up; 00034 00035 bool done; 00036 bool failed; 00037 bool requestSent; 00038 std::string selectedDoor; 00039 00040 std::vector<std::string> doors; 00041 00042 }; 00043 00044 00045 } 00046 00047 #endif