jp.go.aist.rtm.RTC.port
クラス OutPortCorbaCdrProvider

java.lang.Object
  上位を拡張 org.omg.PortableServer.Servant
      上位を拡張 OpenRTM.OutPortCdrPOA
          上位を拡張 jp.go.aist.rtm.RTC.port.OutPortCorbaCdrProvider
すべての実装されたインタフェース:
ObjectCreator<OutPortProvider>, ObjectDestructor, OutPortProvider, OutPortCdrOperations, org.omg.CORBA.portable.InvokeHandler

public class OutPortCorbaCdrProvider
extends OutPortCdrPOA
implements OutPortProvider, ObjectCreator<OutPortProvider>, ObjectDestructor

OutPortCorbaCdrProvider クラス

データ転送に CORBA の OpenRTM::OutPortCdr インターフェースを利用し た、pull 型データフロー型を実現する OutPort プロバイダクラス。


フィールドの概要
protected  NVListHolder m_properties
          接続プロフィールを保持するメンバ変数です。
 
コンストラクタの概要
OutPortCorbaCdrProvider()
          コンストラクタ
 
メソッドの概要
 OutPortCdr _this()
          当該OpenRTM.OutPortCdrのCORBAオブジェクト参照を取得する。
protected  PortStatus convertReturn(ReturnCode status)
          ReturnCodeをPortStatusに変換する。
 OutPortProvider creator_()
          OutPortCorbaCdrProvider を生成する
 void destructor_(java.lang.Object obj)
          OutPortCorbaCdrProvider を破棄する
 PortStatus get(CdrDataHolder data)
          [CORBA interface] バッファからデータを取得する 設定された内部バッファからデータを取得する。
 void init(Properties prop)
          設定初期化 {@.ja OutPortCorbaCdrProvider の各種設定を行う。
static void OutPortCorbaCdrProviderInit()
          モジュール初期化関数 OutPortCorbaCdrProvider のファクトリを登録する初期化関数。
 boolean publishInterface(NVListHolder properties)
          Interface情報を公開する {@.ja Interface情報を公開する。
 void publishInterfaceProfile(NVListHolder properties)
          InterfaceProfile情報を公開する {@.ja InterfaceProfile情報を公開する。
 void setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
          バッファをセットする {@.ja OutPortProvider がデータを取り出すバッファをセットする。
 void setConnector(OutPortConnector connector)
          Connectorを設定する。
protected  void setDataFlowType(java.lang.String dataFlowType)
          インタフェースプロフィールのデータフロータイプを設定する。
protected  void setDataType(java.lang.String dataType)
          インタフェースプロフィールのデータタイプを設定する。
protected  void setInterfaceType(java.lang.String interfaceType)
          インタフェースプロフィールのインタフェースタイプを設定する。
 void setListener(ConnectorBase.ConnectorInfo info, ConnectorListeners listeners)
          リスナを設定する。
protected  void setPortType(java.lang.String portType)
          インタフェースプロフィールのポートタイプを設定する。
protected  void setSubscriptionType(java.lang.String subscriptionType)
          インタフェースプロフィールのサブスクリプションタイプを設定する。
 
クラス OpenRTM.OutPortCdrPOA から継承されたメソッド
_all_interfaces, _invoke, _this
 
クラス org.omg.PortableServer.Servant から継承されたメソッド
_default_POA, _get_delegate, _get_interface_def, _is_a, _non_existent, _object_id, _orb, _poa, _set_delegate, _this_object, _this_object
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

m_properties

protected NVListHolder m_properties

接続プロフィールを保持するメンバ変数です。

コンストラクタの詳細

OutPortCorbaCdrProvider

public OutPortCorbaCdrProvider()
コンストラクタ

メソッドの詳細

_this

public OutPortCdr _this()
当該OpenRTM.OutPortCdrのCORBAオブジェクト参照を取得する。

オーバーライド:
クラス OutPortCdrPOA 内の _this
戻り値:
当該PortのCORBAオブジェクト参照

init

public void init(Properties prop)
設定初期化

OutPortCorbaCdrProvider の各種設定を行う。与えられた Propertiesから必要な情報を取得して各種設定を行う。この init() 関 数は、OutPortProvider生成直後および、接続時にそれぞれ呼ばれる可 能性がある。したがって、この関数は複数回呼ばれることを想定して記 述されるべきである。

定義:
インタフェース OutPortProvider 内の init
パラメータ:
prop - 設定情報

setBuffer

public void setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
バッファをセットする

OutPortProvider がデータを取り出すバッファをセットする。 すでにセットされたバッファがある場合、以前のバッファへの ポインタに対して上書きされる。 OutPortProviderはバッファの所有権を仮定していないので、 バッファの削除はユーザの責任で行わなければならない。

定義:
インタフェース OutPortProvider 内の setBuffer
パラメータ:
buffer - OutPortProviderがデータを取り出すバッファへのポインタ

get

public PortStatus get(CdrDataHolder data)
[CORBA interface] バッファからデータを取得する

設定された内部バッファからデータを取得する。

定義:
インタフェース OutPortCdrOperations 内の get
パラメータ:
data - 取得データを格納するバッファ
戻り値:
ステータス

convertReturn

protected PortStatus convertReturn(ReturnCode status)
ReturnCodeをPortStatusに変換する。

パラメータ:
status - ReturnCode
戻り値:
PortStatus

creator_

public OutPortProvider creator_()
OutPortCorbaCdrProvider を生成する

定義:
インタフェース ObjectCreator<OutPortProvider> 内の creator_
戻り値:
生成されたOutPortProvider

destructor_

public void destructor_(java.lang.Object obj)
OutPortCorbaCdrProvider を破棄する

定義:
インタフェース ObjectDestructor 内の destructor_
パラメータ:
obj - 破棄するインタスタンス

OutPortCorbaCdrProviderInit

public static void OutPortCorbaCdrProviderInit()
モジュール初期化関数

OutPortCorbaCdrProvider のファクトリを登録する初期化関数。


publishInterfaceProfile

public void publishInterfaceProfile(NVListHolder properties)
InterfaceProfile情報を公開する

InterfaceProfile情報を公開する。 引数で指定するプロパティ情報内の NameValue オブジェクトの dataport.interface_type 値を調べ、当該ポートに設定されている インターフェースタイプと一致する場合のみ情報を取得する。

定義:
インタフェース OutPortProvider 内の publishInterfaceProfile
パラメータ:
properties - InterfaceProfile情報を受け取るプロパティ

publishInterface

public boolean publishInterface(NVListHolder properties)
Interface情報を公開する

Interface情報を公開する。引数で指定するプロパティ情報内の NameValue オブジェクトのdataport.interface_type 値を調べ、当該ポー トに設定されていなければNameValue に情報を追加する。すでに同一イ ンターフェースが登録済みの場合は何も行わない。

定義:
インタフェース OutPortProvider 内の publishInterface
パラメータ:
properties - Interface情報を受け取るプロパティ
戻り値:
true: 正常終了

setConnector

public void setConnector(OutPortConnector connector)
Connectorを設定する。

OutPort は接続確立時に OutPortConnector オブジェクトを生成し、生 成したオブジェクトのポインタと共にこの関数を呼び出す。所有権は OutPort が保持するので OutPortProvider は OutPortConnector を削 除してはいけない。

定義:
インタフェース OutPortProvider 内の setConnector
パラメータ:
connector - OutPortConnector

setPortType

protected void setPortType(java.lang.String portType)
インタフェースプロフィールのポートタイプを設定する。

パラメータ:
portType - ポートタイプ

setDataType

protected void setDataType(java.lang.String dataType)
インタフェースプロフィールのデータタイプを設定する。

パラメータ:
dataType - データタイプ

setInterfaceType

protected void setInterfaceType(java.lang.String interfaceType)
インタフェースプロフィールのインタフェースタイプを設定する。

パラメータ:
interfaceType - インタフェースタイプ

setDataFlowType

protected void setDataFlowType(java.lang.String dataFlowType)
インタフェースプロフィールのデータフロータイプを設定する。

パラメータ:
dataFlowType - データフロータイプ

setSubscriptionType

protected void setSubscriptionType(java.lang.String subscriptionType)
インタフェースプロフィールのサブスクリプションタイプを設定する。

パラメータ:
subscriptionType - サブスクリプションタイプ

setListener

public void setListener(ConnectorBase.ConnectorInfo info,
                        ConnectorListeners listeners)
リスナを設定する。

OutPort はデータ送信処理における各種イベントに対して特定のリスナ オブジェクトをコールするコールバック機構を提供する。詳細は ConnectorListener.h の ConnectorDataListener, ConnectorListener 等を参照のこと。OutPortCorbaCdrProvider では、以下のコールバック が提供される。

  1. - ON_BUFFER_READ
  2. - ON_SEND
  3. - ON_BUFFER_EMPTY
  4. - ON_BUFFER_READ_TIMEOUT
  5. - ON_SENDER_EMPTY
  6. - ON_SENDER_TIMEOUT
  7. - ON_SENDER_ERROR

定義:
インタフェース OutPortProvider 内の setListener
パラメータ:
info - 接続情報
listeners - リスナオブジェクト