[openrtm-commit:01749] r771 - in trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC: . idl

openrtm @ openrtm.org openrtm @ openrtm.org
2016年 2月 23日 (火) 12:59:19 JST


Author: win-ei
Date: 2016-02-23 12:59:19 +0900 (Tue, 23 Feb 2016)
New Revision: 771

Added:
   trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/CameraCommonInterface.idl
   trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Common.idl
   trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_DataTypes.idl
   trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Middle.idl
Modified:
   trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/build.xml
Log:
Added idl files.

Modified: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/build.xml
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/build.xml	2016-02-22 17:32:06 UTC (rev 770)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/build.xml	2016-02-23 03:59:19 UTC (rev 771)
@@ -121,6 +121,11 @@
 
 	<property name="idl.LogicalTimeTriggeredEC" value="${idl.path}/LogicalTimeTriggeredEC.idl" />
 	
+	<property name="idl.CameraCommonInterface" value="${idl.path}/CameraCommonInterface.idl" />
+	<property name="idl.ManipulatorCommonInterface_Common" value="${idl.path}/ManipulatorCommonInterface_Common.idl" />
+	<property name="idl.ManipulatorCommonInterface_DataTypes" value="${idl.path}/ManipulatorCommonInterface_DataTypes.idl" />
+	<property name="idl.ManipulatorCommonInterface_Middle" value="${idl.path}/ManipulatorCommonInterface_Middle.idl" />
+
 	<property name="idl.test.CorbaConsumer" value="${idl.path.tests}/CorbaConsumer/Hello.idl" />
 
 	<property name="idl.test.CorbaPort" value="${idl.path.tests}/CorbaPort/MyService.idl" />
@@ -461,6 +466,18 @@
 		<exec executable="${java.home}\..\bin\idlj">
 			<arg line="-v -fall -td ${source} -i ${idl.path} -emitAll ${idl.LogicalTimeTriggeredEC}"/>
 		</exec>
+		<exec executable="${java.home}\..\bin\idlj">
+			<arg line="-v -fall -td ${source} -i ${idl.path} -emitAll ${idl.CameraCommonInterface}"/>
+		</exec>
+		<exec executable="${java.home}\..\bin\idlj">
+			<arg line="-v -fall -td ${source} -i ${idl.path} -emitAll ${idl.ManipulatorCommonInterface_Common}"/>
+		</exec>
+		<exec executable="${java.home}\..\bin\idlj">
+			<arg line="-v -fall -td ${source} -i ${idl.path} -emitAll ${idl.ManipulatorCommonInterface_DataTypes}"/>
+		</exec>
+		<exec executable="${java.home}\..\bin\idlj">
+			<arg line="-v -fall -td ${source} -i ${idl.path} -emitAll ${idl.ManipulatorCommonInterface_Middle}"/>
+		</exec>
 	</target>
 
 	<target name="idlCompileEtc" description="IDLファイル(追加分)をコンパイルします">
Added: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/CameraCommonInterface.idl
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/CameraCommonInterface.idl	                        (rev 0)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/CameraCommonInterface.idl	2016-02-23 03:59:19 UTC (rev 771)
@@ -0,0 +1,190 @@
+/* version 2.0 */
+
+#ifndef CAMERACOMMONINTERFACE_IDL
+#define CAMERACOMMONINTERFACE_IDL
+
+#include "BasicDataType.idl"
+
+module Img {
+  //============================================================
+  // Definition of basic matrix for image.
+  //============================================================
+  typedef double Vec3[3];
+  typedef double Mat44[4][4];
+
+  //============================================================
+  //Image Data Structure
+  //============================================================
+
+  //------------------------------------------------------------
+  // Color Formats Definition
+  // The parameters of CF_XXX are defined by this idl.
+  // The other parameters are cited from FourCC definition.
+  // To obtain the detail information about FourCC formats, please visit
+  // following website:
+  // http://www.fourcc.org/
+  //------------------------------------------------------------
+  enum ColorFormat
+  {
+    CF_UNKNOWN,   //Unknown Color Format
+    CF_RGB,       //RGB raw data format
+    CF_GRAY,      //8bit gray image data format
+    CF_JPEG,      //JPEG image format
+    CF_PNG,       //PNG image format
+
+    //Paramter definitions based on FourCC
+    RGB,    //Basic Windows bitmap format
+    RLE8,   //Run length encoded 8bpp RGB image
+    RLE,    //Run length encoded 4bpp RGB image
+    RAW,    //Uncompressed RGB bitmaps
+    RGBA,   //Raw RGB with alpha
+    RGBT,   //Raw RGB with a transparency field
+    AYUV,   //Combined YUV and alpha
+    CLJR,   //Cirrus Logic format with 4 pixels packed into a u_int32
+    CYUV,   //Essentially a copy of UYUV except that the sense of the height is reserved
+    GREY,   //Apparently a duplicate of Y800 and Y8
+    IRAW,   //Intel uncompressed YUV
+    IUYV,   //Interlaced version of UYUV
+    IY41,   //Interlaced version of Y41P
+    IYU1,   //12bit format used in mode 2 of the IEEE 1394 Digital Camera 1.04 spec.
+    IYU2,   //24 bit format used in mode 0 of the IEEE 1394 Digital Camera 1.04 spec.
+    HDYC,   //YUV 4:2:2 (Y sample at every pixel, U and V sampled at every second 
+            //pixel horizontally on each line)
+    UYNV,   //A direct copy of UYVY registered by NVidia to work around problems in 
+            //some old codecs which did not like hardware which offered more than 2 
+            //UYVY surfaces.
+    UYVP,   //YCbCr 4:2:2 extended precision 10-bits per component in U0Y0V0Y1 order
+    V210,   //10-bit 4:2:2 YCrCb equivalent to the Quicktime format of the same name
+    V422,   //This is an upside down version of UYVY
+    V655,   //16 bit YUV 4:2:2 format registered by Vitec Multimedia
+    VYUV,   //Duplicate of YUV2
+    YUNV,   //A direct copy of YUY2 registered by NVidia to work around problems in
+            //some old codecs which did not like hardware which offered more than 2
+            //YUY2 surfaces
+    YVYU,   //YUV 4:2:2 as for UYVY but with different component ordering within the
+            //u_int32 macropixel
+    Y41P,   //YUV 4:1:1 with a packed, 6 byte/4 pixel macroblock structure
+    Y211,   //Packed YUV format with Y sampled at every second pixel across each line
+            //and U and V sampled at every fourth pixel
+    Y41T,   //Format as for Y41P but the lsb of each Y component is used to signal pixel
+            //transparency
+    Y42T,   //Format as for UYVY but the lsb of each Y component is used to signal
+            //pixel transparency
+    YUVP,   //YCbCr 4:2:2 extended precision 10-bits per component in Y0U0Y1V0
+            //order
+    Y800,   //Simple, single Y plane for monochrome images
+    Y8,     //Duplicate of Y800
+    Y16     //16-bit uncompressed grayscale image
+  };
+
+  //============================================================
+  // Camera Image Data Structure
+  //============================================================
+
+  //------------------------------------------------------------
+  // Image Data Structure for still image
+  //------------------------------------------------------------
+  struct ImageData
+  {
+    long width;
+    long height;
+    ColorFormat format;
+    sequence<octet> raw_data;
+  };
+
+  //------------------------------------------------------------
+  // Camera Intrinsic Parameter Structure
+  //------------------------------------------------------------
+  struct CameraIntrinsicParameter
+  {
+    double matrix_element[5];
+    sequence<double> distortion_coefficient;
+  };
+
+  //------------------------------------------------------------
+  // Camera Image Structure
+  //------------------------------------------------------------
+  struct CameraImage
+  {
+    RTC::Time captured_time;
+    ImageData image;
+    CameraIntrinsicParameter intrinsic;
+    Mat44 extrinsic;
+  };
+
+  //------------------------------------------------------------
+  // Timed Camera Image Structure
+  // This structure includes time stump.
+  //------------------------------------------------------------
+  struct TimedCameraImage
+  {
+    RTC::Time tm;
+    CameraImage data;
+    long error_code;
+  };
+
+  //============================================================
+  // Multi Camera Image Data Structure
+  //============================================================
+
+  //------------------------------------------------------------
+  // Multi Camera Image Structure
+  //------------------------------------------------------------
+  struct MultiCameraImage
+  {
+    sequence<CameraImage> image_seq;
+    long camera_set_id;
+  };
+
+  //------------------------------------------------------------
+  // Time Multi Camera Image Structure
+  // This structure includes time stump.
+  //------------------------------------------------------------
+  struct TimedMultiCameraImage
+  {
+    RTC::Time tm;
+    MultiCameraImage data;
+    long error_code;
+  };
+
+  //============================================================
+  // Camera Device Profile Structure
+  //============================================================
+  struct NamedValue
+  {
+    string name;
+    string value;
+  };
+
+  typedef sequence<NamedValue> NVList;
+
+  struct CameraDeviceProfile
+  {
+    string devtypeid;
+    string guid;
+    short unit;
+    string vendor_name;
+    string model_name;
+    CameraIntrinsicParameter intrinsic;
+    NVList properties;
+  };
+
+  //============================================================
+  // Camera Control Service Interface
+  //============================================================
+
+  //------------------------------------------------------------
+  // Camera Control Service Interface for image capture
+  //------------------------------------------------------------
+  interface CameraCaptureService
+  {
+    oneway void take_one_frame();
+    oneway void take_multi_frames(in long num);
+    oneway void start_continuous();
+    oneway void stop_continuous();
+    void getProfile(out CameraDeviceProfile profile);
+  };
+}; /* module */
+
+#endif /* CAMERACOMMONINTERFACE_IDL */
+

Added: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Common.idl
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Common.idl	                        (rev 0)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Common.idl	2016-02-23 03:59:19 UTC (rev 771)
@@ -0,0 +1,58 @@
+/*
+  Manipulator Common Interface (Common Commands)
+    - This IDL is used as service port on RTC
+    - This command specification is provided by Intelligent RT Software
+  Project of JARA.
+  rev. 20140205
+*/
+
+#ifndef MANIPULATORCOMMONINTERFACE_COMMON_IDL
+#define MANIPULATORCOMMONINTERFACE_COMMON_IDL
+
+#include "ManipulatorCommonInterface_DataTypes.idl"
+
+module JARA_ARM {
+
+  enum AlarmType {
+    FAULT,
+    WARNING,
+    UNKNOWN
+  };
+
+  struct Alarm {
+    unsigned long code;
+    AlarmType type;
+    string description;
+  };
+
+  typedef sequence<Alarm> AlarmSeq;
+  typedef sequence<LimitValue> LimitSeq;
+
+  struct ManipInfo {
+    string manufactur;
+    string type;
+    ULONG axisNum;
+    ULONG cmdCycle;
+    boolean isGripper;
+  };
+
+  const ULONG CONST_BINARY_00000001 = 0x01; //isServoOn
+  const ULONG CONST_BINARY_00000010 = 0x02; //isMoving
+  const ULONG CONST_BINARY_00000100 = 0x04; //isAlarmed
+  const ULONG CONST_BINARY_00001000 = 0x08; //isBufferFull
+
+  interface ManipulatorCommonInterface_Common {
+    RETURN_ID clearAlarms();
+    RETURN_ID getActiveAlarm(out AlarmSeq alarms);
+    RETURN_ID getFeedbackPosJoint(out JointPos pos);
+    RETURN_ID getManipInfo(out ManipInfo mInfo);
+    RETURN_ID getSoftLimitJoint(out LimitSeq softLimit);
+    RETURN_ID getState(out ULONG state);
+    RETURN_ID servoOFF();
+    RETURN_ID servoON();
+    RETURN_ID setSoftLimitJoint(in LimitSeq softLimit);
+  };
+};
+
+#endif // MANIPULATORCOMMONINTERFACE_COMMON_IDL
+

Added: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_DataTypes.idl
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_DataTypes.idl	                        (rev 0)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_DataTypes.idl	2016-02-23 03:59:19 UTC (rev 771)
@@ -0,0 +1,46 @@
+/*
+  Manipulator Common Interface (Data type defenition)
+    - This IDL is used as service port on RTC
+    - This command specification is provided by Intelligent RT Software
+  Project of JARA.
+  rev. 20140205
+*/
+
+#ifndef MANIPULATORCOMMONINTERFACE_DATATYPES_IDL
+#define MANIPULATORCOMMONINTERFACE_DATATYPES_IDL
+
+#include "BasicDataType.idl"
+
+module JARA_ARM {
+
+  typedef sequence<double> DoubleSeq;
+  typedef sequence<double> JointPos;
+
+  struct LimitValue {
+    double upper;
+    double lower;
+  };
+
+  struct RETURN_ID{
+    long id;
+    string comment;
+  };
+
+  const long OK = 0;
+  const long NG = -1;
+  const long STATUS_ERR = -2;
+  const long VALUE_ERR = -3;
+  const long NOT_SV_ON_ERR = -4;
+  const long FULL_MOTION_QUEUE_ERR = -5;
+  const long NOT_IMPLEMENTED = -6;
+
+  struct TimedJointPos {
+    RTC::Time tm;
+    JointPos pos;
+  };
+
+  typedef unsigned long ULONG;
+};
+
+#endif // MANIPULATORCOMMONINTERFACE_DATATYPES_IDL
+

Added: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Middle.idl
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Middle.idl	                        (rev 0)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/idl/ManipulatorCommonInterface_Middle.idl	2016-02-23 03:59:19 UTC (rev 771)
@@ -0,0 +1,73 @@
+/*
+  Manipulator Common Interface (Middle Level Commands)
+    - This IDL is used as service port on RTC
+    - This command specification is provided by Intelligent RT Software
+  Project of JARA.
+  rev. 20140205
+*/
+
+#ifndef MANIPULATORCOMMONINTERFACE_MIDDLE_IDL
+#define MANIPULATORCOMMONINTERFACE_MIDDLE_IDL
+
+#include "ManipulatorCommonInterface_DataTypes.idl"
+
+module JARA_ARM {
+
+  typedef double HgMatrix [3][4];
+
+  struct CarPosWithElbow {
+    HgMatrix carPos;
+    double elbow;
+    ULONG structFlag;
+  };
+
+  struct CartesianSpeed {
+    double translation;
+    double rotation;
+  };
+
+  interface ManipulatorCommonInterface_Middle {
+    RETURN_ID closeGripper();
+    RETURN_ID getBaseOffset(out HgMatrix offset);
+    RETURN_ID getFeedbackPosCartesian(out CarPosWithElbow pos);
+    RETURN_ID getMaxSpeedCartesian(out CartesianSpeed speed);
+    RETURN_ID getMaxSpeedJoint(out DoubleSeq speed);
+    RETURN_ID getMinAccelTimeCartesian(out double aclTime);
+    RETURN_ID getMinAccelTimeJoint(out double aclTime);
+    RETURN_ID getSoftLimitCartesian(out LimitValue xLimit,
+                        out LimitValue yLimit, out LimitValue zLimit );
+    RETURN_ID moveGripper(in ULONG angleRatio);
+    RETURN_ID moveLinearCartesianAbs(in CarPosWithElbow carPoint);
+    RETURN_ID moveLinearCartesianRel(in CarPosWithElbow carPoint);
+    RETURN_ID movePTPCartesianAbs(in CarPosWithElbow carPoint);
+    RETURN_ID movePTPCartesianRel(in CarPosWithElbow carPoint);
+    RETURN_ID movePTPJointAbs(in JointPos jointPoints);
+    RETURN_ID movePTPJointRel(in JointPos jointPoints);
+    RETURN_ID openGripper();
+    RETURN_ID pause();
+    RETURN_ID resume();
+    RETURN_ID stop();
+    RETURN_ID setAccelTimeCartesian(in double aclTime);
+    RETURN_ID setAccelTimeJoint(in double aclTime);
+    RETURN_ID setBaseOffset(in HgMatrix offset);
+    RETURN_ID setControlPointOffset(in HgMatrix offset);
+    RETURN_ID setMaxSpeedCartesian(in CartesianSpeed speed);
+    RETURN_ID setMaxSpeedJoint(in DoubleSeq speed);
+    RETURN_ID setMinAccelTimeCartesian(in double aclTime);
+    RETURN_ID setMinAccelTimeJoint(in double aclTime);
+    RETURN_ID setSoftLimitCartesian(in LimitValue xLimit,
+    in LimitValue yLimit, in LimitValue zLimit);
+    RETURN_ID setSpeedCartesian(in ULONG spdRatio);
+    RETURN_ID setSpeedJoint(in ULONG spdRatio);
+    RETURN_ID moveCircularCartesianAbs(in CarPosWithElbow carPointR,
+    in CarPosWithElbow carPointT);
+    RETURN_ID moveCircularCartesianRel(in CarPosWithElbow carPointR,
+    in CarPosWithElbow carPointT);
+    RETURN_ID setHome(in JointPos jointPoint);
+    RETURN_ID getHome(out JointPos jointPoint);
+    RETURN_ID goHome();
+  };
+};
+
+#endif // MANIPULATORCOMMONINTERFACE_MIDDLE_IDL
+



More information about the openrtm-commit mailing list