Project

General

Profile

整備 #4010

データポート生成部分の修正

Added by n-miyamoto over 4 years ago. Updated about 4 years ago.

Status:
終了
Priority:
通常
Assignee:
Start date:
04/04/2017
Due date:
% Done:

100%

Estimated time:

Description

1.1.2では以下のようにRTC Builderの生成するPythonコードのデータポート初期化部分で引数の数だけNoneを入れていた。

in_arg = [None] * ((len(RTC._d_TimedShort) - 4) / 2)
self._d_in = RTC.TimedShort(*in_arg)

この場合、そのままOutPortのwrite関数を呼び出すとエラーが発生する。

このため、以下に添付されていたdata.pyを使って正しく初期化されるようにする。

http://openrtm.org/openrtm/ja/content/openrtm-users-03344-openrtm-aist-112-rtc-builder-%E3%81%A7%E8%87%AA%E5%8B%95%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%82%8B%E3%83%87%E3%83%BC%E3%82%BF%E3%83%9D%E3%83%BC%E3%83%88%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E4%BB%95%E6%A7%98%E5%A4%89%E6%9B%B4%EF%BC%9F-python-%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

それに合わせてRTC BuilderのテンプレートPy_RTC.py.vslを修正する。

History

#1 Updated by n-miyamoto over 4 years ago

  • Status changed from 新規 to 解決
  • % Done changed from 0 to 100

RTCUtil.pyにinstantiateDataType関数を追加した。

また、RTC BuilderのPy_RTC.py.vslのデータ初期化部分を以下のように変更した。

self._d_${port.tmplVarName} = OpenRTM_aist.instantiateDataType(${pyConv.getDataportInitMethodName(${port.type})})

#2 Updated by n-ando about 4 years ago

  • Status changed from 解決 to 終了

Also available in: Atom PDF