00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef ___HxCorbaBlob2d_h__
00016 #define ___HxCorbaBlob2d_h__
00017
00018 #include <HxCorbaPixValue.h>
00019 #include <HxCorbaRgbBuffer.h>
00020 #include <HxCorbaImageRep.h>
00021
00022 #ifndef OB_INTEGER_VERSION
00023 # error No ORBacus version defined! Is <OB/CORBA.h> included?
00024 #endif
00025
00026 #ifndef OB_NO_VERSION_CHECK
00027 # if (OB_INTEGER_VERSION != 4000500L)
00028 # error ORBacus version mismatch!
00029 # endif
00030 #endif
00031
00032 namespace HxCorba
00033 {
00034
00035 class Blob2d;
00036 typedef Blob2d* Blob2d_ptr;
00037 typedef Blob2d* Blob2dRef;
00038
00039 extern OB::TypeCodeConst _tc_Blob2d;
00040
00041 }
00042
00043 void OBDuplicate(HxCorba::Blob2d_ptr);
00044 void OBRelease(HxCorba::Blob2d_ptr);
00045
00046 void OBMarshal(HxCorba::Blob2d_ptr, OB::OutputStreamImpl*);
00047 void OBUnmarshal(HxCorba::Blob2d_ptr&, OB::InputStreamImpl*);
00048
00049 namespace HxCorba
00050 {
00051
00052 typedef OB::ObjVar< Blob2d > Blob2d_var;
00053 typedef OB::ObjOut< Blob2d > Blob2d_out;
00054
00055 }
00056
00057 namespace OBStubImpl_HxCorba
00058 {
00059
00060 class Blob2d;
00061 typedef Blob2d* Blob2d_ptr;
00062
00063 }
00064
00065 void OBDuplicate(OBStubImpl_HxCorba::Blob2d_ptr);
00066 void OBRelease(OBStubImpl_HxCorba::Blob2d_ptr);
00067
00068 namespace OBStubImpl_HxCorba
00069 {
00070
00071 typedef OB::ObjVar< Blob2d > Blob2d_var;
00072
00073 }
00074
00075
00076
00077
00078 namespace HxCorba
00079 {
00080
00081
00082
00083
00084 typedef CORBA::Long ContourCode;
00085 typedef CORBA::Long_out ContourCode_out;
00086 extern OB::TypeCodeConst _tc_ContourCode;
00087
00088
00089
00090
00091 class OBUnique_ContourCodeSeq { };
00092
00093 typedef OB::FixSeq< CORBA::Long, OBUnique_ContourCodeSeq > ContourCodeSeq;
00094 typedef OB::SeqVar< OB::FixSeq< CORBA::Long, OBUnique_ContourCodeSeq > > ContourCodeSeq_var;
00095 typedef OB::SeqOut< OB::FixSeq< CORBA::Long, OBUnique_ContourCodeSeq > > ContourCodeSeq_out;
00096 extern OB::TypeCodeConst _tc_ContourCodeSeq;
00097
00098 struct OBInfo_ContourCodeSeq : public OB::ConstructedInfo
00099 {
00100 OBInfo_ContourCodeSeq() { }
00101
00102 virtual void free(void* p) const
00103 {
00104 delete (ContourCodeSeq*)p;
00105 }
00106
00107 virtual void* dup(const void* p) const
00108 {
00109 return new ContourCodeSeq(*(const ContourCodeSeq*)p);
00110 }
00111
00112 virtual void marshal(const void*, OB::OutputStreamImpl*) const;
00113 virtual void unmarshal(void*, OB::InputStreamImpl*) const;
00114 };
00115
00116
00117
00118
00119 class Blob2d : virtual public CORBA::Object
00120 {
00121 Blob2d(const Blob2d&);
00122 void operator=(const Blob2d&);
00123
00124 static const char* ids_[];
00125
00126 protected:
00127
00128 virtual OB::MarshalStubImpl_ptr _OB_createMarshalStubImpl();
00129
00130 public:
00131
00132 Blob2d() { }
00133 virtual ~Blob2d() { }
00134
00135 typedef Blob2d_ptr _ptr_type;
00136 typedef Blob2d_var _var_type;
00137
00138 static inline Blob2d_ptr
00139 _duplicate(Blob2d_ptr p)
00140 {
00141 if(p)
00142 p -> _OB_incRef();
00143 return p;
00144 }
00145
00146 static inline Blob2d_ptr
00147 _nil()
00148 {
00149 return 0;
00150 }
00151
00152 static Blob2d_ptr _narrow(CORBA::Object_ptr);
00153 static Blob2d_ptr _narrow(CORBA::AbstractBase_ptr);
00154
00155 virtual const char** _OB_ids() const;
00156 static const char** _OB_staticIds();
00157
00158
00159
00160
00161 CORBA::Long ident();
00162
00163
00164
00165
00166 ImageRep_ptr getInputImage();
00167
00168
00169
00170
00171 ImageRep_ptr getLabeledImage();
00172
00173
00174
00175
00176 CORBA::Long getLabel();
00177
00178
00179
00180
00181 CORBA::Long getContourX();
00182
00183
00184
00185
00186 CORBA::Long getContourY();
00187
00188
00189
00190
00191 CORBA::Long getContourLength();
00192
00193
00194
00195
00196 ContourCodeSeq* getContourCodes();
00197
00198
00199
00200
00201 void fillRgb(RgbBuffer_ptr buf);
00202
00203
00204
00205
00206 PixValue getFeature(const char* name);
00207 };
00208
00209
00210
00211
00212 class OBUnique_Blob2dSet { };
00213
00214 typedef OB::ObjSeq< Blob2d, OBUnique_Blob2dSet > Blob2dSet;
00215 typedef OB::SeqVar< OB::ObjSeq< Blob2d, OBUnique_Blob2dSet > > Blob2dSet_var;
00216 typedef OB::SeqOut< OB::ObjSeq< Blob2d, OBUnique_Blob2dSet > > Blob2dSet_out;
00217 extern OB::TypeCodeConst _tc_Blob2dSet;
00218
00219 struct OBInfo_Blob2dSet : public OB::ConstructedInfo
00220 {
00221 OBInfo_Blob2dSet() { }
00222
00223 virtual void free(void* p) const
00224 {
00225 delete (Blob2dSet*)p;
00226 }
00227
00228 virtual void* dup(const void* p) const
00229 {
00230 return new Blob2dSet(*(const Blob2dSet*)p);
00231 }
00232
00233 virtual void marshal(const void*, OB::OutputStreamImpl*) const;
00234 virtual void unmarshal(void*, OB::InputStreamImpl*) const;
00235 };
00236
00237 }
00238
00239
00240
00241
00242 namespace OBStubImpl_HxCorba
00243 {
00244
00245
00246
00247
00248 class Blob2d : virtual public OB::StubImplBase
00249 {
00250 Blob2d(const Blob2d&);
00251 void operator=(const Blob2d&);
00252
00253 protected:
00254
00255 Blob2d() { }
00256
00257 public:
00258
00259 static inline Blob2d_ptr
00260 _duplicate(Blob2d_ptr p)
00261 {
00262 if(p)
00263 p -> _OB_incRef();
00264 return p;
00265 }
00266
00267 static inline Blob2d_ptr
00268 _nil()
00269 {
00270 return 0;
00271 }
00272
00273
00274
00275
00276 virtual CORBA::Long ident() = 0;
00277
00278
00279
00280
00281 virtual HxCorba::ImageRep_ptr getInputImage() = 0;
00282
00283
00284
00285
00286 virtual HxCorba::ImageRep_ptr getLabeledImage() = 0;
00287
00288
00289
00290
00291 virtual CORBA::Long getLabel() = 0;
00292
00293
00294
00295
00296 virtual CORBA::Long getContourX() = 0;
00297
00298
00299
00300
00301 virtual CORBA::Long getContourY() = 0;
00302
00303
00304
00305
00306 virtual CORBA::Long getContourLength() = 0;
00307
00308
00309
00310
00311 virtual HxCorba::ContourCodeSeq* getContourCodes() = 0;
00312
00313
00314
00315
00316 virtual void fillRgb(HxCorba::RgbBuffer_ptr buf) = 0;
00317
00318
00319
00320
00321 virtual HxCorba::PixValue getFeature(const char* name) = 0;
00322 };
00323
00324 }
00325
00326
00327
00328
00329 namespace OBMarshalStubImpl_HxCorba
00330 {
00331
00332
00333
00334
00335 class Blob2d : virtual public OBStubImpl_HxCorba::Blob2d,
00336 virtual public OB::MarshalStubImpl
00337 {
00338 Blob2d(const Blob2d&);
00339 void operator=(const Blob2d&);
00340
00341 protected:
00342
00343 Blob2d() { }
00344 friend class HxCorba::Blob2d;
00345
00346 public:
00347
00348
00349
00350
00351 virtual CORBA::Long ident();
00352
00353
00354
00355
00356 virtual HxCorba::ImageRep_ptr getInputImage();
00357
00358
00359
00360
00361 virtual HxCorba::ImageRep_ptr getLabeledImage();
00362
00363
00364
00365
00366 virtual CORBA::Long getLabel();
00367
00368
00369
00370
00371 virtual CORBA::Long getContourX();
00372
00373
00374
00375
00376 virtual CORBA::Long getContourY();
00377
00378
00379
00380
00381 virtual CORBA::Long getContourLength();
00382
00383
00384
00385
00386 virtual HxCorba::ContourCodeSeq* getContourCodes();
00387
00388
00389
00390
00391 virtual void fillRgb(HxCorba::RgbBuffer_ptr buf);
00392
00393
00394
00395
00396 virtual HxCorba::PixValue getFeature(const char* name);
00397 };
00398
00399 }
00400
00401
00402
00403
00404 namespace OBV_HxCorba
00405 {
00406
00407 }
00408
00409
00410
00411
00412 void operator<<=(CORBA::Any&, HxCorba::ContourCodeSeq*);
00413 void operator<<=(CORBA::Any&, const HxCorba::ContourCodeSeq&);
00414 CORBA::Boolean operator>>=(const CORBA::Any&, const HxCorba::ContourCodeSeq*&);
00415
00416 inline void
00417 operator<<=(CORBA::Any_var& any, HxCorba::ContourCodeSeq* val)
00418 {
00419 any.inout() <<= val;
00420 }
00421
00422 inline void
00423 operator<<=(CORBA::Any_var& any, const HxCorba::ContourCodeSeq& val)
00424 {
00425 any.inout() <<= val;
00426 }
00427
00428 inline CORBA::Boolean
00429 operator>>=(const CORBA::Any_var& any, const HxCorba::ContourCodeSeq*& val)
00430 {
00431 return any.in() >>= val;
00432 }
00433
00434
00435
00436
00437 namespace CORBA
00438 {
00439
00440 inline void
00441 release(HxCorba::Blob2d_ptr p)
00442 {
00443 if(p)
00444 p -> _OB_decRef();
00445 }
00446
00447 inline Boolean
00448 is_nil(HxCorba::Blob2d_ptr p)
00449 {
00450 return p == 0;
00451 }
00452
00453 inline void
00454 release(OBStubImpl_HxCorba::Blob2d_ptr p)
00455 {
00456 if(p)
00457 p -> _OB_decRef();
00458 }
00459
00460 inline Boolean
00461 is_nil(OBStubImpl_HxCorba::Blob2d_ptr p)
00462 {
00463 return p == 0;
00464 }
00465
00466 }
00467
00468 void operator<<=(CORBA::Any&, HxCorba::Blob2d_ptr*);
00469 void operator<<=(CORBA::Any&, HxCorba::Blob2d_ptr);
00470 CORBA::Boolean operator>>=(const CORBA::Any&, HxCorba::Blob2d_ptr&);
00471
00472 inline void
00473 operator<<=(CORBA::Any_var& any, HxCorba::Blob2d_ptr* val)
00474 {
00475 any.inout() <<= val;
00476 }
00477
00478 inline void
00479 operator<<=(CORBA::Any_var& any, HxCorba::Blob2d_ptr val)
00480 {
00481 any.inout() <<= val;
00482 }
00483
00484 inline CORBA::Boolean
00485 operator>>=(const CORBA::Any_var& any, HxCorba::Blob2d_ptr& val)
00486 {
00487 return any.in() >>= val;
00488 }
00489
00490
00491
00492
00493 void operator<<=(CORBA::Any&, HxCorba::Blob2dSet*);
00494 void operator<<=(CORBA::Any&, const HxCorba::Blob2dSet&);
00495 CORBA::Boolean operator>>=(const CORBA::Any&, const HxCorba::Blob2dSet*&);
00496
00497 inline void
00498 operator<<=(CORBA::Any_var& any, HxCorba::Blob2dSet* val)
00499 {
00500 any.inout() <<= val;
00501 }
00502
00503 inline void
00504 operator<<=(CORBA::Any_var& any, const HxCorba::Blob2dSet& val)
00505 {
00506 any.inout() <<= val;
00507 }
00508
00509 inline CORBA::Boolean
00510 operator>>=(const CORBA::Any_var& any, const HxCorba::Blob2dSet*& val)
00511 {
00512 return any.in() >>= val;
00513 }
00514
00515 #endif