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 typedef sequence<Manager> ManagerList; 00047 00048 interface Manager 00049 { 00050 // module 関連 00074 RTC::ReturnCode_t load_module(in string pathname, in string initfunc); 00075 00095 RTC::ReturnCode_t unload_module(in string pathname); 00096 00114 ModuleProfileList get_loadable_modules(); 00115 00133 ModuleProfileList get_loaded_modules(); 00134 00135 // component 関連 00155 ModuleProfileList get_factory_profiles(); 00156 00175 RTC::RTObject create_component(in string module_name); 00176 00195 RTC::ReturnCode_t delete_component(in string instance_name); 00196 00214 RTC::RTCList get_components(); 00215 00235 RTC::ComponentProfileList get_component_profiles(); 00236 00237 // manager 基本 00255 ManagerProfile get_profile(); 00256 00274 NVList get_configuration(); 00275 00297 RTC::ReturnCode_t set_configuration(in string name, in string value); 00298 00318 boolean is_master(); 00319 00341 ManagerList get_master_managers(); 00342 00362 RTC::ReturnCode_t add_master_manager(in Manager mgr); 00363 00383 RTC::ReturnCode_t remove_master_manager(in Manager mgr); 00384 00406 ManagerList get_slave_managers(); 00426 RTC::ReturnCode_t add_slave_manager(in Manager mgr); 00427 00447 RTC::ReturnCode_t remove_slave_manager(in Manager mgr); 00448 00449 RTC::ReturnCode_t fork(); 00450 RTC::ReturnCode_t shutdown(); 00451 RTC::ReturnCode_t restart(); 00452 00453 Object get_service(in string name); 00454 // ServiceProfileList get_service_profiles(); 00455 }; 00456 00457 }; // end of namespace RTM 00458 00459 #endif // __MANAGER_IDL__