00001 #ifndef EXAMPLE_CLIENT_H 00002 #define EXAMPLE_CLIENT_H 00003 00004 #include <ocra-icub/IcubClient.h> 00005 #include <ocra-recipes/TrajectoryThread.h> 00006 #include <ocra-recipes/ControllerClient.h> 00007 00008 enum THINGS_TO_DO 00009 { 00010 REMOVE_TASK, 00011 ADD_NEW_TASK, 00012 ADD_EXISTING_TASK, 00013 ADD_EXISTING_TASK_NO_OVERWRITE, 00014 NOTHING 00015 }; 00016 00017 00018 class TaskOpsClient : public ocra_recipes::ControllerClient 00019 { 00020 DEFINE_CLASS_POINTER_TYPEDEFS(TaskOpsClient) 00021 00022 public: 00023 TaskOpsClient (std::shared_ptr<ocra::Model> modelPtr, const int loopPeriod); 00024 virtual ~TaskOpsClient (); 00025 00026 protected: 00027 virtual bool initialize(); 00028 virtual void release(); 00029 virtual void loop(); 00030 00031 private: 00032 THINGS_TO_DO thingToDo; 00033 }; 00034 00035 00036 #endif // EXAMPLE_CLIENT_H