YAMAGUCHI::weblog

海水パンツとゴーグルで、巨万の富を築きました。カリブの怪物、フリーアルバイター瞳です。

MICO CORBAでの型変換

動機

MICO CORBAを用いて通信をする際に元々のライブラリで用いているクラスとの型変換をしなければならないため.

一覧

CORBA.hをインクルードしてあげる.

IDL C++用ラッパー 定義
short MICO_Short CORBA::Short
unsigned short MICO_UShort CORBA::UShort
long MICO_Long CORBA::Long
unsigned long MICO_ULong CORBA::ULong
float MICO_Float CORBA::Float
double MICO_Double CORBA::Double
char MICO_Char CORBA::Char
boolean MICO_Boolean CORBA::Boolean
octet MICO_Octet CORBA::Octet
string (CORBA_string) CORBA::String_var

stringはなぜかCORBA_stringが使えなかったので,CORBA::String_varと直接呼んでやったら使えた.
あとsequence型は可変長.あらかじめ長さを指定することもできる.後からresizeする場合はlength関数を使う.

  • IDL
sequence<long> numvec;
  • C++
// 長さを調べる
numvec.length();
// リサイズする
ing size;
numvec.length(size);