20#ifndef RTM_MANAGERSERVANT_H
21#define RTM_MANAGERSERVANT_H
24#include <rtm/idl/ManagerSkel.h>
64 :
public virtual POA_RTM::Manager,
65 public virtual PortableServer::RefCountServantBase
121 RTC::ReturnCode_t
load_module(
const char* pathname,
const char* initfunc)
override;
510 RTC::ReturnCode_t
fork()
override;
645 RTM::ManagerList& mlist);
761 ::RTM::Manager_var m_objref{RTM::Manager::_nil()};
770 ::RTM::ManagerList m_masters;
779 ::std::mutex m_masterMutex;
788 ::RTM::ManagerList m_slaves;
797 ::std::mutex m_slaveMutex;
806 CORBA::Boolean m_isMaster{
false};
817 RTM::Manager_var m_mgr;
820 is_equiv(RTM::Manager_ptr mgr)
821 : m_mgr(
RTM::Manager::_duplicate(mgr)) {}
822#ifdef ORB_IS_ORBEXPRESS
823 bool operator()(RTM::Manager_var mgr)
825 return m_mgr->_is_equivalent(mgr.in());
828 bool operator()(RTM::Manager_ptr mgr)
830 return m_mgr->_is_equivalent(mgr);
853 std::string m_vendor;
854 std::string m_category;
855 std::string m_impl_id;
856 std::string m_language;
857 std::string m_version;
RT component logger class
Logger クラス
Definition SystemLogger.h:101
Manager クラス
Definition Manager.h:91
static Manager & instance()
マネージャのインスタンスの取得
Definition ManagerServant.h:840
static const unsigned int prof_list_size
Definition ManagerServant.h:844
static const char * prof_list[prof_list_size]
Definition ManagerServant.h:845
CompParam(std::string module_name)
ManagerのCORBA化クラス
Definition ManagerServant.h:66
RTC::ReturnCode_t remove_master_manager(RTM::Manager_ptr mgr) override
マスターマネージャの削除
RTC::ReturnCode_t remove_slave_manager(RTM::Manager_ptr mgr) override
スレーブマネージャの削除
RTM::ManagerList * get_slave_managers() override
スレーブマネージャの取得
RTM::Manager_ptr findManager(const std::string &host_port)
Managerのリファレンスを検索する。
RTC::RTObject_ptr create_component(const char *module_name) override
コンポーネントを生成する
RTM::ModuleProfileList * get_loaded_modules() override
ロード済みのモジュールのプロファイルを取得する
RTC::ReturnCode_t add_master_manager(RTM::Manager_ptr mgr) override
マスターマネージャの追加
RTM::ModuleProfileList * get_factory_profiles() override
コンポーネントファクトリのプロファイルを取得する
~ManagerServant() override
仮想デストラクタ
RTM::Manager_ptr getObjRef() const
Managerのリファレンスを取得する。
std::string getParameterByModulename(const std::string ¶m_name, std::string &module_name)
RTM::ManagerList * get_master_managers() override
マスターマネージャの取得
void updateMasterManager()
::CORBA::Boolean is_master() override
マネージャがマスターかどうか
RTC::RTCList * get_components_by_name(const char *name) override
指定名のRTCオブジェクトリファレンスを取得
RTC::ComponentProfileList * get_component_profiles() override
起動中のコンポーネントプロファイルのリストを取得する
RTC::ReturnCode_t restart() override
再起動する。
RTC::ReturnCode_t set_configuration(const char *name, const char *value) override
マネージャのコンフィギュレーションを設定する
RTC::ReturnCode_t shutdown() override
shutdownする
RTC::RTObject_ptr createComponentByAddress(std::string &create_arg, std::string &mgrstr)
bool createINSManager()
INSManagerの生成
RTC::ReturnCode_t load_module(const char *pathname, const char *initfunc) override
Loading a module
CORBA::Object_ptr get_service(const char *name) override
RTCのリファレンスを取得する。
RTM::ManagerProfile * get_profile() override
マネージャのプロファイルを取得する
RTC::RTObject_ptr createComponentByManagerName(std::string &create_arg, std::string &mgrstr)
指定のマネージャでRTCを起動する
RTC::ReturnCode_t delete_component(const char *instance_name) override
コンポーネントを削除する
RTM::ModuleProfileList * get_loadable_modules() override
ロード可能なモジュールのプロファイルを取得する
RTM::Manager_ptr findManagerByName(const std::string &mgr_name)
指定名のマネージャを取得
RTM::Manager_ptr findManagerFromList(const std::string &name, RTM::ManagerList &mlist)
マネージャのリストから指定名を持つマネージャを取得
static bool isProcessIDManager(const std::string &mgrname)
RTC::ReturnCode_t unload_module(const char *pathname) override
モジュールをアンロードする
RTC::RTCList * get_components() override
起動中のコンポーネントのリストを取得する
RTC::ReturnCode_t add_slave_manager(RTM::Manager_ptr mgr) override
スレーブマネージャの追加
RTM::NVList * get_configuration() override
マネージャのコンフィギュレーションを取得する
RTC::ReturnCode_t fork() override
プロセスのコピーを生成する
RT-Middleware
Definition FactoryInit.h:22