プロジェクト

全般

プロフィール

機能 #3688

[FSM4RTC] データポートのPortProfile/ConnectorProfileのプロパティ拡張作業

n-ando7年以上前に追加. 約7年前に更新.

ステータス:
終了
優先度:
通常
担当者:
対象バージョン:
開始日:
2017/01/19
期日:
進捗率:

100%

予定工数:
(合計: 0.00時間)

説明

データポート間を接続する際には、それぞれのポートが持つPortProfileの各種情報を取得しポートがサポートしている機能の情報を取得したうえで、ConnectorProfileのフィールドに必要な情報をセットし、1か所のポートに対して引数を渡しnotify()関数を呼ぶことでポート間の接続が確立される。FSM4RTCでは、PortProfile::properties, ConnectorProfile::properties にセットする値がOpenRTM-aistで決められているものから変更されており、本実装では、この仕様に対応させる作業を実施する。

FSM4RTCでは以下の14種類の標準プロパティが定義されており、PortProfileでは、dataport.fsm_event_name を除くプロパティがセットされている。また、ConnectorProfileでは14種類すべての値に対して、振る舞いを変更するなどの対応が必要となる。

  • dataport.dataflow_type: {push, pull}
  • dataport.io_mode: {block, nonblock}
  • dataport.data_type: Data type in IFR
  • dataport.interface_type: Interface type in IFR
  • dataport.marshaling_type: marshaling type
  • dataport.timestamp_policy: {on_write, on_send, on_received, on_read, none}
  • dataport.write_buffer_length: int
  • dataport.write_buffer_full_policy: {overwrite, do_nothing, block}
  • dataport.write_buffer_timeout: [s]
  • dataport.read_buffer_length: int
  • dataport.read_buffer_empty_policy: {read_back, do_nothing, block}
  • dataport.read_buffer_timeout: [s]
  • dataport.read_buffer_queue_policy: {all, fifo, new}
  • dataport.fsm_event_name: イベント名

なお、実装するにあたり、過去のバージョンとの互換性のため、新旧両方のプロパティに対応させること。
これらのプロパティーのうち、dataport.timestamp_policy についてはOpenRTM-aistに該当する機能はないため、新規にInPort/OutPortに実装すること。


子チケット

機能 #3871: [FSM4RTC] データポートのタイムスタンプ打刻機能終了n-ando

関係しているリビジョン

リビジョン 2824 (差分)
n-ando7年以上前に追加

[FSM4RTC,compat,new prop] PortProfile/ConnectorProfile "dataport.io_mode" has been added. refs #3688

リビジョン 2824 (差分)
n-ando7年以上前に追加

[FSM4RTC,compat,new prop] PortProfile/ConnectorProfile "dataport.io_mode" has been added. refs #3688

リビジョン 3116 (差分)
n-ando6年以上前に追加

merged changes from branches/FSM4RTC/OpenRTM-aist r2821, no confliction:
[FSM4RTC,doc,->RELENG_2_0] FSM listeners documentations have been updated. refs #3860
[FSM4RTC,incompat,new funcs,->RELENG_2_0] add/remove functions for FSM listeners have been added. refs #3681
[FSM4RTC,new file,->RELENG_2_0] Macho (Machine object state machine engine) has been introduced to rtm. refs #3683
[FSM4RTC,compat,new prop,->RELENG_2_0] PortProfile/ConnectorProfile "dataport.io_mode" has been added. refs #3688
[prop,->RELENG_2_0] Ignore some generated files.
[prop,->RELENG_2_0] Ignore some generated files.

リビジョン 3116 (差分)
n-ando6年以上前に追加

merged changes from branches/FSM4RTC/OpenRTM-aist r2821, no confliction:
[FSM4RTC,doc,->RELENG_2_0] FSM listeners documentations have been updated. refs #3860
[FSM4RTC,incompat,new funcs,->RELENG_2_0] add/remove functions for FSM listeners have been added. refs #3681
[FSM4RTC,new file,->RELENG_2_0] Macho (Machine object state machine engine) has been introduced to rtm. refs #3683
[FSM4RTC,compat,new prop,->RELENG_2_0] PortProfile/ConnectorProfile "dataport.io_mode" has been added. refs #3688
[prop,->RELENG_2_0] Ignore some generated files.
[prop,->RELENG_2_0] Ignore some generated files.

履歴

#1 n-ando7年以上前に更新

  • ステータス新規 から 担当 に変更
  • 進捗率0 から 10 に変更
  • r2824にて io_mode を追加。

#2 n-ando7年以上前に更新

変更作業は以下の通り。

  • dataport.io_mode: {block, nonblock}
  • dataport.marshaling_type: marshaling type
  • dataport.timestamp_policy: {on_write, on_send, on_received, on_read, none}
  • dataport.fsm_event_name: イベント名

以下は実装確認作業が必要。

  • dataport.write_buffer_length: int
  • dataport.write_buffer_full_policy: {overwrite, do_nothing, block}
  • dataport.write_buffer_timeout: [s]
  • dataport.read_buffer_length: int
  • dataport.read_buffer_empty_policy: {read_back, do_nothing, block}
  • dataport.read_buffer_timeout: [s]
  • dataport.read_buffer_queue_policy: {all, fifo, new}

#3 n-ando約7年前に更新

  • ステータス担当 から 終了 に変更

他の形式にエクスポート: Atom PDF