プロジェクト

全般

プロフィール

バグ #2181

SDOPackage.idlをいろいろなidlコンパイラでコンパイルできるように修正する

n-andoほぼ13年前に追加. ほぼ12年前に更新.

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

100%

予定工数:

説明

SDOPackage.idlをいろいろなidlコンパイラでコンパイルできるように修正する

現状C++のIDLはJavaではコンパイルできない。

  • Preparation
    Since SDOPackage.idl(usually installed under /usr/include/rtm/idl as a part
    of OpenRTM-aist) can't be compiled with idlj, modify the following two lines.
  1. comment out line 40:
    #define TypeCode CORBA::TypeCode -> //#define TypeCode CORBA::TypeCode
  2. add namespace "CORBA::" to line 123:
    TypeCode code; -> CORBA::TypeCode code;

関係しているリビジョン

リビジョン 2356 (差分)
n-andoほぼ12年前に追加

Now SDOPackage.idl uses ORBIT_IDL definition to switch CORBA TypeCode member declaration. refs #2181

リビジョン 2356 (差分)
n-andoほぼ12年前に追加

Now SDOPackage.idl uses ORBIT_IDL definition to switch CORBA TypeCode member declaration. refs #2181

履歴

#1 n-andoほぼ12年前に更新

  • 進捗率0 から 100 に変更

ORBitやRtORBのIDLコンパイラでは ORBIT_IDL がdefineされているのでこれを利用し以下のように書き換えた。

Index: src/lib/rtm/idl/SDOPackage.idl

===================================================================

--- src/lib/rtm/idl/SDOPackage.idl    (revision 2347)

+++ src/lib/rtm/idl/SDOPackage.idl    (working copy)

@@ -36,9 +36,7 @@

 #ifdef USE_MONITORING
 #include <CosNotifyComm.idl>
 #endif
-#ifndef ORBIT2_IDL
-#define TypeCode CORBA::TypeCode
-#endif
+
 /** CORBA specific model for SDOs */

 #pragma prefix "org.omg" 
@@ -52,7 +50,7 @@

   interface Configuration;
   interface Monitoring;
   interface Organization;
-  
+
   /** ------- Data Types -------*/
   typedef sequence<string>       StringList;
   typedef sequence<SDO>          SDOList;
@@ -120,10 +118,10 @@

   struct Parameter
   {
     string         name;
-#ifndef ORBIT2_IDL
-    TypeCode       type;
+#ifdef __ORBIT_IDL__
+    TypeCode type;
 #else
-    TypeCode       type;
+    CORBA::TypeCode type;
 #endif
     AllowedValues  allowed_values;
   };
@@ -173,7 +171,7 @@

   exception InterfaceNotImplemented  exception_body;
   exception InvalidParameter         exception_body;
   exception InternalError            exception_body;
-  
+
   /** ------- Interfaces -------*/
   interface SDOSystemElement
   {
@@ -261,7 +259,7 @@

 #endif

   interface SDOService {};
-  
+
   interface Organization
   {
     UniqueIdentifier get_organization_id ()

#2 n-andoほぼ12年前に更新

  • ステータス新規 から 終了 に変更

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