00001 // -*- C++ -*- 00010 #ifndef AUTOTESTIN_H 00011 #define AUTOTESTIN_H 00012 00013 #include <rtm/Manager.h> 00014 #include <rtm/DataFlowComponentBase.h> 00015 #include <rtm/CorbaPort.h> 00016 #include <rtm/DataInPort.h> 00017 #include <rtm/DataOutPort.h> 00018 #include <rtm/idl/BasicDataTypeSkel.h> 00019 00020 // Service implementation headers 00021 // <rtc-template block="service_impl_h"> 00022 #include "AutoTestServiceSVC_impl.h" 00023 00024 // </rtc-template> 00025 00026 // Service Consumer stub headers 00027 // <rtc-template block="consumer_stub_h"> 00028 00029 // </rtc-template> 00030 00031 using namespace RTC; 00032 00038 class AutoTestIn 00039 : public RTC::DataFlowComponentBase 00040 { 00041 public: 00046 AutoTestIn(RTC::Manager* manager); 00047 00051 ~AutoTestIn(); 00052 00053 // <rtc-template block="public_attribute"> 00054 00055 // </rtc-template> 00056 00057 // <rtc-template block="public_operation"> 00058 00059 // </rtc-template> 00060 00061 /*** 00062 * 00063 * The initialize action (on CREATED->ALIVE transition) 00064 * formaer rtc_init_entry() 00065 * 00066 * @return RTC::ReturnCode_t 00067 * 00068 * 00069 */ 00070 virtual RTC::ReturnCode_t onInitialize(); 00071 00072 /*** 00073 * 00074 * The finalize action (on ALIVE->END transition) 00075 * formaer rtc_exiting_entry() 00076 * 00077 * @return RTC::ReturnCode_t 00078 * 00079 * 00080 */ 00081 // virtual RTC::ReturnCode_t onFinalize(); 00082 00083 /*** 00084 * 00085 * The startup action when ExecutionContext startup 00086 * former rtc_starting_entry() 00087 * 00088 * @param ec_id target ExecutionContext Id 00089 * 00090 * @return RTC::ReturnCode_t 00091 * 00092 * 00093 */ 00094 // virtual RTC::ReturnCode_t onStartup(RTC::UniqueId ec_id); 00095 00096 /*** 00097 * 00098 * The shutdown action when ExecutionContext stop 00099 * former rtc_stopping_entry() 00100 * 00101 * @param ec_id target ExecutionContext Id 00102 * 00103 * @return RTC::ReturnCode_t 00104 * 00105 * 00106 */ 00107 // virtual RTC::ReturnCode_t onShutdown(RTC::UniqueId ec_id); 00108 00109 /*** 00110 * 00111 * The activated action (Active state entry action) 00112 * former rtc_active_entry() 00113 * 00114 * @param ec_id target ExecutionContext Id 00115 * 00116 * @return RTC::ReturnCode_t 00117 * 00118 * 00119 */ 00120 virtual RTC::ReturnCode_t onActivated(RTC::UniqueId ec_id); 00121 00122 /*** 00123 * 00124 * The deactivated action (Active state exit action) 00125 * former rtc_active_exit() 00126 * 00127 * @param ec_id target ExecutionContext Id 00128 * 00129 * @return RTC::ReturnCode_t 00130 * 00131 * 00132 */ 00133 virtual RTC::ReturnCode_t onDeactivated(RTC::UniqueId ec_id); 00134 00135 /*** 00136 * 00137 * The execution action that is invoked periodically 00138 * former rtc_active_do() 00139 * 00140 * @param ec_id target ExecutionContext Id 00141 * 00142 * @return RTC::ReturnCode_t 00143 * 00144 * 00145 */ 00146 virtual RTC::ReturnCode_t onExecute(RTC::UniqueId ec_id); 00147 00148 /*** 00149 * 00150 * The aborting action when main logic error occurred. 00151 * former rtc_aborting_entry() 00152 * 00153 * @param ec_id target ExecutionContext Id 00154 * 00155 * @return RTC::ReturnCode_t 00156 * 00157 * 00158 */ 00159 // virtual RTC::ReturnCode_t onAborting(RTC::UniqueId ec_id); 00160 00161 /*** 00162 * 00163 * The error action in ERROR state 00164 * former rtc_error_do() 00165 * 00166 * @param ec_id target ExecutionContext Id 00167 * 00168 * @return RTC::ReturnCode_t 00169 * 00170 * 00171 */ 00172 // virtual RTC::ReturnCode_t onError(RTC::UniqueId ec_id); 00173 00174 /*** 00175 * 00176 * The reset action that is invoked resetting 00177 * This is same but different the former rtc_init_entry() 00178 * 00179 * @param ec_id target ExecutionContext Id 00180 * 00181 * @return RTC::ReturnCode_t 00182 * 00183 * 00184 */ 00185 // virtual RTC::ReturnCode_t onReset(RTC::UniqueId ec_id); 00186 00187 /*** 00188 * 00189 * The state update action that is invoked after onExecute() action 00190 * no corresponding operation exists in OpenRTm-aist-0.2.0 00191 * 00192 * @param ec_id target ExecutionContext Id 00193 * 00194 * @return RTC::ReturnCode_t 00195 * 00196 * 00197 */ 00198 // virtual RTC::ReturnCode_t onStateUpdate(RTC::UniqueId ec_id); 00199 00200 /*** 00201 * 00202 * The action that is invoked when execution context's rate is changed 00203 * no corresponding operation exists in OpenRTm-aist-0.2.0 00204 * 00205 * @param ec_id target ExecutionContext Id 00206 * 00207 * @return RTC::ReturnCode_t 00208 * 00209 * 00210 */ 00211 // virtual RTC::ReturnCode_t onRateChanged(RTC::UniqueId ec_id); 00212 00213 00214 protected: 00215 // <rtc-template block="protected_attribute"> 00216 00217 // </rtc-template> 00218 00219 // <rtc-template block="protected_operation"> 00220 00221 // </rtc-template> 00222 00223 // DataInPort declaration 00224 // <rtc-template block="inport_declare"> 00225 TimedFloat m_in; 00228 InPort<TimedFloat> m_inIn; 00229 TimedFloatSeq m_seqin; 00232 InPort<TimedFloatSeq> m_seqinIn; 00233 00234 // </rtc-template> 00235 00236 00237 // DataOutPort declaration 00238 // <rtc-template block="outport_declare"> 00239 00240 // </rtc-template> 00241 00242 // CORBA Port declaration 00243 // <rtc-template block="corbaport_declare"> 00246 RTC::CorbaPort m_MyServicePort; 00247 00248 // </rtc-template> 00249 00250 // Service declaration 00251 // <rtc-template block="service_declare"> 00254 MyServiceSVC_impl m_myservice0; 00255 00256 // </rtc-template> 00257 00258 // Consumer declaration 00259 // <rtc-template block="consumer_declare"> 00260 00261 // </rtc-template> 00262 00263 private: 00264 std::ofstream fout; 00265 std::string m_msg; 00266 // <rtc-template block="private_attribute"> 00267 00268 // </rtc-template> 00269 00270 // <rtc-template block="private_operation"> 00271 00272 // </rtc-template> 00273 00274 }; 00275 00276 00277 extern "C" 00278 { 00279 DLL_EXPORT void AutoTestInInit(RTC::Manager* manager); 00280 }; 00281 00282 #endif // AUTOTESTIN_H