[openrtm-users 01021] support for wchar and wstring data types in BasicDataType.idl

3 個の投稿 / 0 new
最終投稿
root
オフライン
Last seen: 6時間 11分 前
登録日: 2009-06-23 14:31
[openrtm-users 01021] support for wchar and wstring data types in BasicDataType.idl

OpenRTM-aist開発者の皆様

産総研の松坂です。

ポートの間でやり取りされるデータ型は、BasicDataType.idlで定義されていると思うのですが、
データ型の中にwcharとwstringをサポートするデータ型を例えばTimedWCharやTimedWString
などの形で追加することはできませんでしょうか?

国際化文字列は現在のTimedString型でも無理矢理通信できてしまうのですが、上記のwstring型を
使う方がより正規の(?)方法のようです。

国際化文字列を無理矢理通信する方法はC++では使えたのですが、Pythonでは普通のやり方では
送信側にcdrMarshalエラーが出てしまうようで、うまい方法はないかと思っています。

未定義
root
オフライン
Last seen: 6時間 11分 前
登録日: 2009-06-23 14:31
[openrtm-users 01022] support for wchar and wstring data types

産総研の松坂です。

前回メールに不具合が起こる場合のソースをつけていなかったので、添付して送ります。
OpenRTM-aist 1.0.0RC1 Python版付属のサンプルコードを少し書き換えてUTF-8文字列を
送ろうとしているのですがcdrMarshalエラーが出ます。

前回メールを出した後で

[openrtm-users 00503] ポートの型による処理速度の差異

の一連の議論を読み返したのですが、wchar型もwstring型も文字列を送るという本来の
目的では生かしておいてほしいように思います(遅い反応ですいません)。
国際化文字列を送るという目的を考えると上記議論で問題となったパフォーマンスに
影響するコード変換機能も本来はありがたい機能です。

とはいえcharという名前は、8bitデータ型として誤解されやすいので、例えば新しい
TimedChar型はTimedOctet型と等価にして、より誤解の少なそうな名前(TimedCharacterとか)
を現在のTimedChar型と等価なものとして新しくに新設するなどして検討いただけると
ありがたいのですが、どうでしょうか?

ユーザ型で解決してしまっても良いのですが、国際化文字列の送受信は非常によく使われる機能だと
思うので何か共通のプロトコルがあった方が良いように思います。

2009/11/25 Yosuke Matsusaka :
> OpenRTM-aist開発者の皆様
>
> 産総研の松坂です。
>
> ポートの間でやり取りされるデータ型は、BasicDataType.idlで定義されていると思うのですが、
> データ型の中にwcharとwstringをサポートするデータ型を例えばTimedWCharやTimedWString
> などの形で追加することはできませんでしょうか?
>
> 国際化文字列は現在のTimedString型でも無理矢理通信できてしまうのですが、上記のwstring型を
> 使う方がより正規の(?)方法のようです。
>
> 国際化文字列を無理矢理通信する方法はC++では使えたのですが、Pythonでは普通のやり方では
> 送信側にcdrMarshalエラーが出てしまうようで、うまい方法はないかと思っています。

root
オフライン
Last seen: 6時間 11分 前
登録日: 2009-06-23 14:31
[openrtm-users 01032] support for wchar and wstring data types

産総研 松坂様

お世話になっております。
栗原です。

ご連絡が遅くなり、申し訳ございません。

BasicDataType.idlに[TimedWChar,TimedWCharSeq,TimedWString,TimedWStringSeq]
の4つの型を追加致しました。

最新のBasicDataType.idlを添付させて頂いております。
(リポジトリの方は、上記のデータタイプが追加されたIDLファイルになっております。)

Pythonのログに関しましても、情報を提供頂き有難うございました。

以上、宜しくお願い致します。

On Thu, 26 Nov 2009 14:04:58 +0900
Yosuke Matsusaka wrote:

> 産総研の松坂です。
>
> 前回メールに不具合が起こる場合のソースをつけていなかったので、添付して送ります。
> OpenRTM-aist 1.0.0RC1 Python版付属のサンプルコードを少し書き換えてUTF-8文字列を
> 送ろうとしているのですがcdrMarshalエラーが出ます。
>
> 前回メールを出した後で
>
> [openrtm-users 00503] ポートの型による処理速度の差異
>
> の一連の議論を読み返したのですが、wchar型もwstring型も文字列を送るという本来の
> 目的では生かしておいてほしいように思います(遅い反応ですいません)。
> 国際化文字列を送るという目的を考えると上記議論で問題となったパフォーマンスに
> 影響するコード変換機能も本来はありがたい機能です。
>
> とはいえcharという名前は、8bitデータ型として誤解されやすいので、例えば新しい
> TimedChar型はTimedOctet型と等価にして、より誤解の少なそうな名前(TimedCharacterとか)
> を現在のTimedChar型と等価なものとして新しくに新設するなどして検討いただけると
> ありがたいのですが、どうでしょうか?
>
> ユーザ型で解決してしまっても良いのですが、国際化文字列の送受信は非常によく使われる機能だと
> 思うので何か共通のプロトコルがあった方が良いように思います。
>
> 2009/11/25 Yosuke Matsusaka :
> > OpenRTM-aist開発者の皆様
> >
> > 産総研の松坂です。
> >
> > ポートの間でやり取りされるデータ型は、BasicDataType.idlで定義されていると思うのですが、
> > データ型の中にwcharとwstringをサポートするデータ型を例えばTimedWCharやTimedWString
> > などの形で追加することはできませんでしょうか?
> >
> > 国際化文字列は現在のTimedString型でも無理矢理通信できてしまうのですが、上記のwstring型を
> > 使う方がより正規の(?)方法のようです。
> >
> > 国際化文字列を無理矢理通信する方法はC++では使えたのですが、Pythonでは普通のやり方では
> > 送信側にcdrMarshalエラーが出てしまうようで、うまい方法はないかと思っています。
> >

コメントを投稿するにはログインまたはユーザー登録を行ってください

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2209
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク