OpenRTM-aist 2.0.2
読み取り中…
検索中…
一致する文字列を見つけられません
RTC::NamingManager クラス

NamingServer 管理クラス [詳解]

#include <NamingManager.h>

RTC::NamingManager 連携図

クラス

struct  Comps
 コンポーネント管理用構造体 [詳解]
 
struct  Mgr
 ManagerServant管理用構造体 [詳解]
 
struct  Port
 コンポーネント管理用構造体 [詳解]
 

公開メンバ関数

 NamingManager (Manager *manager)
 コンストラクタ
 
virtual ~NamingManager ()
 デストラクタ
 
void registerNameServer (const char *method, const char *name_server)
 NameServer の登録
 
void bindObject (const char *name, const PortBase *port)
 指定したオブジェクトのNamingServiceへバインド
 
void bindObject (const char *name, const RTObject_impl *rtobj)
 
void bindObject (const char *name, const RTM::ManagerServant *mgr)
 指定したManagerServantのNamingServiceへバインド
 
void update ()
 NamingServer の情報の更新
 
void unbindObject (const char *name)
 指定したオブジェクトをNamingServiceからアンバインド
 
void unbindAll ()
 全てのオブジェクトをNamingServiceからアンバインド
 
std::vector< RTObject_impl * > getObjects ()
 バインドされている全てのオブジェクトを取得
 
std::vector< NamingService * > & getNameServices ()
 
RTCList string_to_component (const std::string &name)
 rtcloc形式でRTCのオブジェクトリファレンスを取得
 

限定公開メンバ関数

NamingBasecreateNamingObj (const char *method, const char *name_server)
 NameServer 管理用オブジェクトの生成
 
void bindCompsTo (NamingBase *ns)
 設定済みコンポーネントを NameServer に登録
 
void registerCompName (const char *name, const RTObject_impl *rtobj)
 NameServer に登録するコンポーネントの設定
 
void registerPortName (const char *name, const PortBase *port)
 NameServer に登録するコンポーネントの設定
 
void registerMgrName (const char *name, const RTM::ManagerServant *mgr)
 NameServer に登録するManagerServantの設定
 
void unregisterCompName (const char *name)
 NameServer に登録するコンポーネントの設定解除
 
void unregisterPortName (const char *name)
 
void unregisterMgrName (const char *name)
 NameServer に登録するManagerServantの設定解除
 
void retryConnection (NamingService *ns)
 コンポネントをリバインドする
 

限定公開変数類

std::vector< NamingService * > m_names
 NameServer リスト
 
std::mutex m_namesMutex
 NameServer リストのmutex
 
std::vector< Comps * > m_compNames
 コンポーネントリスト
 
std::mutex m_compNamesMutex
 コンポーネントリストのmutex
 
std::vector< Port * > m_portNames
 コンポーネントリスト
 
std::mutex m_portNamesMutex
 コンポーネントリストのmutex
 
std::vector< Mgr * > m_mgrNames
 ManagerServantリスト
 
std::mutex m_mgrNamesMutex
 ManagerServantリストのmutex
 
Managerm_manager
 マネージャオブジェクト
 
Logger rtclog
 ロガーストリーム
 

詳解

NamingServer 管理クラス

NamingServer 管理用クラス。 コンポーネントのNamingServiceへの登録、解除などを管理する。

から
0.4.0

構築子と解体子

◆ NamingManager()

RTC::NamingManager::NamingManager ( Manager * manager)
explicit

コンストラクタ

コンストラクタ

引数
managerマネージャオブジェクト

◆ ~NamingManager()

virtual RTC::NamingManager::~NamingManager ( )
virtual

デストラクタ

関数詳解

◆ bindCompsTo()

void RTC::NamingManager::bindCompsTo ( NamingBase * ns)
protected

設定済みコンポーネントを NameServer に登録

設定済みコンポーネントを指定した NameServer に登録する。

引数
ns登録対象 NameServer

◆ bindObject() [1/3]

void RTC::NamingManager::bindObject ( const char * name,
const PortBase * port )

指定したオブジェクトのNamingServiceへバインド

指定したオブジェクトを指定した名称で CORBA NamingService へバイ ンドする。

引数
nameバインド時の名称
rtobjバインド対象オブジェクト

◆ bindObject() [2/3]

void RTC::NamingManager::bindObject ( const char * name,
const RTM::ManagerServant * mgr )

指定したManagerServantのNamingServiceへバインド

指定したManagerServantを指定した名称で CORBA NamingService へバ インドする。

引数
nameバインド時の名称
mgrバインド対象ManagerServant

◆ bindObject() [3/3]

void RTC::NamingManager::bindObject ( const char * name,
const RTObject_impl * rtobj )

◆ createNamingObj()

NamingBase * RTC::NamingManager::createNamingObj ( const char * method,
const char * name_server )
protected

NameServer 管理用オブジェクトの生成

指定した型のNameServer 管理用オブジェクトを生成する。

引数
methodNamingService 形式
name_serverNameServer 名称
戻り値
生成した NameServer オブジェクト

◆ getNameServices()

std::vector< NamingService * > & RTC::NamingManager::getNameServices ( )
inline

参照先 m_names.

◆ getObjects()

std::vector< RTObject_impl * > RTC::NamingManager::getObjects ( )

バインドされている全てのオブジェクトを取得

バインドされている全てのオブジェクトを 取得する。

戻り値
バインド済みオブジェクト リスト

◆ registerCompName()

void RTC::NamingManager::registerCompName ( const char * name,
const RTObject_impl * rtobj )
protected

NameServer に登録するコンポーネントの設定

NameServer に登録するコンポーネントを設定する。

引数
nameコンポーネントの登録時名称
rtobj登録対象オブジェクト

◆ registerMgrName()

void RTC::NamingManager::registerMgrName ( const char * name,
const RTM::ManagerServant * mgr )
protected

NameServer に登録するManagerServantの設定

NameServer に登録するManagerServantを設定する。

引数
nameManagerServantの登録時名称
mgr登録対象ManagerServant

◆ registerNameServer()

void RTC::NamingManager::registerNameServer ( const char * method,
const char * name_server )

NameServer の登録

指定した形式の NameServer を登録する。 現在指定可能な形式は CORBA のみ。

引数
methodNamingService の形式
name_server登録する NameServer の名称

◆ registerPortName()

void RTC::NamingManager::registerPortName ( const char * name,
const PortBase * port )
protected

NameServer に登録するコンポーネントの設定

NameServer に登録するコンポーネントを設定する。

引数
nameコンポーネントの登録時名称
rtobj登録対象オブジェクト

◆ retryConnection()

void RTC::NamingManager::retryConnection ( NamingService * ns)
protected

コンポネントをリバインドする

ネームサーバと接続してコンポネントをリバインドする。

引数
nsNameServer

◆ string_to_component()

RTCList RTC::NamingManager::string_to_component ( const std::string & name)

rtcloc形式でRTCのオブジェクトリファレンスを取得

引数
namertcloc形式でのRTC名 rtcloc://localhost:2809/example/ConsoleIn
戻り値
RTCのオブジェクトリファレンスのリスト

◆ unbindAll()

void RTC::NamingManager::unbindAll ( )

全てのオブジェクトをNamingServiceからアンバインド

全てのオブジェクトを CORBA NamingService からアンバインドする。

◆ unbindObject()

void RTC::NamingManager::unbindObject ( const char * name)

指定したオブジェクトをNamingServiceからアンバインド

指定したオブジェクトを NamingService からアンバインドする。

引数
nameアンバインド対象オブジェクト

◆ unregisterCompName()

void RTC::NamingManager::unregisterCompName ( const char * name)
protected

NameServer に登録するコンポーネントの設定解除

NameServer に登録するコンポーネントの設定を解除する。

引数
name設定解除対象コンポーネントの名称

◆ unregisterMgrName()

void RTC::NamingManager::unregisterMgrName ( const char * name)
protected

NameServer に登録するManagerServantの設定解除

NameServer に登録するManagerServantの設定を解除する。

引数
name設定解除対象ManagerServantの名称

◆ unregisterPortName()

void RTC::NamingManager::unregisterPortName ( const char * name)
protected

◆ update()

void RTC::NamingManager::update ( )

NamingServer の情報の更新

設定されている NameServer 内に登録されているオブジェクトの情報を 更新する。

メンバ詳解

◆ m_compNames

std::vector<Comps*> RTC::NamingManager::m_compNames
protected

コンポーネントリスト

◆ m_compNamesMutex

std::mutex RTC::NamingManager::m_compNamesMutex
protected

コンポーネントリストのmutex

◆ m_manager

Manager* RTC::NamingManager::m_manager
protected

マネージャオブジェクト

◆ m_mgrNames

std::vector<Mgr*> RTC::NamingManager::m_mgrNames
protected

ManagerServantリスト

◆ m_mgrNamesMutex

std::mutex RTC::NamingManager::m_mgrNamesMutex
protected

ManagerServantリストのmutex

◆ m_names

std::vector<NamingService*> RTC::NamingManager::m_names
protected

NameServer リスト

参照元 getNameServices().

◆ m_namesMutex

std::mutex RTC::NamingManager::m_namesMutex
protected

NameServer リストのmutex

◆ m_portNames

std::vector<Port*> RTC::NamingManager::m_portNames
protected

コンポーネントリスト

◆ m_portNamesMutex

std::mutex RTC::NamingManager::m_portNamesMutex
protected

コンポーネントリストのmutex

◆ rtclog

Logger RTC::NamingManager::rtclog
protected

ロガーストリーム


このクラス詳解は次のファイルから抽出されました: