00001 // -*- C++ -*- 00020 #ifndef RTC_LOCAL_ICOMPONENTACTION_H 00021 #define RTC_LOCAL_ICOMPONENTACTION_H 00022 00023 #include <rtc/IRTC.h> 00024 00025 namespace RTC 00026 { 00027 namespace Local 00028 { 00038 class IComponentAction 00039 { 00040 public: 00041 virtual ~IComponentAction() {}; 00042 00043 virtual ReturnCode_t on_initialize() = 0; 00044 virtual ReturnCode_t on_finalize() = 0; 00045 00046 virtual ReturnCode_t on_startup(ExecutionContextHandle_t ec_handle) = 0; 00047 virtual ReturnCode_t on_shutdown(ExecutionContextHandle_t ec_handle) = 0; 00048 virtual ReturnCode_t on_activated(ExecutionContextHandle_t ec_handle) = 0; 00049 virtual ReturnCode_t on_deactivated(ExecutionContextHandle_t ec_handle) = 0; 00050 virtual ReturnCode_t on_aborting(ExecutionContextHandle_t ec_handle) = 0; 00051 virtual ReturnCode_t on_error(ExecutionContextHandle_t ec_handle) = 0; 00052 virtual ReturnCode_t on_reset(ExecutionContextHandle_t ec_handle) = 0; 00053 }; 00054 }; // namespace Local 00055 }; // namespace RTC 00056 #endif // RTC_LOCAL_ICOMPONENTACTION_H 00057