public class OutPortDirectProvider extends java.lang.Object implements OutPortProvider, ObjectCreator<OutPortProvider>, ObjectDestructor
データ転送に CORBA の OpenRTM::OutPortCdr インターフェースを利用し た、push 型データフロー型を実現する OutPort プロバイダクラス。
修飾子とタイプ | フィールドと説明 |
---|---|
protected NVListHolder |
m_properties
インタフェース情報を保持するオブジェクトです。
|
コンストラクタと説明 |
---|
OutPortDirectProvider()
コンストラクタ
|
修飾子とタイプ | メソッドと説明 |
---|---|
protected PortStatus |
convertReturn(ReturnCode status,
EncapsOutputStreamExt data)
リターンコード変換
{p.en Return codes conversion}
|
OutPortProvider |
creator_()
OutPortDirectProvider を生成する
|
void |
destructor_(java.lang.Object obj)
OutPortDirectProvider を破棄する
|
void |
init(Properties prop)
設定初期化
{@.ja OutPortDirectProvider の各種設定を行う。
|
static void |
OutPortDirectProviderInit()
モジュール初期化関数
OutPortCorbaCdrConsumer のファクトリを登録する初期化関数。
|
boolean |
publishInterface(NVListHolder properties)
Interface情報を公開する
{@.ja Interface情報を公開する。
|
void |
publishInterfaceProfile(NVListHolder properties)
InterfaceProfile情報を公開する
{@.ja InterfaceProfile情報を公開する。
|
PortStatus |
put(byte[] data)
[CORBA interface] バッファにデータを書き込む
設定されたバッファにデータを書き込む。
|
PortStatus |
put(CdrDataHolder data)
[CORBA interface] バッファにデータを書き込む
設定されたバッファにデータを書き込む。
|
void |
setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
バッファをセットする
{@.ja OutPortProvider がデータを取り出すバッファをセットする。
|
void |
setConnector(OutPortConnector connector)
Connectorを設定する。
|
protected void |
setInterfaceType(java.lang.String interfaceType)
インタフェースプロフィールのインタフェースタイプを設定する。
|
void |
setListener(ConnectorBase.ConnectorInfo info,
ConnectorListeners listeners)
リスナを設定する。
|
protected NVListHolder m_properties
インタフェース情報を保持するオブジェクトです。
public void init(Properties prop)
OutPortDirectProvider の各種設定を行う。与えられた Propertiesから必要な情報を取得して各種設定を行う。この init() 関 数は、OutPortProvider生成直後および、接続時にそれぞれ呼ばれる可 能性がある。したがって、この関数は複数回呼ばれることを想定して記 述されるべきである。
init
インタフェース内 OutPortProvider
prop
- 設定情報
public void setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
OutPortProvider がデータを取り出すバッファをセットする。 すでにセットされたバッファがある場合、以前のバッファへの ポインタに対して上書きされる。 OutPortProviderはバッファの所有権を仮定していないので、 バッファの削除はユーザの責任で行わなければならない。
setBuffer
インタフェース内 OutPortProvider
buffer
- OutPortProviderがデータを取り出すバッファへのポインタ
public PortStatus put(byte[] data) throws org.omg.CORBA.SystemException
設定されたバッファにデータを書き込む。
data
- 書込対象データ
org.omg.CORBA.SystemException
public PortStatus put(CdrDataHolder data) throws org.omg.CORBA.SystemException
設定されたバッファにデータを書き込む。
data
- 書込対象データ
org.omg.CORBA.SystemException
protected PortStatus convertReturn(ReturnCode status, EncapsOutputStreamExt data)
status
- ReturnCode
public OutPortProvider creator_()
creator_
インタフェース内 ObjectCreator<OutPortProvider>
public void destructor_(java.lang.Object obj)
destructor_
インタフェース内 ObjectDestructor
obj
- 破棄するインタスタンス
public static void OutPortDirectProviderInit()
OutPortCorbaCdrConsumer のファクトリを登録する初期化関数。
public void publishInterfaceProfile(NVListHolder properties)
InterfaceProfile情報を公開する。 引数で指定するプロパティ情報内の NameValue オブジェクトの dataport.interface_type 値を調べ、当該ポートに設定されている インターフェースタイプと一致する場合のみ情報を取得する。
publishInterfaceProfile
インタフェース内 OutPortProvider
properties
- InterfaceProfile情報を受け取るホルダオブジェクト
public boolean publishInterface(NVListHolder properties)
Interface情報を公開する。引数で指定するプロパティ情報内の NameValue オブジェクトのdataport.interface_type 値を調べ、当該ポー トに設定されていなければNameValue に情報を追加する。すでに同一イ ンターフェースが登録済みの場合は何も行わない。
publishInterface
インタフェース内 OutPortProvider
properties
- properties Interface情報を受け取るホルダオブジェクト
public void setListener(ConnectorBase.ConnectorInfo info, ConnectorListeners listeners)
OutPort はデータ送信処理における各種イベントに対して特定のリスナ オブジェクトをコールするコールバック機構を提供する。詳細は ConnectorListener.h の ConnectorDataListener, ConnectorListener 等を参照のこと。OutPortDirectProvider では、以下のコールバック が提供される。
setListener
インタフェース内 OutPortProvider
info
- 接続情報
listeners
- リスナオブジェクト
public void setConnector(OutPortConnector connector)
OutPort は接続確立時に OutPortConnector オブジェクトを生成し、生 成したオブジェクトのポインタと共にこの関数を呼び出す。所有権は OutPort が保持するので OutPortProvider は OutPortConnector を削 除してはいけない。
setConnector
インタフェース内 OutPortProvider
connector
- OutPortConnector
protected void setInterfaceType(java.lang.String interfaceType)
interfaceType
- インタフェースタイプ