00001 /* 00002 * Copyright (c) 2000, University of Amsterdam, The Netherlands. 00003 * All rights reserved. 00004 * 00005 * Author(s): 00006 * Marc Navarro (mnavarro@wins.uva.nl) 00007 */ 00008 00009 #ifndef HxCorbaMenu_idl 00010 #define HxCorbaMenu_idl 00011 00012 module HxCorbaMenu 00013 { 00014 00016 typedef long operation; 00017 00018 00019 interface TagList 00020 { 00021 struct Menu 00022 { 00023 operation addInt; 00024 operation getInt; 00025 operation addFloat; 00026 operation getFloat; 00027 operation addValue; 00028 operation getValue; 00029 }; 00030 00031 };//end interface TagList 00032 00033 00034 interface ImageRep 00035 { 00036 struct Menu 00037 { 00038 struct inquiry 00039 { 00040 operation pixelDimensionality; 00041 operation pixelType; 00042 operation pixelPrecision; 00043 operation dimensionality; 00044 operation getSizes; 00045 operation dimensionSize; 00046 operation numberOfPixels; 00047 operation signature; 00048 00049 } end_inquiry; 00050 00051 operation binaryPixOp; 00052 operation binaryPixOpVal; 00053 operation unaryPixOp; 00054 operation multiPixOp; 00055 operation MNPixOp; 00056 operation reduceOp; 00057 operation generalizedConvolution; 00058 operation genConv2dSep; 00059 operation geometricOp2d; 00060 operation neighbourhoodOp; 00061 00062 }; 00063 00064 };//end interface ImageRep 00065 00066 typedef sequence<ImageRep> ImageList; 00067 00068 interface SF 00069 { 00070 struct Menu 00071 { 00072 operation getKernel; 00073 operation getHorizontalKernel; 00074 operation getVerticalKernel; 00075 operation isSeparable; 00076 operation isSymetric; 00077 operation getConnectivity; 00078 }; 00079 };//end interface SF 00080 00081 interface ImageSeq 00082 { 00083 struct Menu 00084 { 00085 operation getFrame; 00086 operation nrFrames; 00087 operation frameSizes; 00088 }; 00089 };//end interface ImageSeq 00090 00091 interface Histogram 00092 { 00093 struct Menu 00094 { 00095 operation dimensionality; 00096 operation dimensionSize; 00097 operation nrOfBins; 00098 00099 operation lowBin; 00100 operation highBin; 00101 operation binWidth; 00102 operation binToValue; 00103 operation valueToBin; 00104 00105 operation get1; 00106 operation get2; 00107 operation get3; 00108 00109 operation sum; 00110 operation minVal; 00111 operation maxVal; 00112 //operation maxValIndex; 00113 00114 operation smooth; 00115 operation normalize; 00116 operation intersection; 00117 operation chiSquare; 00118 operation chiSquareNorm; 00119 00120 operation threshold; 00121 operation countBins; 00122 operation reduceRange; 00123 operation reduceRangeVal; 00124 operation to1D; 00125 operation put; 00126 00127 }; 00128 };//end interface Histogram 00129 00130 typedef sequence<Histogram> HistogramList; 00131 00132 interface Blob2d 00133 { 00134 struct Menu 00135 { 00136 operation getInputImage; 00137 operation getLabeledImage; 00138 operation getLabel; 00139 operation getContourX; 00140 operation getContourY; 00141 operation getContourLength; 00142 operation getFeature; 00143 }; 00144 };//end interface Blob2d 00145 00146 typedef sequence<Blob2d> Blob2dSet; 00147 00148 interface Polyline2d 00149 { 00150 struct Menu 00151 { 00152 operation getClosed; 00153 operation getNrPoints; 00154 operation getPoint; 00155 }; 00156 };//end interface Polyline2d 00157 00158 interface BSplineCurve 00159 { 00160 struct Menu 00161 { 00162 operation curveType; 00163 operation degree; 00164 operation minT; 00165 operation maxT; 00166 operation numP; 00167 operation P; 00168 operation controlP; 00169 operation C; 00170 operation length; 00171 operation center; 00172 operation sampleC; 00173 }; 00174 };//end interface BSplineCurve 00175 00176 interface SampledBSplineCurve 00177 { 00178 struct Menu 00179 { 00180 operation curveType; 00181 operation nSamples; 00182 operation numP; 00183 operation controlP; 00184 operation C; 00185 operation CPoly; 00186 }; 00187 };//end interface SampledBSplineCurve 00188 00189 00190 interface NJet 00191 { 00192 struct Menu 00193 { 00194 operation order; 00195 operation scale; 00196 operation nrComponents; 00197 operation isColor; 00198 00199 struct idx { 00200 operation getLidx; 00201 operation getJidx; 00202 operation getMidx; 00203 } end_idx; 00204 00205 00206 operation xy; 00207 operation xyz; 00208 operation xyl; 00209 operation xyzl; 00210 00211 operation getLList; 00212 operation getJList; 00213 operation getMList; 00214 operation getList; 00215 00216 operation getLw; 00217 operation getJw; 00218 operation getMw; 00219 }; 00220 };//end interface NJet 00221 00222 interface VxSegment 00223 { 00224 struct Menu 00225 { 00226 operation start; 00227 operation end; 00228 operation length; 00229 }; 00230 };//end interface VxSegment 00231 00232 typedef sequence<VxSegment> VxSegmentSeq; 00233 00234 interface Constructor 00235 { 00236 struct Menu 00237 { 00238 struct ImageRep 00239 { 00240 operation importImage; 00241 operation fromSignature; 00242 operation fromImage; 00243 operation fromValue; 00244 operation fromNamedGenerator; 00245 operation fromImport; 00246 00247 operation from2Images; 00248 operation from3Images; 00249 00250 operation fromFile; 00251 00252 } end_ImageRep; 00253 00254 struct SF 00255 { 00256 operation makeSFfromImage; 00257 operation makeFlatSF; 00258 operation makeBoxSF; 00259 operation makeCrossSF; 00260 operation makeDiskSF; 00261 operation makeDiamondSF; 00262 operation makeGaussianSF; 00263 operation makeParabolaSF; 00264 00265 } end_SF; 00266 00267 struct ImageSeq 00268 { 00269 operation constructImageSeq; 00270 operation constructBufferedImageSeq; 00271 operation setUseMDC; 00272 00273 } end_ImageSeq; 00274 00275 struct TagList 00276 { 00277 operation emptyTagList; 00278 operation simpleIntTag; 00279 operation simpleFloatTag; 00280 00281 } end_TagList; 00282 00283 struct Matrix 00284 { 00285 operation translate2d; 00286 operation scale2d; 00287 operation rotate2d; 00288 operation rotate2dDeg; 00289 operation reflect2d; 00290 operation shear2d; 00291 operation translate3d; 00292 operation scale3d; 00293 operation rotateX3d; 00294 operation rotateX3dDeg; 00295 operation rotateY3d; 00296 operation rotateY3dDeg; 00297 operation rotateZ3d; 00298 operation rotateZ3dDeg; 00299 operation reflect3d; 00300 operation projection; 00301 operation camera; 00302 operation lift2dTo3dXY; 00303 00304 } end_Matrix; 00305 00306 struct Polyline2d 00307 { 00308 operation importPolyline; 00309 00310 } end_Polyline2d; 00311 00312 struct BSplineCurve 00313 { 00314 operation makeUniformBSpline; 00315 operation makeInterpolatingBSpline; 00316 00317 } end_BSplineCurve; 00318 00319 struct SampledBSplineCurve 00320 { 00321 operation makeUniformSampledBSpline; 00322 operation makeInterpolatingSampledBSpline; 00323 00324 } end_SampledBSplineCurve; 00325 00326 struct NJet 00327 { 00328 operation makeNJet; 00329 00330 } end_NJet; 00331 }; 00332 };//end interface Constructor 00333 00334 }; 00335 00336 #endif //HxCorbaMenu_idl