00001
00002
00003 #ifndef <%= component.name.upcase %>_<%= task.basename.upcase %>_TASK_HPP
00004 #define <%= component.name.upcase %>_<%= task.basename.upcase %>_TASK_HPP
00005
00006 #include "<%= component.name.downcase %>/<%= task.basename %>Base.hpp"
00007
00008 namespace <%= component.name %> {
00009 class <%= task.basename %> : public <%= task.basename %>Base
00010 {
00011 friend class <%= task.basename %>Base;
00012 protected:
00013
00014 <%= task.self_user_methods.sort_by(&:name).
00015 map { |m| m.with_indent(8, :declaration) }.
00016 compact.join("\n") %>
00017
00018 public:
00019 <%= task.basename %>(std::string const& name = "<%= task.name %>"<%= ", TaskCore::TaskState initial_state = Stopped" unless task.fixed_initial_state? %>);
00020
00021 ~<%= task.basename %>();
00022
00036 // bool configureHook();
00037
00043 // bool startHook();
00044
00059 // void updateHook();
00060
00067 // void errorHook();
00068
00072 // void stopHook();
00073
00078 // void cleanupHook();
00079 };
00080 }
00081
00082 #endif
00083