OpenRTM-aist  1.2.1
クラス | 公開型 | 公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
RTC::RTObject_impl クラス

RTコンポーネントクラス [詳解]

#include <RTObject.h>

RTC::RTObject_impl の継承関係図
Inheritance graph
[凡例]
RTC::RTObject_impl 連携図
Collaboration graph
[凡例]

クラス

struct  deactivate_comps
 RTC 非活性化用ファンクタ [詳解]
 
struct  ec_copy
 ExecutionContext コピーファンクタ [詳解]
 
struct  ec_find
 ExecutionContext 検索用ファンクタ [詳解]
 
struct  nv_name
 NVList 検索用ファンクタ [詳解]
 
class  SdoServiceConsumerTerminator
 
struct  svc_name
 SDOService のプロファイルリストからidでサーチするためのファンクタ [詳解]
 

公開型

typedef PreComponentActionListener PreCompActionListener
 PreComponentActionListener リスナを追加する [詳解]
 
typedef PreComponentActionListenerType PreCompActionListenerType
 
typedef PostComponentActionListener PostCompActionListener
 PostComponentActionListener リスナを追加する [詳解]
 
typedef PostComponentActionListenerType PostCompActionListenerType
 
typedef ExecutionContextActionListenerType ECActionListenerType
 ExecutionContextActionListener リスナを追加する [詳解]
 
typedef ExecutionContextActionListener ECActionListener
 

公開メンバ関数

 RTObject_impl (Manager *manager)
 コンストラクタ [詳解]
 
 RTObject_impl (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa)
 コンストラクタ [詳解]
 
virtual ~RTObject_impl (void)
 仮想デストラクタ [詳解]
 
virtual ReturnCode_t initialize () throw (CORBA::SystemException)
 [CORBA interface] RTCを初期化する [詳解]
 
virtual ReturnCode_t finalize () throw (CORBA::SystemException)
 [CORBA interface] RTC を終了する [詳解]
 
virtual ReturnCode_t exit () throw (CORBA::SystemException)
 [CORBA interface] RTC がオーナーである ExecutionContext を 停止させ、そのコンテンツと共に終了させる [詳解]
 
virtual CORBA::Boolean is_alive (ExecutionContext_ptr exec_context) throw (CORBA::SystemException)
 [CORBA interface] RTC が Alive 状態であるかどうか確認する。 [詳解]
 
virtual ExecutionContext_ptr get_context (UniqueId exec_handle) throw (CORBA::SystemException)
 [CORBA interface] ExecutionContextを取得する [詳解]
 
virtual ExecutionContextList * get_owned_contexts () throw (CORBA::SystemException)
 [CORBA interface] 所有する ExecutionContextListを 取得する [詳解]
 
virtual ExecutionContextList * get_participating_contexts () throw (CORBA::SystemException)
 [CORBA interface] 参加している ExecutionContextList を取得する [詳解]
 
virtual ExecutionContextHandle_t get_context_handle (ExecutionContext_ptr cxt) throw (CORBA::SystemException)
 [CORBA interface] ExecutionContext のハンドルを返す [詳解]
 
UniqueId attach_context (ExecutionContext_ptr exec_context) throw (CORBA::SystemException)
 [CORBA interface] ExecutionContextをattachする [詳解]
 
UniqueId bindContext (ExecutionContext_ptr exec_context)
 
ReturnCode_t detach_context (UniqueId exec_handle) throw (CORBA::SystemException)
 [CORBA interface] ExecutionContextをdetachする [詳解]
 
virtual ComponentProfile * get_component_profile () throw (CORBA::SystemException)
 [RTObject CORBA interface] コンポーネントプロファイルを取得する [詳解]
 
virtual PortServiceList * get_ports () throw (CORBA::SystemException)
 [RTObject CORBA interface] ポートを取得する [詳解]
 
virtual ReturnCode_t on_initialize () throw (CORBA::SystemException)
 [RTObject CORBA interface] ExecutionContextAdmin を取得する [詳解]
 
virtual ReturnCode_t on_finalize () throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC の終了 [詳解]
 
virtual ReturnCode_t on_startup (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC の開始 [詳解]
 
virtual ReturnCode_t on_shutdown (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC の停止 [詳解]
 
virtual ReturnCode_t on_activated (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC の活性化 [詳解]
 
virtual ReturnCode_t on_deactivated (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC の非活性化 [詳解]
 
virtual ReturnCode_t on_aborting (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC のエラー状態への遷移 [詳解]
 
virtual ReturnCode_t on_error (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC のエラー処理 [詳解]
 
virtual ReturnCode_t on_reset (UniqueId exec_handle) throw (CORBA::SystemException)
 [ComponentAction CORBA interface] RTC のリセット [詳解]
 
virtual ReturnCode_t on_execute (UniqueId exec_handle) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] RTC の定常処理(第一周期) [詳解]
 
virtual ReturnCode_t on_state_update (UniqueId exec_handle) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] RTC の定常処理(第二周期) [詳解]
 
virtual ReturnCode_t on_rate_changed (UniqueId exec_handle) throw (CORBA::SystemException)
 [DataFlowComponentAction CORBA interface] 実行周期変更通知 [詳解]
 
virtual SDOPackage::OrganizationList * get_owned_organizations () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Organization リストの取得 [詳解]
 
virtual char * get_sdo_id () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO ID の取得 [詳解]
 
virtual char * get_sdo_type () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO タイプの取得 [詳解]
 
virtual SDOPackage::DeviceProfile * get_device_profile () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO DeviceProfile リストの取得 [詳解]
 
virtual SDOPackage::ServiceProfileList * get_service_profiles () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO ServiceProfile の取得 [詳解]
 
virtual SDOPackage::ServiceProfile * get_service_profile (const char *id) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] 特定のServiceProfileの取得 [詳解]
 
virtual SDOPackage::SDOService_ptr get_sdo_service (const char *id) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] 指定された SDO Service の取得 [詳解]
 
virtual SDOPackage::Configuration_ptr get_configuration () throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Configuration オブジェクトの取得 [詳解]
 
virtual SDOPackage::Monitoring_ptr get_monitoring () throw (CORBA::SystemException, SDOPackage::InterfaceNotImplemented, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Monitoring オブジェクトの取得 [詳解]
 
virtual SDOPackage::OrganizationList * get_organizations () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] Organization リストの取得 [詳解]
 
virtual SDOPackage::NVList * get_status_list () throw (CORBA::SystemException, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO Status リストの取得 [詳解]
 
virtual CORBA::Any * get_status (const char *name) throw (CORBA::SystemException, SDOPackage::InvalidParameter, SDOPackage::NotAvailable, SDOPackage::InternalError)
 [SDO interface] SDO Status の取得 [詳解]
 
const char * getInstanceName ()
 [local interface] インスタンス名の取得 [詳解]
 
void setInstanceName (const char *instance_name)
 [local interface] インスタンス名の設定 [詳解]
 
const char * getTypeName ()
 [local interface] 型名の取得 [詳解]
 
const char * getDescription ()
 [local interface] Description の取得 [詳解]
 
const char * getVersion ()
 [local interface] バージョン情報の取得 [詳解]
 
const char * getVendor ()
 [local interface] ベンダー情報の取得 [詳解]
 
const char * getCategory ()
 [local interface] カテゴリ情報の取得 [詳解]
 
std::vector< std::string > getNamingNames ()
 [local interface] Naming Server 情報の取得 [詳解]
 
void setObjRef (const RTObject_ptr rtobj)
 [local interface] オブジェクトリファレンスの設定 [詳解]
 
RTObject_ptr getObjRef () const
 [local interface] オブジェクトリファレンスの取得 [詳解]
 
void setProperties (const coil::Properties &prop)
 [local interface] RTC のプロパティを設定する [詳解]
 
coil::PropertiesgetProperties ()
 [local interface] RTC のプロパティを取得する [詳解]
 
template<typename VarType >
bool bindParameter (const char *param_name, VarType &var, const char *def_val, bool(*trans)(VarType &, const char *)=coil::stringTo)
 コンフィギュレーションパラメータの設定 [詳解]
 
ConfigAdmingetConfigService ()
 コンフィギュレーションサービスを取得する [詳解]
 
void updateParameters (const char *config_set)
 コンフィギュレーションパラメータの更新(ID指定) [詳解]
 
bool addPort (PortBase &port)
 [local interface] Port を登録する [詳解]
 
bool addPort (PortService_ptr port)
 [local interface] Port を登録する [詳解]
 
bool addPort (CorbaPort &port)
 [local interface] Port を登録する [詳解]
 
void registerPort (PortBase &port)
 [local interface] Port を登録する [詳解]
 
void registerPort (PortService_ptr port)
 [local interface] Port を登録する [詳解]
 
void registerPort (CorbaPort &port)
 [local interface] Port を登録する [詳解]
 
bool addInPort (const char *name, InPortBase &inport)
 [local interface] DataInPort を登録する [詳解]
 
const std::vector< InPortBase * > & getInPorts () const
 
const std::vector< OutPortBase * > & getOutPorts () const
 
void registerInPort (const char *name, InPortBase &inport)
 [local interface] DataInPort を登録する [詳解]
 
bool addOutPort (const char *name, OutPortBase &outport)
 [local interface] DataOutPort を登録する [詳解]
 
void registerOutPort (const char *name, OutPortBase &outport)
 [local interface] DataOutPort を登録する [詳解]
 
bool removeInPort (InPortBase &port)
 [local interface] InPort の登録を削除する [詳解]
 
bool removeOutPort (OutPortBase &port)
 [local interface] OutPort の登録を削除する [詳解]
 
bool removePort (PortBase &port)
 [local interface] Port の登録を削除する [詳解]
 
bool removePort (PortService_ptr port)
 [local interface] Port の登録を削除する [詳解]
 
bool removePort (CorbaPort &port)
 [local interface] Port の登録を削除する [詳解]
 
void deletePort (PortBase &port)
 [local interface] Port の登録を削除する [詳解]
 
void deletePort (PortService_ptr port)
 [local interface] Port の登録を削除する [詳解]
 
void deletePort (CorbaPort &port)
 [local interface] Port の登録を削除する [詳解]
 
void deletePortByName (const char *port_name)
 [local interface] 名前指定により Port の登録を削除する [詳解]
 
ExecutionContext_ptr getExecutionContext (RTC::UniqueId ec_id)
 [local interface] 実行コンテキストを取得する [詳解]
 
double getExecutionRate (RTC::UniqueId ec_id)
 [local interface] 実行コンテキストの実行レートを取得する [詳解]
 
ReturnCode_t setExecutionRate (RTC::UniqueId ec_id, double rate)
 [local interface] 実行コンテキストの実行レートを設定する [詳解]
 
bool isOwnExecutionContext (RTC::UniqueId ec_id)
 [local interface] 実行コンテキストの所有権を調べる [詳解]
 
ReturnCode_t deactivate (RTC::UniqueId ec_id)
 [local interface] 状態を Inactive に遷移させる [詳解]
 
ReturnCode_t activate (RTC::UniqueId ec_id)
 [local interface] 状態を Active に遷移させる [詳解]
 
ReturnCode_t reset (RTC::UniqueId ec_id)
 [local interface] 状態をリセットし Inactive に遷移させる [詳解]
 
bool addSdoServiceProvider (const SDOPackage::ServiceProfile &prof, SdoServiceProviderBase *provider)
 [local interface] SDO service provider をセットする [詳解]
 
bool removeSdoServiceProvider (const char *id)
 [local interface] SDO service provider を削除する [詳解]
 
bool addSdoServiceConsumer (const SDOPackage::ServiceProfile &prof)
 [local interface] SDO service provider をセットする [詳解]
 
bool removeSdoServiceConsumer (const char *id)
 [local interface] SDO service provider を削除する [詳解]
 
void removeSdoServiceConsumerStartThread (const char *id)
 [local interface] SDO service provider を別スレッドで削除する [詳解]
 
bool readAll ()
 InPort のデータを読み込む。 [詳解]
 
bool writeAll ()
 OutPort のwrite()メソッドをコールする。 [詳解]
 
void setReadAll (bool read=true, bool completion=false)
 onExecute()実行前でのreadAll()メソッドの呼出を有効または無効にする。 [詳解]
 
void setWriteAll (bool write=true, bool completion=false)
 onExecute()実行後にwriteAll()メソッドの呼出を有効または無効にする。 [詳解]
 
void finalizePorts ()
 全 Port の登録を削除する [詳解]
 
void finalizeContexts ()
 ExecutionContextBaseリストの登録を削除する [詳解]
 
void addPreComponentActionListener (PreComponentActionListenerType listener_type, PreComponentActionListener *listener, bool autoclean=true)
 
template<class Listener >
PreComponentActionListeneraddPreComponentActionListener (PreCompActionListenerType listener_type, Listener &obj, void(Listener::*memfunc)(UniqueId ec_id))
 
void removePreComponentActionListener (PreComponentActionListenerType listener_type, PreComponentActionListener *listener)
 PreComponentActionListener リスナを削除する [詳解]
 
void addPostComponentActionListener (PostComponentActionListenerType listener_type, PostComponentActionListener *listener, bool autoclean=true)
 
template<class Listener >
PostComponentActionListeneraddPostComponentActionListener (PostCompActionListenerType listener_type, Listener &obj, void(Listener::*memfunc)(UniqueId ec_id, ReturnCode_t ret))
 
void removePostComponentActionListener (PostComponentActionListenerType listener_type, PostComponentActionListener *listener)
 PostComponentActionListener リスナを削除する [詳解]
 
void addPortActionListener (PortActionListenerType listener_type, PortActionListener *listener, bool autoclean=true)
 PortActionListener リスナを追加する [詳解]
 
template<class Listener >
PortActionListeneraddPortActionListener (PortActionListenerType listener_type, Listener &obj, void(Listener::*memfunc)(const RTC::PortProfile &))
 
void removePortActionListener (PortActionListenerType listener_type, PortActionListener *listener)
 PortActionListener リスナを削除する [詳解]
 
void addExecutionContextActionListener (ECActionListenerType listener_type, ECActionListener *listener, bool autoclean=true)
 
template<class Listener >
ECActionListeneraddExecutionContextActionListener (ECActionListenerType listener_type, Listener &obj, void(Listener::*memfunc)(UniqueId))
 
void removeExecutionContextActionListener (ECActionListenerType listener_type, ECActionListener *listener)
 ExecutionContextActionListener リスナを削除する [詳解]
 
void addPortConnectListener (PortConnectListenerType listener_type, PortConnectListener *listener, bool autoclean=true)
 PortConnectListener リスナを追加する [詳解]
 
template<class Listener >
PortConnectListeneraddPortConnectListener (PortConnectListenerType listener_type, Listener &obj, void(Listener::*memfunc)(const char *, ConnectorProfile &))
 
void removePortConnectListener (PortConnectListenerType listener_type, PortConnectListener *listener)
 PortConnectListener リスナを削除する [詳解]
 
void addPortConnectRetListener (PortConnectRetListenerType listener_type, PortConnectRetListener *listener, bool autoclean=true)
 PortConnectRetListener リスナを追加する [詳解]
 
template<class Listener >
PortConnectRetListeneraddPortConnectRetListener (PortConnectRetListenerType listener_type, Listener &obj, void(Listener::*memfunc)(const char *, ConnectorProfile &, ReturnCode_t))
 
void removePortConnectRetListener (PortConnectRetListenerType listener_type, PortConnectRetListener *listener)
 PortConnectRetListener リスナを削除する [詳解]
 
void addConfigurationParamListener (ConfigurationParamListenerType type, ConfigurationParamListener *listener, bool autoclean=true)
 ConfigurationParamListener を追加する [詳解]
 
template<class Listener >
ConfigurationParamListeneraddConfigurationParamListener (ConfigurationParamListenerType listener_type, Listener &obj, void(Listener::*memfunc)(const char *, const char *))
 
void removeConfigurationParamListener (ConfigurationParamListenerType type, ConfigurationParamListener *listener)
 ConfigurationParamListener を削除する [詳解]
 
void addConfigurationSetListener (ConfigurationSetListenerType type, ConfigurationSetListener *listener, bool autoclean=true)
 ConfigurationSetListener を追加する [詳解]
 
template<class Listener >
ConfigurationSetListeneraddConfigurationSetListener (ConfigurationSetListenerType listener_type, Listener &obj, void(Listener::*memfunc)(const coil::Properties &config_set))
 
void removeConfigurationSetListener (ConfigurationSetListenerType type, ConfigurationSetListener *listener)
 ConfigurationSetListener を削除する [詳解]
 
void addConfigurationSetNameListener (ConfigurationSetNameListenerType type, ConfigurationSetNameListener *listener, bool autoclean=true)
 ConfigurationSetNameListener を追加する [詳解]
 
template<class Listener >
ConfigurationSetNameListeneraddConfigurationSetNameListener (ConfigurationSetNameListenerType type, Listener &obj, void(Listener::*memfunc)(const char *))
 
void removeConfigurationSetNameListener (ConfigurationSetNameListenerType type, ConfigurationSetNameListener *listener)
 ConfigurationSetNameListener を削除する [詳解]
 

限定公開メンバ関数

virtual ReturnCode_t onInitialize ()
 初期化処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onFinalize ()
 終了処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onStartup (RTC::UniqueId exec_handle)
 開始処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onShutdown (RTC::UniqueId exec_handle)
 停止処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onActivated (RTC::UniqueId exec_handle)
 活性化処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onDeactivated (RTC::UniqueId exec_handle)
 非活性化処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onExecute (RTC::UniqueId exec_handle)
 周期処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onAborting (RTC::UniqueId exec_handle)
 中断処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onError (RTC::UniqueId exec_handle)
 エラー処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onReset (RTC::UniqueId exec_handle)
 リセット処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onStateUpdate (RTC::UniqueId exec_handle)
 状態変更処理用コールバック関数 [詳解]
 
virtual ReturnCode_t onRateChanged (RTC::UniqueId exec_handle)
 動作周期変更通知用コールバック関数 [詳解]
 
void shutdown ()
 RTC を終了する [詳解]
 
void preOnInitialize (UniqueId ec_id)
 
void preOnFinalize (UniqueId ec_id)
 
void preOnStartup (UniqueId ec_id)
 
void preOnShutdown (UniqueId ec_id)
 
void preOnActivated (UniqueId ec_id)
 
void preOnDeactivated (UniqueId ec_id)
 
void preOnAborting (UniqueId ec_id)
 
void preOnError (UniqueId ec_id)
 
void preOnReset (UniqueId ec_id)
 
void preOnExecute (UniqueId ec_id)
 
void preOnStateUpdate (UniqueId ec_id)
 
void preOnRateChanged (UniqueId ec_id)
 
void postOnInitialize (UniqueId ec_id, ReturnCode_t ret)
 
void postOnFinalize (UniqueId ec_id, ReturnCode_t ret)
 
void postOnStartup (UniqueId ec_id, ReturnCode_t ret)
 
void postOnShutdown (UniqueId ec_id, ReturnCode_t ret)
 
void postOnActivated (UniqueId ec_id, ReturnCode_t ret)
 
void postOnDeactivated (UniqueId ec_id, ReturnCode_t ret)
 
void postOnAborting (UniqueId ec_id, ReturnCode_t ret)
 
void postOnError (UniqueId ec_id, ReturnCode_t ret)
 
void postOnReset (UniqueId ec_id, ReturnCode_t ret)
 
void postOnExecute (UniqueId ec_id, ReturnCode_t ret)
 
void postOnStateUpdate (UniqueId ec_id, ReturnCode_t ret)
 
void postOnRateChanged (UniqueId ec_id, ReturnCode_t ret)
 
void onAddPort (const PortProfile &pprof)
 
void onRemovePort (const PortProfile &pprof)
 
void onAttachExecutionContext (UniqueId ec_id)
 
void onDetachExecutionContext (UniqueId ec_id)
 
ReturnCode_t getInheritedECOptions (coil::Properties &default_opts)
 
ReturnCode_t getPrivateContextOptions (std::vector< coil::Properties > &ec_args)
 getting individual EC options from RTC's configuration file [詳解]
 
ReturnCode_t getGlobalContextOptions (coil::Properties &global_ec_props)
 getting global EC options from rtc.conf [詳解]
 
ReturnCode_t getContextOptions (std::vector< coil::Properties > &ec_args)
 getting EC options [詳解]
 
ReturnCode_t findExistingEC (coil::Properties &ec_arg, RTC::ExecutionContextBase *&ec)
 fiding existing EC from the factory [詳解]
 
ReturnCode_t createContexts (std::vector< coil::Properties > &ec_args)
 creating, initializing and binding context [詳解]
 

限定公開変数類

Logger rtclog
 ロガーストリーム [詳解]
 
Managerm_pManager
 マネージャオブジェクト [詳解]
 
CORBA::ORB_var m_pORB
 ORB へのポインタ [詳解]
 
PortableServer::POA_var m_pPOA
 POA へのポインタ [詳解]
 
SDOPackage::OrganizationList m_sdoOwnedOrganizations
 SDO が保持する organization のリスト [詳解]
 
SDOPackage::Configuration_implm_pSdoConfigImpl
 SDO Configuration オブジェクトへのポインタ [詳解]
 
SDOPackage::Configuration_var m_pSdoConfig
 SDO Configuration Interface へのポインタ [詳解]
 
SDOPackage::OrganizationList m_sdoOrganizations
 SDO organization. [詳解]
 
SDOPackage::NVList m_sdoStatus
 SDO Status. [詳解]
 
ComponentProfile m_profile
 コンポーネントプロファイル [詳解]
 
RTObject_var m_objref
 オブジェクトリファレンス [詳解]
 
PortAdmin m_portAdmin
 Port のオブジェクトリファレンスのリスト [詳解]
 
std::vector< InPortBase * > m_inports
 InPortBase* のリスト [詳解]
 
std::vector< OutPortBase * > m_outports
 OutPortBase* のリスト [詳解]
 
ExecutionContextServiceList m_ecMine
 自分がownerのExecutionContextService のリスト [詳解]
 
std::vector< ExecutionContextBase * > m_eclist
 ExecutionContextBase のリスト [詳解]
 
ExecutionContextServiceList m_ecOther
 参加しているExecutionContextService のリスト [詳解]
 
bool m_created
 Created 状態フラグ [詳解]
 
bool m_exiting
 RTCの終了状態フラグ [詳解]
 
coil::Properties m_properties
 Alive 状態フラグ [詳解]
 
ConfigAdmin m_configsets
 コンフィギュレーション情報管理オブジェクト [詳解]
 
SdoServiceAdmin m_sdoservice
 SDO Service 管理オブジェクト [詳解]
 
bool m_readAll
 readAll()呼出用のフラグ [詳解]
 
bool m_writeAll
 writeAll()呼出用のフラグ [詳解]
 
bool m_readAllCompletion
 readAll()用のフラグ [詳解]
 
bool m_writeAllCompletion
 writeAll()用のフラグ [詳解]
 
ComponentActionListeners m_actionListeners
 ComponentActionListenerホルダ [詳解]
 
PortConnectListeners m_portconnListeners
 PortConnectListenerホルダ [詳解]
 
SdoServiceConsumerTerminatorm_sdoconterm
 

詳解

RTコンポーネントクラス

各RTコンポーネントのベースとなるクラス。 Robotic Technology Component 仕様中の lightweightRTComponentの実装クラス。 コンポーネントの機能を提供する ComponentAction インターフェースと コンポーネントのライフサイクル管理を行うための LightweightRTObject の実装を 提供する。 実際にユーザがコンポーネントを作成する場合には、Execution Semantics に対応 した各サブクラスを利用する。
(現状の実装では Periodic Sampled Data Processing のみサポートしているため、 dataFlowComponent を直接継承している)

から
0.2.0

型定義メンバ詳解

ExecutionContextActionListener リスナを追加する

ExecutionContextの追加、削除時にコールバックされる各種リスナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • ATTACH_EC: ExecutionContext アタッチ時
  • DETACH_EC: ExecutionContext デタッチ時

リスナは ExecutionContextActionListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

ExecutionContextActionListener::operator()(UniqueId ec_id)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removeExecutionContextActionListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ

PostComponentActionListener リスナを追加する

ComponentAction 実装関数の呼び出し直後のイベントに関連する各種リ スナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • POST_ON_INITIALIZE: onInitialize 直後
  • POST_ON_FINALIZE: onFinalize 直後
  • POST_ON_STARTUP: onStartup 直後
  • POST_ON_SHUTDOWN: onShutdown 直後
  • POST_ON_ACTIVATED: onActivated 直後
  • POST_ON_DEACTIVATED: onDeactivated 直後
  • POST_ON_ABORTED: onAborted 直後
  • POST_ON_ERROR: onError 直後
  • POST_ON_RESET: onReset 直後
  • POST_ON_EXECUTE: onExecute 直後
  • POST_ON_STATE_UPDATE: onStateUpdate 直後

リスナは PostComponentActionListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

PostComponentActionListener::operator()(UniqueId ec_id, ReturnCode_t ret)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removePostComponentActionListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ

PreComponentActionListener リスナを追加する

ComponentAction 実装関数の呼び出し直前のイベントに関連する各種リ スナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • PRE_ON_INITIALIZE: onInitialize 直前
  • PRE_ON_FINALIZE: onFinalize 直前
  • PRE_ON_STARTUP: onStartup 直前
  • PRE_ON_SHUTDOWN: onShutdown 直前
  • PRE_ON_ACTIVATED: onActivated 直前
  • PRE_ON_DEACTIVATED: onDeactivated 直前
  • PRE_ON_ABORTED: onAborted 直前
  • PRE_ON_ERROR: onError 直前
  • PRE_ON_RESET: onReset 直前
  • PRE_ON_EXECUTE: onExecute 直前
  • PRE_ON_STATE_UPDATE: onStateUpdate 直前

リスナは PreComponentActionListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

PreComponentActionListener::operator()(UniqueId ec_id)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removePreComponentActionListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ

構築子と解体子

RTC::RTObject_impl::RTObject_impl ( Manager manager)

コンストラクタ

コンストラクタ

引数
managerマネージャオブジェクト
RTC::RTObject_impl::RTObject_impl ( CORBA::ORB_ptr  orb,
PortableServer::POA_ptr  poa 
)

コンストラクタ

コンストラクタ

引数
orbORB
poaPOA
virtual RTC::RTObject_impl::~RTObject_impl ( void  )
virtual

仮想デストラクタ

関数詳解

ReturnCode_t RTC::RTObject_impl::activate ( RTC::UniqueId  ec_id)

[local interface] 状態を Active に遷移させる

状態を Inactive から Active に遷移させる。この関数は以下の関 数内で呼ばれることを前提としている。

この関数の引数は上記の関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
戻り値
リターンコード
void RTC::RTObject_impl::addConfigurationParamListener ( ConfigurationParamListenerType  type,
ConfigurationParamListener listener,
bool  autoclean = true 
)

ConfigurationParamListener を追加する

update(const char* config_set, const char* config_param) が呼ばれた際に コールされるリスナ ConfigurationParamListener を追加する。 type には現在のところ ON_UPDATE_CONFIG_PARAM のみが入る。

引数
typeConfigurationParamListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listenerConfigurationParamListener 型のリスナオブジェクト。
autocleanリスナオブジェクトを自動で削除するかどうかのフラグ
template<class Listener >
ConfigurationParamListener* RTC::RTObject_impl::addConfigurationParamListener ( ConfigurationParamListenerType  listener_type,
Listener obj,
void(Listener::*)(const char *, const char *)  memfunc 
)
inline
void RTC::RTObject_impl::addConfigurationSetListener ( ConfigurationSetListenerType  type,
ConfigurationSetListener listener,
bool  autoclean = true 
)

ConfigurationSetListener を追加する

ConfigurationSet が更新されたときなどに呼ばれるリスナ ConfigurationSetListener を追加する。設定可能なイベントは以下の 2種類がある。

  • ON_SET_CONFIG_SET: setConfigurationSetValues() で ConfigurationSet に値が設定された場合。
  • ON_ADD_CONFIG_SET: addConfigurationSet() で新しい ConfigurationSet が追加された場合。
引数
typeConfigurationSetListenerType型の値。
listenerConfigurationSetListener 型のリスナオブジェクト。
autocleanリスナオブジェクトを自動で削除するかどうかのフラグ
template<class Listener >
ConfigurationSetListener* RTC::RTObject_impl::addConfigurationSetListener ( ConfigurationSetListenerType  listener_type,
Listener obj,
void(Listener::*)(const coil::Properties &config_set)  memfunc 
)
inline
void RTC::RTObject_impl::addConfigurationSetNameListener ( ConfigurationSetNameListenerType  type,
ConfigurationSetNameListener listener,
bool  autoclean = true 
)

ConfigurationSetNameListener を追加する

ConfigurationSetName が更新されたときなどに呼ばれるリスナ ConfigurationSetNameListener を追加する。設定可能なイベントは以下の 3種類がある。

  • ON_UPDATE_CONFIG_SET: ある ConfigurationSet がアップデートされた
  • ON_REMOVE_CONFIG_SET: ある ConfigurationSet が削除された
  • ON_ACTIVATE_CONFIG_SET: ある ConfigurationSet がアクティブ化された
引数
typeConfigurationSetNameListenerType型の値。
listenerConfigurationSetNameListener 型のリスナオブジェクト。
autocleanリスナオブジェクトを自動で削除するかどうかのフラグ
template<class Listener >
ConfigurationSetNameListener* RTC::RTObject_impl::addConfigurationSetNameListener ( ConfigurationSetNameListenerType  type,
Listener obj,
void(Listener::*)(const char *)  memfunc 
)
inline
void RTC::RTObject_impl::addExecutionContextActionListener ( ECActionListenerType  listener_type,
ECActionListener listener,
bool  autoclean = true 
)
template<class Listener >
ECActionListener* RTC::RTObject_impl::addExecutionContextActionListener ( ECActionListenerType  listener_type,
Listener obj,
void(Listener::*)(UniqueId memfunc 
)
inline
bool RTC::RTObject_impl::addInPort ( const char *  name,
InPortBase inport 
)

[local interface] DataInPort を登録する

RTC が保持する DataInPort を登録する。 Port のプロパティにデータポートであること("port.dataport")、 TCPを使用すること("tcp_any")を設定するとともに、 DataInPort の インスタンスを生成し、登録する。

引数
nameport 名称
inport登録対象 DataInPort
戻り値
登録結果(登録成功:true,登録失敗:false)
bool RTC::RTObject_impl::addOutPort ( const char *  name,
OutPortBase outport 
)

[local interface] DataOutPort を登録する

RTC が保持する DataOutPortを登録する。 Port のプロパティにデータポートであること("port.dataport")、 TCPを使用すること("tcp_any")を設定するとともに、 DataOutPort の インスタンスを生成し、登録する。

引数
nameport 名称
outport登録対象 DataOutPort
戻り値
登録結果(登録成功:true,登録失敗:false)
bool RTC::RTObject_impl::addPort ( PortBase port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
戻り値
登録結果(登録成功:true,登録失敗:false)
bool RTC::RTObject_impl::addPort ( PortService_ptr  port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
戻り値
登録結果(登録成功:true,登録失敗:false)
bool RTC::RTObject_impl::addPort ( CorbaPort port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
戻り値
登録結果(登録成功:true,登録失敗:false)
void RTC::RTObject_impl::addPortActionListener ( PortActionListenerType  listener_type,
PortActionListener listener,
bool  autoclean = true 
)

PortActionListener リスナを追加する

Portの追加、削除時にコールバックされる各種リスナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • ADD_PORT: Port追加時
  • REMOVE_PORT: Port削除時

リスナは PortActionListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

PortActionListener::operator()(PortProfile& pprof)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removePortActionListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ
template<class Listener >
PortActionListener* RTC::RTObject_impl::addPortActionListener ( PortActionListenerType  listener_type,
Listener obj,
void(Listener::*)(const RTC::PortProfile &)  memfunc 
)
inline
void RTC::RTObject_impl::addPortConnectListener ( PortConnectListenerType  listener_type,
PortConnectListener listener,
bool  autoclean = true 
)

PortConnectListener リスナを追加する

Portの接続時や接続解除時に呼び出される各種リスナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • ON_NOTIFY_CONNECT: notify_connect() 関数内呼び出し直後
  • ON_NOTIFY_DISCONNECT: notify_disconnect() 呼び出し直後
  • ON_UNSUBSCRIBE_INTERFACES: notify_disconnect() 内のIF購読解除時

リスナは PortConnectListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

PortConnectListener::operator()(const char*, ConnectorProfile)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removePortConnectListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ
template<class Listener >
PortConnectListener* RTC::RTObject_impl::addPortConnectListener ( PortConnectListenerType  listener_type,
Listener obj,
void(Listener::*)(const char *, ConnectorProfile &)  memfunc 
)
inline
void RTC::RTObject_impl::addPortConnectRetListener ( PortConnectRetListenerType  listener_type,
PortConnectRetListener listener,
bool  autoclean = true 
)

PortConnectRetListener リスナを追加する

Portの接続時や接続解除時に呼び出される各種リスナを設定する。

設定できるリスナのタイプとコールバックイベントは以下の通り

  • ON_CONNECT_NEXTPORT: notify_connect() 中のカスケード呼び出し直後
  • ON_SUBSCRIBE_INTERFACES: notify_connect() 中のインターフェース購読直後
  • ON_CONNECTED: nofity_connect() 接続処理完了時に呼び出される
  • ON_DISCONNECT_NEXT: notify_disconnect() 中にカスケード呼び出し直後
  • ON_DISCONNECTED: notify_disconnect() リターン時

リスナは PortConnectRetListener を継承し、以下のシグニチャを持つ operator() を実装している必要がある。

PortConnectRetListener::operator()(const char*, ConnectorProfile)

デフォルトでは、この関数に与えたリスナオブジェクトの所有権は RTObjectに移り、RTObject解体時もしくは、 removePortConnectRetListener() により削除時に自動的に解体される。 リスナオブジェクトの所有権を呼び出し側で維持したい場合は、第3引 数に false を指定し、自動的な解体を抑制することができる。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
autocleanリスナオブジェクトの自動的解体を行うかどうかのフラグ
template<class Listener >
PortConnectRetListener* RTC::RTObject_impl::addPortConnectRetListener ( PortConnectRetListenerType  listener_type,
Listener obj,
void(Listener::*)(const char *, ConnectorProfile &, ReturnCode_t)  memfunc 
)
inline
void RTC::RTObject_impl::addPostComponentActionListener ( PostComponentActionListenerType  listener_type,
PostComponentActionListener listener,
bool  autoclean = true 
)
template<class Listener >
PostComponentActionListener* RTC::RTObject_impl::addPostComponentActionListener ( PostCompActionListenerType  listener_type,
Listener obj,
void(Listener::*)(UniqueId ec_id, ReturnCode_t ret)  memfunc 
)
inline
void RTC::RTObject_impl::addPreComponentActionListener ( PreComponentActionListenerType  listener_type,
PreComponentActionListener listener,
bool  autoclean = true 
)
template<class Listener >
PreComponentActionListener* RTC::RTObject_impl::addPreComponentActionListener ( PreCompActionListenerType  listener_type,
Listener obj,
void(Listener::*)(UniqueId ec_id)  memfunc 
)
inline
bool RTC::RTObject_impl::addSdoServiceConsumer ( const SDOPackage::ServiceProfile &  prof)

[local interface] SDO service provider をセットする

bool RTC::RTObject_impl::addSdoServiceProvider ( const SDOPackage::ServiceProfile &  prof,
SdoServiceProviderBase provider 
)

[local interface] SDO service provider をセットする

UniqueId RTC::RTObject_impl::attach_context ( ExecutionContext_ptr  exec_context)
throw (CORBA::SystemException
)

[CORBA interface] ExecutionContextをattachする

指定した ExecutionContext にこの RTC を所属させる。この RTC と関連する ExecutionContext のハンドルを返す。 このオペレーションは、ExecutionContextOperations::add_component が呼ばれた際に呼び出される。返されたハンドルは他のクライアントで 使用することを想定していない。

引数
exec_context所属先 ExecutionContext
戻り値
ExecutionContext ハンドル
UniqueId RTC::RTObject_impl::bindContext ( ExecutionContext_ptr  exec_context)
template<typename VarType >
bool RTC::RTObject_impl::bindParameter ( const char *  param_name,
VarType &  var,
const char *  def_val,
bool(*)(VarType &, const char *)  trans = coil::stringTo 
)
inline

コンフィギュレーションパラメータの設定

コンフィギュレーションパラメータと変数をバインドする <VarType>としてコンフィギュレーションパラメータのデータ型を指定する。

引数
param_nameコンフィギュレーションパラメータ名
varコンフィギュレーションパラメータ格納用変数
def_valコンフィギュレーションパラメータデフォルト値
transコンフィギュレーションパラメータ文字列変換用関数
戻り値
設定結果(設定成功:true,設定失敗:false)

参照先 RTC_TRACE.

ReturnCode_t RTC::RTObject_impl::createContexts ( std::vector< coil::Properties > &  ec_args)
protected

creating, initializing and binding context

ReturnCode_t RTC::RTObject_impl::deactivate ( RTC::UniqueId  ec_id)

[local interface] 状態を Inactive に遷移させる

状態を Active から Inactive に遷移させる。この関数は以下の関 数内で呼ばれることを前提としている。

この関数の引数は上記の関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
戻り値
リターンコード
void RTC::RTObject_impl::deletePort ( PortBase port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
void RTC::RTObject_impl::deletePort ( PortService_ptr  port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
void RTC::RTObject_impl::deletePort ( CorbaPort port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
void RTC::RTObject_impl::deletePortByName ( const char *  port_name)

[local interface] 名前指定により Port の登録を削除する

名称を指定して RTC が保持するPortの登録を削除する。

引数
port_name削除対象 Port 名
ReturnCode_t RTC::RTObject_impl::detach_context ( UniqueId  exec_handle)
throw (CORBA::SystemException
)

[CORBA interface] ExecutionContextをdetachする

指定した ExecutionContext からこの RTC の所属を解除する。 このオペレーションは、ExecutionContextOperations::remove が呼ば れた際に呼び出される。返されたハンドルは他のクライアントで使用することを 想定していない。

制約

  • 指定された ExecutionContext に RTC がすでに所属していない場合には、 ReturnCode_t::PRECONDITION_NOT_MET が返される。
  • 指定された ExecutionContext にたしいて対して RTC がActive 状態である場 合には、 ReturnCode_t::PRECONDITION_NOT_MET が返される。
引数
exec_handle解除対象 ExecutionContextハンドル
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::exit ( )
throw (CORBA::SystemException
)
virtual

[CORBA interface] RTC がオーナーである ExecutionContext を 停止させ、そのコンテンツと共に終了させる

この RTC がオーナーであるすべての実行コンテキストを停止する。 この RTC が他の実行コンテキストを所有する RTC に属する実行コンテキスト (i.e. 実行コンテキストを所有する RTC はすなわちその実行コンテキストの オーナーである。)に参加している場合、当該 RTC はそれらのコンテキスト上 で非活性化されなければならない。 RTC が実行中のどの ExecutionContext でも Active 状態ではなくなった後、 この RTC とこれに含まれる RTC が終了する。

制約

  • RTC が初期化されていなければ、終了させることはできない。 Created 状態にある RTCexit() を呼び出した場合、 ReturnCode_t::PRECONDITION_NOT_MET で失敗する。
戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

virtual ReturnCode_t RTC::RTObject_impl::finalize ( )
throw (CORBA::SystemException
)
virtual

[CORBA interface] RTC を終了する

このオペレーション呼び出しの結果として ComponentAction::on_finalize() を呼び出す。

制約

  • RTC が ExecutionContext に所属している間は終了されない。この場合は、 まず最初に ExecutionContextOperations::remove によって参加を 解除しなければならない。これ以外の場合は、このオペレーション呼び出しは いかなる場合も ReturnCode_t::PRECONDITION_NOT_ME で失敗する。
  • RTC が Created 状態である場合、終了処理は行われない。 この場合、このオペレーション呼び出しはいかなる場合も ReturnCode_t::PRECONDITION_NOT_MET で失敗する。
  • このオペレーションはRTCのミドルウエアから呼ばれることを想定しており、 アプリケーション開発者は直接このオペレーションを呼ぶことは想定 されていない。
戻り値
ReturnCode_t 型のリターンコード
void RTC::RTObject_impl::finalizeContexts ( )

ExecutionContextBaseリストの登録を削除する

void RTC::RTObject_impl::finalizePorts ( )

全 Port の登録を削除する

RTC が保持する全ての Port を削除する。

ReturnCode_t RTC::RTObject_impl::findExistingEC ( coil::Properties ec_arg,
RTC::ExecutionContextBase *&  ec 
)
protected

fiding existing EC from the factory

virtual ComponentProfile* RTC::RTObject_impl::get_component_profile ( )
throw (CORBA::SystemException
)
virtual

[RTObject CORBA interface] コンポーネントプロファイルを取得する

当該コンポーネントのプロファイル情報を返す。

戻り値
コンポーネントプロファイル
virtual SDOPackage::Configuration_ptr RTC::RTObject_impl::get_configuration ( )
throw (CORBA::SystemException,
SDOPackage::InterfaceNotImplemented,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] Configuration オブジェクトの取得

このオペレーションは Configuration interface への参照を返す。 Configuration interface は各 SDO を管理するためのインターフェースの ひとつである。このインターフェースは DeviceProfile, ServiceProfile, Organization で定義された SDO の属性値を設定するために使用される。 Configuration インターフェースの詳細については、OMG SDO specification の 2.3.5節, p.2-24 を参照のこと。

戻り値
SDO の Configuration インターフェースへの参照
例外
InterfaceNotImplementedSDOはConfigurationインターフェースを 持たない。
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual ExecutionContext_ptr RTC::RTObject_impl::get_context ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[CORBA interface] ExecutionContextを取得する

指定したハンドルの ExecutionContext を取得する。 ハンドルから ExecutionContext へのマッピングは、特定の RTC インスタンスに 固有である。ハンドルはこの RTC を attach_context した際に取得できる。

引数
exec_handle取得対象 ExecutionContext ハンドル
戻り値
ExecutionContext
virtual ExecutionContextHandle_t RTC::RTObject_impl::get_context_handle ( ExecutionContext_ptr  cxt)
throw (CORBA::SystemException
)
virtual

[CORBA interface] ExecutionContext のハンドルを返す

与えられた実行コンテキストに関連付けられたハンドルを返す。

virtual SDOPackage::DeviceProfile* RTC::RTObject_impl::get_device_profile ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO DeviceProfile リストの取得

SDO の DeviceProfile を返すオペレーション。 SDO がハードウエアデバイス に関連付けられていない場合には、空の DeviceProfile が返される。 このオペレーションは以下の型の例外を発生させる。

戻り値
SDO DeviceProfile
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual SDOPackage::Monitoring_ptr RTC::RTObject_impl::get_monitoring ( )
throw (CORBA::SystemException,
SDOPackage::InterfaceNotImplemented,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] Monitoring オブジェクトの取得

このオペレーションは Monitoring interface への参照を返す。 Monitoring interface は SDO が管理するインターフェースの一つである。 このインターフェースは SDO のプロパティをモニタリングするために 使用される。 Monitoring interface の詳細については OMG SDO specification の 2.3.7節 "Monitoring Interface" p.2-35 を参照のこと。

戻り値
SDO の Monitoring interface への参照
例外
InterfaceNotImplementedSDOはConfigurationインターフェースを 持たない。
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual SDOPackage::OrganizationList* RTC::RTObject_impl::get_organizations ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] Organization リストの取得

SDO は0個以上の Organization (組織)に所属することができる。 もし SDO が 1個以上の Organization に所属している場合、このオペレーションは所属する Organization のリストを返す。SDO が どの Organization にも所属していない 場合には、空のリストが返される。

戻り値
SDO が所属する Organization のリスト。
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual ExecutionContextList* RTC::RTObject_impl::get_owned_contexts ( )
throw (CORBA::SystemException
)
virtual

[CORBA interface] 所有する ExecutionContextListを 取得する

この RTC が所有する ExecutionContext のリストを取得する。

戻り値
ExecutionContext リスト
virtual SDOPackage::OrganizationList* RTC::RTObject_impl::get_owned_organizations ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] Organization リストの取得

SDOSystemElement は0個もしくはそれ以上の Organization を所有することが 出来る。 SDOSystemElement が1つ以上の Organization を所有している場合 には、このオペレーションは所有する Organization のリストを返す。 もしOrganizationを一つも所有していないければ空のリストを返す。

戻り値
所有している Organization リスト
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual ExecutionContextList* RTC::RTObject_impl::get_participating_contexts ( )
throw (CORBA::SystemException
)
virtual

[CORBA interface] 参加している ExecutionContextList を取得する

この RTC が参加している ExecutionContext のリストを取得する。

戻り値
ExecutionContext リスト
virtual PortServiceList* RTC::RTObject_impl::get_ports ( )
throw (CORBA::SystemException
)
virtual

[RTObject CORBA interface] ポートを取得する

当該コンポーネントが保有するポートの参照を返す。

戻り値
ポートリスト
virtual char* RTC::RTObject_impl::get_sdo_id ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO ID の取得

SDO ID を返すオペレーション。 このオペレーションは以下の型の例外を発生させる。

戻り値
リソースデータモデルで定義されている SDO の ID
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual SDOPackage::SDOService_ptr RTC::RTObject_impl::get_sdo_service ( const char *  id)
throw (CORBA::SystemException,
SDOPackage::InvalidParameter,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] 指定された SDO Service の取得

このオペレーションは引数 "id" で指定された名前によって区別される SDO の Service へのオブジェクト参照を返す。 SDO により提供される Service はそれぞれ一意の識別子により区別される。

引数
idSDO Service に関連付けられた識別子。
戻り値
要求された SDO Service への参照。
例外
InvalidParameter"id" で指定した ServiceProfile が存在しない。 "id" が null。
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual char* RTC::RTObject_impl::get_sdo_type ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO タイプの取得

SDO Type を返すオペレーション。 このオペレーションは以下の型の例外を発生させる。

戻り値
リソースデータモデルで定義されている SDO の Type
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual SDOPackage::ServiceProfile* RTC::RTObject_impl::get_service_profile ( const char *  id)
throw (CORBA::SystemException,
SDOPackage::InvalidParameter,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] 特定のServiceProfileの取得

引数 "id" で指定された名前のサービスの ServiceProfile を返す。

引数
idSDO Service の ServiceProfile に関連付けられた識別子。
戻り値
指定された SDO Service の ServiceProfile。
例外
InvalidParameter"id" で指定した ServiceProfile が存在しない。 "id" が null。
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual SDOPackage::ServiceProfileList* RTC::RTObject_impl::get_service_profiles ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO ServiceProfile の取得

SDO が所有している Service の ServiceProfile を返すオペレーション。 SDO がサービスを一つも所有していない場合には、空のリストを返す。 このオペレーションは以下の型の例外を発生させる。

戻り値
SDO が提供する全ての Service の ServiceProfile。
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
virtual CORBA::Any* RTC::RTObject_impl::get_status ( const char *  name)
throw (CORBA::SystemException,
SDOPackage::InvalidParameter,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO Status の取得

This operation returns the value of the specified status parameter.

引数
nameSDO のステータスを定義するパラメータ。
戻り値
指定されたパラメータのステータス値。
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InvalidParameter引数 "name" が null あるいは存在しない。
InternalError内部的エラーが発生した。
virtual SDOPackage::NVList* RTC::RTObject_impl::get_status_list ( )
throw (CORBA::SystemException,
SDOPackage::NotAvailable,
SDOPackage::InternalError
)
virtual

[SDO interface] SDO Status リストの取得

このオペレーションは SDO のステータスを表す NVList を返す。

戻り値
SDO のステータス。
例外
SDONotExistsターゲットのSDOが存在しない。(本例外は、CORBA標準 システム例外のOBJECT_NOT_EXISTにマッピングされる)
NotAvailableSDOは存在するが応答がない。
InternalError内部的エラーが発生した。
const char* RTC::RTObject_impl::getCategory ( )
inline

[local interface] カテゴリ情報の取得

ComponentProfile に設定されたカテゴリ情報を返す。

戻り値
カテゴリ情報

参照先 RTC_TRACE.

ConfigAdmin& RTC::RTObject_impl::getConfigService ( )
inline

コンフィギュレーションサービスを取得する

コンフィギュレーションサービスオブジェクトを取得する。このサービ スオブジェクトを利用して、コンフィギュレーションパラメータの操作 を行うことができる。主な操作としては、

  • unbindParameter(): パラメータのアンバインド
  • update(): パラメータの更新
  • update(set_name): 特定のセットの更新
  • update(set_name, param_name): 特定のセットのパラメータの更新
  • isExist(): パラメータの存在確認
  • isChanged(): パラメータが変更されたかの確認
  • changedParameters(): 変更されたパラメータのリスト
  • getActiveId(): アクティブセット名の取得
  • haveConfig(config_id): コンフィグセットを持っているかどうか
  • getConfigurationSets(): 全コンフィギュレーションセットの取得
  • getConfigurationSet(set_id): 特定セットを取得

コールバック関連

詳細はConfigAdminクラスリファレンスを参照のこと。

戻り値
ConfigAdmin object
ReturnCode_t RTC::RTObject_impl::getContextOptions ( std::vector< coil::Properties > &  ec_args)
protected

getting EC options

const char* RTC::RTObject_impl::getDescription ( )
inline

[local interface] Description の取得

ComponentProfile に設定された Description を返す。

戻り値
Description

参照先 RTC_TRACE.

ExecutionContext_ptr RTC::RTObject_impl::getExecutionContext ( RTC::UniqueId  ec_id)

[local interface] 実行コンテキストを取得する

get_context() と同じ機能のローカル版。違いはない。 この関数は以下の関数内で呼ばれることを前提としている。

この関数の引数はこれらの関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
double RTC::RTObject_impl::getExecutionRate ( RTC::UniqueId  ec_id)

[local interface] 実行コンテキストの実行レートを取得する

現在実行中の実行コンテキストの実行レートを取得する。実行コンテキ ストのKindがPERIODIC以外の場合の動作は未定義である。この関数は以 下の関数内で呼ばれることを前提としている。

この関数の引数はこれらの関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
ReturnCode_t RTC::RTObject_impl::getGlobalContextOptions ( coil::Properties global_ec_props)
protected

getting global EC options from rtc.conf

ReturnCode_t RTC::RTObject_impl::getInheritedECOptions ( coil::Properties default_opts)
protected
const std::vector<InPortBase*>& RTC::RTObject_impl::getInPorts ( ) const
inline
const char* RTC::RTObject_impl::getInstanceName ( )
inline

[local interface] インスタンス名の取得

ComponentProfile に設定されたインスタンス名を返す。

戻り値
インスタンス名

参照先 RTC_TRACE.

std::vector<std::string> RTC::RTObject_impl::getNamingNames ( )

[local interface] Naming Server 情報の取得

設定された Naming Server 情報を返す。

戻り値
Naming Server リスト
RTObject_ptr RTC::RTObject_impl::getObjRef ( ) const

[local interface] オブジェクトリファレンスの取得

設定された CORBA オブジェクトリファレンスを取得する。

戻り値
オブジェクトリファレンス
const std::vector<OutPortBase*>& RTC::RTObject_impl::getOutPorts ( ) const
inline
ReturnCode_t RTC::RTObject_impl::getPrivateContextOptions ( std::vector< coil::Properties > &  ec_args)
protected

getting individual EC options from RTC's configuration file

coil::Properties& RTC::RTObject_impl::getProperties ( )

[local interface] RTC のプロパティを取得する

RTC が保持しているプロパティを返す。 RTCがプロパティを持たない場合は空のプロパティが返される。

戻り値
RTC のプロパティ
const char* RTC::RTObject_impl::getTypeName ( )
inline

[local interface] 型名の取得

ComponentProfile に設定された型名を返す。

戻り値
型名

参照先 RTC_TRACE.

const char* RTC::RTObject_impl::getVendor ( )
inline

[local interface] ベンダー情報の取得

ComponentProfile に設定されたベンダー情報を返す。

戻り値
ベンダー情報

参照先 RTC_TRACE.

const char* RTC::RTObject_impl::getVersion ( )
inline

[local interface] バージョン情報の取得

ComponentProfile に設定されたバージョン情報を返す。

戻り値
バージョン情報

参照先 RTC_TRACE.

virtual ReturnCode_t RTC::RTObject_impl::initialize ( )
throw (CORBA::SystemException
)
virtual

[CORBA interface] RTCを初期化する

このオペレーション呼び出しの結果として、ComponentAction::on_initialize コールバック関数が呼ばれる。

制約

  • RTC は Created状態の場合み初期化が行われる。他の状態にいる場合には ReturnCode_t::PRECONDITION_NOT_MET が返され呼び出しは失敗する。
  • このオペレーションは RTC のミドルウエアから呼ばれることを想定しており、 アプリケーション開発者は直接このオペレーションを呼ぶことは想定 されていない。
戻り値
ReturnCode_t 型のリターンコード
virtual CORBA::Boolean RTC::RTObject_impl::is_alive ( ExecutionContext_ptr  exec_context)
throw (CORBA::SystemException
)
virtual

[CORBA interface] RTC が Alive 状態であるかどうか確認する。

RTC が指定した ExecutionContext に対して Alive状態であるかどうか 確認する。RTC の状態が Active であるか、Inactive であるか、 Error であるかは実行中のExecutionContext に依存する。すなわち、 ある ExecutionContext に対してはActive 状態であっても、他の ExecutionContext に対しては Inactive 状態となる場合もありえる。 従って、このオペレーションは指定されたExecutionContext に問い合 わせて、この RTC の状態が Active、Inactive、Error の場合には Alive 状態として返す。

戻り値
Alive 状態確認結果
bool RTC::RTObject_impl::isOwnExecutionContext ( RTC::UniqueId  ec_id)

[local interface] 実行コンテキストの所有権を調べる

現在実行中の実行コンテキストの所有権を調べる。この関数は以下の関 数内で呼ばれることを前提としている。

この関数の引数はこれらの関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
戻り値
true: 自身の実行コンテキスト、false: 他の実行コンテキスト
virtual ReturnCode_t RTC::RTObject_impl::on_aborting ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC のエラー状態への遷移

RTC が所属する ExecutionContext が Active 状態から Error 状態へ遷移した 場合に呼び出される。 このオペレーションは RTC が Error 状態に遷移した際に一度だけ呼び 出される。このオペレーション呼び出しの結果として onAborting() コー ルバック関数が呼び出される。

引数
exec_handle状態遷移した ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_activated ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC の活性化

所属する ExecutionContext から RTC が活性化された際に呼び出される。 このオペレーション呼び出しの結果として onActivated() コールバック関数が 呼び出される。

引数
exec_handle活性化 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_deactivated ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC の非活性化

所属する ExecutionContext から RTC が非活性化された際に呼び出される。 このオペレーション呼び出しの結果として onDeactivated() コールバック関数が 呼び出される。

引数
exec_handle非活性化 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_error ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC のエラー処理

RTC がエラー状態にいる際に呼び出される。 RTC がエラー状態の場合に、対象となる ExecutionContext のExecutionKind に 応じたタイミングで呼び出される。例えば、

  • ExecutionKind が PERIODIC の場合、本オペレーションは DataFlowComponentAction::on_execute と on_state_update の替わりに、 設定された順番、設定された周期で呼び出される。
  • ExecutionKind が EVENT_DRIVEN の場合、本オペレーションは FsmParticipantAction::on_action が呼ばれた際に、替わりに呼び出される。 このオペレーション呼び出しの結果として onError() コールバック関数が呼び出 される。
引数
exec_handle対象 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_execute ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[DataFlowComponentAction CORBA interface] RTC の定常処理(第一周期)

以下の状態が保持されている場合に、設定された周期で定期的に呼び出される。

  • RTC は Alive 状態である。
  • 指定された ExecutionContext が Running 状態である。 本オペレーションは、Two-Pass Execution の第一周期で実行される。 このオペレーション呼び出しの結果として onExecute() コールバック関数が呼び 出される。

制約

  • 指定された ExecutionContext の ExecutionKind は、 PERIODIC でなければな らない
引数
exec_handle定常処理対象 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_finalize ( )
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC の終了

RTC が破棄される。 RTC 固有の終了処理はここで実行する。 このオペレーション呼び出しの結果として onFinalize() コールバック関数が 呼び出される。

戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_initialize ( )
throw (CORBA::SystemException
)
virtual

[RTObject CORBA interface] ExecutionContextAdmin を取得する

このオペレーションは当該 RTC が所属する ExecutionContextに関連した ExecutionContextService のリストを返す。

戻り値
ExecutionContextService リスト

[ComponentAction CORBA interface] RTC の初期化

RTC が初期化され、Alive 状態に遷移する。 RTC 固有の初期化処理はここで実行する。 このオペレーション呼び出しの結果として onInitialize() コールバック関数が 呼び出される。

戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_rate_changed ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[DataFlowComponentAction CORBA interface] 実行周期変更通知

本オペレーションは、ExecutionContext の実行周期が変更されたことを通知する 際に呼び出される。 このオペレーション呼び出しの結果として onRateChanged() コールバック関数が 呼び出される。

制約

  • 指定された ExecutionContext の ExecutionKind は、 PERIODIC でなければな らない
引数
exec_handle定常処理対象 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_reset ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC のリセット

Error 状態にある RTC のリカバリ処理を実行し、Inactive 状態に復帰させる 場合に呼び出される。 RTC のリカバリ処理が成功した場合は Inactive 状態に復帰するが、それ以外の 場合には Error 状態に留まる。 このオペレーション呼び出しの結果として onReset() コールバック関数が呼び 出される。

引数
exec_handleリセット対象 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_shutdown ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC の停止

RTC が所属する ExecutionContext が Running 状態から Stopped 状態へ遷移 した場合に呼び出される。 このオペレーション呼び出しの結果として onShutdown() コールバック関数が 呼び出される。

引数
exec_handle状態遷移した ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_startup ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[ComponentAction CORBA interface] RTC の開始

RTC が所属する ExecutionContext が Stopped 状態から Running 状態へ遷移 した場合に呼び出される。 このオペレーション呼び出しの結果として onStartup() コールバック関数が 呼び出される。

引数
exec_handle状態遷移した ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::on_state_update ( UniqueId  exec_handle)
throw (CORBA::SystemException
)
virtual

[DataFlowComponentAction CORBA interface] RTC の定常処理(第二周期)

以下の状態が保持されている場合に、設定された周期で定期的に呼び出される。

  • RTC は Alive 状態である。
  • 指定された ExecutionContext が Running 状態である。 本オペレーションは、Two-Pass Execution の第二周期で実行される。 このオペレーション呼び出しの結果として onStateUpdate() コールバック関数が 呼び出される。

制約

  • 指定された ExecutionContext の ExecutionKind は、 PERIODIC でなければな らない
引数
exec_handle定常処理対象 ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onAborting ( RTC::UniqueId  exec_handle)
protectedvirtual

中断処理用コールバック関数

ComponentAction::on_aborting が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の中断処理は、本関数をオーバーライドして実装する 必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onActivated ( RTC::UniqueId  exec_handle)
protectedvirtual

活性化処理用コールバック関数

ComponentAction::on_activated が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の活性化処理は、本関数をオーバーライドして実装する 必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

void RTC::RTObject_impl::onAddPort ( const PortProfile &  pprof)
inlineprotected

参照先 RTC::ADD_PORT.

void RTC::RTObject_impl::onAttachExecutionContext ( UniqueId  ec_id)
inlineprotected

参照先 RTC::EC_ATTACHED.

virtual ReturnCode_t RTC::RTObject_impl::onDeactivated ( RTC::UniqueId  exec_handle)
protectedvirtual

非活性化処理用コールバック関数

ComponentAction::on_deactivated が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているの で、各コンポーネントの実際の非活性化処理は、本関数をオーバーライ ドして実装する必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

void RTC::RTObject_impl::onDetachExecutionContext ( UniqueId  ec_id)
inlineprotected

参照先 RTC::EC_DETACHED.

virtual ReturnCode_t RTC::RTObject_impl::onError ( RTC::UniqueId  exec_handle)
protectedvirtual

エラー処理用コールバック関数

ComponentAction::on_error が呼ばれた際に実行されるコールバック関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際のエラー処理は、本関数をオーバーライドして実装する 必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onExecute ( RTC::UniqueId  exec_handle)
protectedvirtual

周期処理用コールバック関数

DataFlowComponentAction::on_execute が呼ばれた際に実行される コールバック関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の周期処理は、本関数をオーバーライドして実装する 必要がある。
本関数は Periodic Sampled Data Processing における Two-Pass Executionの 1回目の実行パスとして定期的に呼び出される。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onFinalize ( )
protectedvirtual

終了処理用コールバック関数

ComponentAction::on_finalize が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の終了処理は、本関数をオーバーライドして実装する 必要がある。

戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

virtual ReturnCode_t RTC::RTObject_impl::onInitialize ( )
protectedvirtual

初期化処理用コールバック関数

ComponentAction::on_initialize が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の初期化処理は、本関数をオーバーライドして実装する 必要がある。

戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

virtual ReturnCode_t RTC::RTObject_impl::onRateChanged ( RTC::UniqueId  exec_handle)
protectedvirtual

動作周期変更通知用コールバック関数

DataFlowComponentAction::on_rate_changed が呼ばれた際に実行される コールバック関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の状態変更処理は、本関数をオーバーライドし て実装する必要がある。
本関数は Periodic Sampled Data Processing において ExecutionContext の実行が更新された際に呼び 出される。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
void RTC::RTObject_impl::onRemovePort ( const PortProfile &  pprof)
inlineprotected

参照先 RTC::REMOVE_PORT.

virtual ReturnCode_t RTC::RTObject_impl::onReset ( RTC::UniqueId  exec_handle)
protectedvirtual

リセット処理用コールバック関数

ComponentAction::on_reset が呼ばれた際に実行されるコールバック関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際のリセット処理は、本関数をオーバーライドし て実装する必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード

RTC::PeriodicECSharedCompositeで再実装されています。

virtual ReturnCode_t RTC::RTObject_impl::onShutdown ( RTC::UniqueId  exec_handle)
protectedvirtual

停止処理用コールバック関数

ComponentAction::on_shutdown が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の停止処理は、本関数をオーバーライドして実装する 必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onStartup ( RTC::UniqueId  exec_handle)
protectedvirtual

開始処理用コールバック関数

ComponentAction::on_startup が呼ばれた際に実行されるコールバック 関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の開始処理は、本関数をオーバーライドして実装する 必要がある。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
virtual ReturnCode_t RTC::RTObject_impl::onStateUpdate ( RTC::UniqueId  exec_handle)
protectedvirtual

状態変更処理用コールバック関数

DataFlowComponentAction::on_state_update が呼ばれた際に実行される コールバック関数。
本関数は無条件に RTC::RTC_OK を返すようにダミー実装されているので、 各コンポーネントの実際の状態変更処理は、本関数をオーバーライドし て実装する必要がある。
本関数は Periodic Sampled Data Processing における Two-Pass Executionの2回目の実行パスとして定 期的に呼び出される。

引数
exec_handle参加している ExecutionContext の ID
戻り値
ReturnCode_t 型のリターンコード
void RTC::RTObject_impl::postOnAborting ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnActivated ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnDeactivated ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnError ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected

参照先 RTC::POST_ON_ERROR.

void RTC::RTObject_impl::postOnExecute ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnFinalize ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnInitialize ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnRateChanged ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnReset ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected

参照先 RTC::POST_ON_RESET.

void RTC::RTObject_impl::postOnShutdown ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnStartup ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::postOnStateUpdate ( UniqueId  ec_id,
ReturnCode_t  ret 
)
inlineprotected
void RTC::RTObject_impl::preOnAborting ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnActivated ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnDeactivated ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnError ( UniqueId  ec_id)
inlineprotected

参照先 RTC::PRE_ON_ERROR.

void RTC::RTObject_impl::preOnExecute ( UniqueId  ec_id)
inlineprotected

参照先 RTC::PRE_ON_EXECUTE.

void RTC::RTObject_impl::preOnFinalize ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnInitialize ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnRateChanged ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnReset ( UniqueId  ec_id)
inlineprotected

参照先 RTC::PRE_ON_RESET.

void RTC::RTObject_impl::preOnShutdown ( UniqueId  ec_id)
inlineprotected
void RTC::RTObject_impl::preOnStartup ( UniqueId  ec_id)
inlineprotected

参照先 RTC::PRE_ON_STARTUP.

void RTC::RTObject_impl::preOnStateUpdate ( UniqueId  ec_id)
inlineprotected
bool RTC::RTObject_impl::readAll ( )

InPort のデータを読み込む。

RTC が保持する全ての InPort のデータを読み込む。

戻り値
読み込み結果(全ポートの読み込み成功:true,失敗:false)
void RTC::RTObject_impl::registerInPort ( const char *  name,
InPortBase inport 
)

[local interface] DataInPort を登録する

RTC が保持する DataInPort を登録する。 Port のプロパティにデータポートであること("port.dataport")、 TCPを使用すること("tcp_any")を設定するとともに、 DataInPort の インスタンスを生成し、登録する。

引数
nameport 名称
inport登録対象 DataInPort
void RTC::RTObject_impl::registerOutPort ( const char *  name,
OutPortBase outport 
)

[local interface] DataOutPort を登録する

RTC が保持する DataOutPortを登録する。 Port のプロパティにデータポートであること("port.dataport")、 TCPを使用すること("tcp_any")を設定するとともに、 DataOutPort の インスタンスを生成し、登録する。

引数
nameport 名称
outport登録対象 DataOutPort
void RTC::RTObject_impl::registerPort ( PortBase port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
void RTC::RTObject_impl::registerPort ( PortService_ptr  port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
void RTC::RTObject_impl::registerPort ( CorbaPort port)

[local interface] Port を登録する

RTC が保持するPortを登録する。 Port を外部からアクセス可能にするためには、このオペレーションにより 登録されていなければならない。登録される Port はこの RTC 内部において PortProfile.name により区別される。したがって、Port は RTC 内において、 ユニークな PortProfile.name を持たなければならない。 登録された Port は内部で適切にアクティブ化された後、その参照と オブジェクト参照がリスト内に保存される。

引数
portRTC に登録する Port
void RTC::RTObject_impl::removeConfigurationParamListener ( ConfigurationParamListenerType  type,
ConfigurationParamListener listener 
)

ConfigurationParamListener を削除する

addConfigurationParamListener で追加されたリスナオブジェクトを削除する。

引数
typeConfigurationParamListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listener与えたリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removeConfigurationSetListener ( ConfigurationSetListenerType  type,
ConfigurationSetListener listener 
)

ConfigurationSetListener を削除する

addConfigurationSetListener で追加されたリスナオブジェクトを削除する。

引数
typeConfigurationSetListenerType型の値。
listener与えたリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removeConfigurationSetNameListener ( ConfigurationSetNameListenerType  type,
ConfigurationSetNameListener listener 
)

ConfigurationSetNameListener を削除する

addConfigurationSetNameListener で追加されたリスナオブジェクトを 削除する。

引数
typeConfigurationSetNameListenerType型の値。 ON_UPDATE_CONFIG_PARAM がある。
listener与えたリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removeExecutionContextActionListener ( ECActionListenerType  listener_type,
ECActionListener listener 
)

ExecutionContextActionListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
bool RTC::RTObject_impl::removeInPort ( InPortBase port)

[local interface] InPort の登録を削除する

RTC が保持するInPortの登録を削除する。

引数
port削除対象 Port
戻り値
削除結果(削除成功:true,削除失敗:false)
bool RTC::RTObject_impl::removeOutPort ( OutPortBase port)

[local interface] OutPort の登録を削除する

RTC が保持するOutPortの登録を削除する。

引数
port削除対象 Port
戻り値
削除結果(削除成功:true,削除失敗:false)
bool RTC::RTObject_impl::removePort ( PortBase port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
戻り値
削除結果(削除成功:true,削除失敗:false)
bool RTC::RTObject_impl::removePort ( PortService_ptr  port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
戻り値
削除結果(削除成功:true,削除失敗:false)
bool RTC::RTObject_impl::removePort ( CorbaPort port)

[local interface] Port の登録を削除する

RTC が保持するPortの登録を削除する。

引数
port削除対象 Port
戻り値
削除結果(削除成功:true,削除失敗:false)
void RTC::RTObject_impl::removePortActionListener ( PortActionListenerType  listener_type,
PortActionListener listener 
)

PortActionListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removePortConnectListener ( PortConnectListenerType  listener_type,
PortConnectListener listener 
)

PortConnectListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removePortConnectRetListener ( PortConnectRetListenerType  listener_type,
PortConnectRetListener listener 
)

PortConnectRetListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removePostComponentActionListener ( PostComponentActionListenerType  listener_type,
PostComponentActionListener listener 
)

PostComponentActionListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
void RTC::RTObject_impl::removePreComponentActionListener ( PreComponentActionListenerType  listener_type,
PreComponentActionListener listener 
)

PreComponentActionListener リスナを削除する

設定した各種リスナを削除する。

引数
listener_typeリスナタイプ
listenerリスナオブジェクトへのポインタ
bool RTC::RTObject_impl::removeSdoServiceConsumer ( const char *  id)

[local interface] SDO service provider を削除する

void RTC::RTObject_impl::removeSdoServiceConsumerStartThread ( const char *  id)

[local interface] SDO service provider を別スレッドで削除する

bool RTC::RTObject_impl::removeSdoServiceProvider ( const char *  id)

[local interface] SDO service provider を削除する

ReturnCode_t RTC::RTObject_impl::reset ( RTC::UniqueId  ec_id)

[local interface] 状態をリセットし Inactive に遷移させる

状態を Error から Inactive に遷移させる。この関数は以下の関 数内で呼ばれることを前提としている。

この関数の引数は上記の関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
戻り値
リターンコード
ReturnCode_t RTC::RTObject_impl::setExecutionRate ( RTC::UniqueId  ec_id,
double  rate 
)

[local interface] 実行コンテキストの実行レートを設定する

現在実行中の実行コンテキストの実行レートを設定する。実行コンテキ ストのKindがPERIODIC以外の場合の動作は未定義である。この関数は以 下の関数内で呼ばれることを前提としている。

この関数の引数はこれらの関数の引数 UniquieID exec_handle でなけ ればならない。

引数
ec_id上記関数の第1引数 exec_handle を渡す必要がある。
rate実行レートを [Hz] で与える
void RTC::RTObject_impl::setInstanceName ( const char *  instance_name)

[local interface] インスタンス名の設定

ComponentProfile に指定されたインスタンス名を設定する。

引数
instance_nameインスタンス名
void RTC::RTObject_impl::setObjRef ( const RTObject_ptr  rtobj)

[local interface] オブジェクトリファレンスの設定

RTC の CORBA オブジェクトリファレンスを設定する。

引数
rtobjオブジェクトリファレンス
void RTC::RTObject_impl::setProperties ( const coil::Properties prop)

[local interface] RTC のプロパティを設定する

RTC が保持すべきプロパティを設定する。与えられるプロパティは、 ComponentProfile 等に設定されるべき情報を持たなければならない。 このオペレーションは通常 RTC が初期化される際に Manager から 呼ばれることを意図している。

引数
propRTC のプロパティ
void RTC::RTObject_impl::setReadAll ( bool  read = true,
bool  completion = false 
)

onExecute()実行前でのreadAll()メソッドの呼出を有効または無効にする。

このメソッドをパラメータをtrueとして呼ぶ事により、onExecute()実行前に readAll()が呼出されるようになる。 パラメータがfalseの場合は、readAll()呼出を無効にする。

引数
read(default:true)(readAll()メソッド呼出あり:true, readAll()メソッド呼出なし:false)
completion(default:false)readAll()にて、どれかの一つのInPortのread()が失敗しても全ての InPortのread()を呼び出す:true, readAll()にて、どれかの一つの InPortのread()が失敗した場合、すぐにfalseで抜ける:false
void RTC::RTObject_impl::setWriteAll ( bool  write = true,
bool  completion = false 
)

onExecute()実行後にwriteAll()メソッドの呼出を有効または無効にする。

このメソッドをパラメータをtrueとして呼ぶ事により、onExecute()実行後に writeAll()が呼出されるようになる。 パラメータがfalseの場合は、writeAll()呼出を無効にする。

引数
write(default:true)(writeAll()メソッド呼出あり:true, writeAll()メソッド呼出 なし:false)
completion(default:false)writeAll()にて、どれかの一つのOutPortのwrite()が失敗しても全 てのOutPortのwrite()を呼び出しを行う:true, writeAll()にて、ど れかの一つのOutPortのwrite()が失敗した場合、すぐにfalseで抜け る:false
void RTC::RTObject_impl::shutdown ( )
protected

RTC を終了する

RTC の終了処理を実行する。 保持している全 Port の登録を解除するとともに、該当する CORBA オブジェクト を非活性化し、RTC を終了する。

void RTC::RTObject_impl::updateParameters ( const char *  config_set)

コンフィギュレーションパラメータの更新(ID指定)

指定したIDのコンフィギュレーションセットに設定した値で、 コンフィギュレーションパラメータの値を更新する

引数
config_set設定対象のコンフィギュレーションセットID
bool RTC::RTObject_impl::writeAll ( )

OutPort のwrite()メソッドをコールする。

RTC が保持する全ての OutPort のwrite()メソッドをコールする。

戻り値
読み込み結果(全ポートへの書き込み成功:true,失敗:false)

メンバ詳解

ComponentActionListeners RTC::RTObject_impl::m_actionListeners
protected

ComponentActionListenerホルダ

ComponentActionListenrを保持するホルダ

ConfigAdmin RTC::RTObject_impl::m_configsets
protected

コンフィギュレーション情報管理オブジェクト

bool RTC::RTObject_impl::m_created
protected

Created 状態フラグ

std::vector<ExecutionContextBase*> RTC::RTObject_impl::m_eclist
protected

ExecutionContextBase のリスト

ExecutionContextServiceList RTC::RTObject_impl::m_ecMine
protected

自分がownerのExecutionContextService のリスト

ExecutionContextServiceList RTC::RTObject_impl::m_ecOther
protected

参加しているExecutionContextService のリスト

bool RTC::RTObject_impl::m_exiting
protected

RTCの終了状態フラグ

std::vector<InPortBase*> RTC::RTObject_impl::m_inports
protected

InPortBase* のリスト

RTObject_var RTC::RTObject_impl::m_objref
protected

オブジェクトリファレンス

std::vector<OutPortBase*> RTC::RTObject_impl::m_outports
protected

OutPortBase* のリスト

Manager* RTC::RTObject_impl::m_pManager
protected

マネージャオブジェクト

CORBA::ORB_var RTC::RTObject_impl::m_pORB
protected

ORB へのポインタ

PortAdmin RTC::RTObject_impl::m_portAdmin
protected

Port のオブジェクトリファレンスのリスト

PortConnectListeners RTC::RTObject_impl::m_portconnListeners
protected

PortConnectListenerホルダ

PortConnectListenrを保持するホルダ

PortableServer::POA_var RTC::RTObject_impl::m_pPOA
protected

POA へのポインタ

ComponentProfile RTC::RTObject_impl::m_profile
protected

コンポーネントプロファイル

coil::Properties RTC::RTObject_impl::m_properties
protected

Alive 状態フラグ

RTC のプロパティ

SDOPackage::Configuration_var RTC::RTObject_impl::m_pSdoConfig
protected

SDO Configuration Interface へのポインタ

SDOPackage::Configuration_impl* RTC::RTObject_impl::m_pSdoConfigImpl
protected

SDO Configuration オブジェクトへのポインタ

bool RTC::RTObject_impl::m_readAll
protected

readAll()呼出用のフラグ

bool RTC::RTObject_impl::m_readAllCompletion
protected

readAll()用のフラグ

true:readAll()の途中ででエラーが発生しても最後まで実施する。 false:readAll()の途中ででエラーが発生した場合終了。

SdoServiceConsumerTerminator* RTC::RTObject_impl::m_sdoconterm
protected
SDOPackage::OrganizationList RTC::RTObject_impl::m_sdoOrganizations
protected

SDO organization.

SDOPackage::OrganizationList RTC::RTObject_impl::m_sdoOwnedOrganizations
protected

SDO が保持する organization のリスト

SdoServiceAdmin RTC::RTObject_impl::m_sdoservice
protected

SDO Service 管理オブジェクト

SDOPackage::NVList RTC::RTObject_impl::m_sdoStatus
protected

SDO Status.

bool RTC::RTObject_impl::m_writeAll
protected

writeAll()呼出用のフラグ

bool RTC::RTObject_impl::m_writeAllCompletion
protected

writeAll()用のフラグ

true:writeAll()の途中ででエラーが発生しても最後まで実施する。 false:writeAll()の途中ででエラーが発生した場合終了。

Logger RTC::RTObject_impl::rtclog
mutableprotected

ロガーストリーム


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