00001 // -*- IDL -*- 00018 /* 00019 * $Log: not supported by cvs2svn $ 00020 * 00021 */ 00022 00023 #ifndef __MANAGER_IDL__ 00024 #define __MANAGER_IDL__ 00025 00026 #include "SDOPackage.idl" 00027 #include "RTC.idl" 00028 00029 module RTM 00030 { 00031 typedef SDOPackage::NVList NVList; 00032 00033 struct ModuleProfile 00034 { 00035 NVList properties; 00036 }; 00037 00038 typedef sequence<ModuleProfile> ModuleProfileList; 00039 00040 struct ManagerProfile 00041 { 00042 NVList properties; 00043 }; 00044 00045 interface Manager 00046 { 00047 // module ֘A 00048 RTC::ReturnCode_t load_module(in string pathname, in string initfunc); 00049 RTC::ReturnCode_t unload_module(in string pathname); 00050 ModuleProfileList get_loadable_modules(); 00051 ModuleProfileList get_loaded_modules(); 00052 00053 // component ֘A 00054 ModuleProfileList get_factory_profiles(); 00055 RTC::RTObject create_component(in string module_name); 00056 RTC::ReturnCode_t delete_component(in string instance_name); 00057 RTC::RTCList get_components(); 00058 RTC::ComponentProfileList get_component_profiles(); 00059 00060 // manager { 00061 ManagerProfile get_profile(); 00062 NVList get_configuration(); 00063 RTC::ReturnCode_t set_configuration(in string name, in string value); 00064 00065 Manager get_owner(); 00066 Manager set_owner(in Manager mgr); 00067 Manager get_child(); 00068 Manager set_child(in Manager mgr); 00069 00070 RTC::ReturnCode_t fork(); 00071 RTC::ReturnCode_t shutdown(); 00072 RTC::ReturnCode_t restart(); 00073 00074 Object get_service(in string name); 00075 // ServiceProfileList get_service_profiles(); 00076 }; 00077 00078 }; // end of namespace RTM 00079 00080 #endif // __MANAGER_IDL__