[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