00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef ___HxCorbaDatabaseSessions_tie_h__
00016 #define ___HxCorbaDatabaseSessions_tie_h__
00017
00018 #include <HxCorbaDatabaseSessions_skel.h>
00019
00020 #ifndef OB_INTEGER_VERSION
00021 # error No ORBacus version defined! Is <OB/CORBA.h> included?
00022 #endif
00023
00024 #ifndef OB_NO_VERSION_CHECK
00025 # if (OB_INTEGER_VERSION != 4010000L)
00026 # error ORBacus version mismatch!
00027 # endif
00028 #endif
00029
00030
00031
00032
00033 namespace POA_HxCorba
00034 {
00035
00036
00037
00038
00039 template<class T>
00040 class VxSegmentBuilder_tie : virtual public VxSegmentBuilder
00041 {
00042 T* ptr_;
00043 PortableServer::POA_ptr poa_;
00044 CORBA::Boolean rel_;
00045
00046 VxSegmentBuilder_tie(const VxSegmentBuilder_tie<T>&) { }
00047 void operator=(const VxSegmentBuilder_tie<T>&) { }
00048
00049 public:
00050
00051 VxSegmentBuilder_tie(T& t)
00052 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00053 {
00054 }
00055
00056 VxSegmentBuilder_tie(T& t, PortableServer::POA_ptr poa)
00057 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00058 {
00059 }
00060
00061 VxSegmentBuilder_tie(T* p, CORBA::Boolean release = true)
00062 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00063 {
00064 }
00065
00066 VxSegmentBuilder_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00067 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00068 {
00069 }
00070
00071 virtual
00072 ~VxSegmentBuilder_tie()
00073 {
00074 if(rel_)
00075 delete ptr_;
00076
00077 CORBA::release(poa_);
00078 }
00079
00080 T*
00081 _tied_object()
00082 {
00083 return ptr_;
00084 }
00085
00086 void
00087 _tied_object(T& obj)
00088 {
00089 if(rel_)
00090 delete ptr_;
00091
00092 ptr_ = &obj;
00093 rel_ = false;
00094 }
00095
00096 void
00097 _tied_object(T* obj, CORBA::Boolean release = true)
00098 {
00099 if(rel_)
00100 delete ptr_;
00101
00102 ptr_ = obj;
00103 rel_ = release;
00104 }
00105
00106 CORBA::Boolean
00107 _is_owner()
00108 {
00109 return rel_;
00110 }
00111
00112 void
00113 _is_owner(CORBA::Boolean b)
00114 {
00115 rel_ = b;
00116 }
00117
00118 virtual void
00119 addInt(const char* id,
00120 CORBA::Long value)
00121 throw(HxCorba::DatabaseException,
00122 CORBA::SystemException)
00123 {
00124 ptr_ -> addInt(id, value);
00125 }
00126
00127 virtual void
00128 addDouble(const char* id,
00129 CORBA::Double value)
00130 throw(HxCorba::DatabaseException,
00131 CORBA::SystemException)
00132 {
00133 ptr_ -> addDouble(id, value);
00134 }
00135
00136 virtual void
00137 addString(const char* id,
00138 const char* value)
00139 throw(HxCorba::DatabaseException,
00140 CORBA::SystemException)
00141 {
00142 ptr_ -> addString(id, value);
00143 }
00144
00145 PortableServer::POA_ptr _default_POA()
00146 {
00147 if(!CORBA::is_nil(poa_))
00148 return PortableServer::POA::_duplicate(poa_);
00149 else
00150 return VxSegmentBuilder::_default_POA();
00151 }
00152 };
00153
00154
00155
00156
00157 template<class T>
00158 class VxSegmentationBuilder_tie : virtual public VxSegmentationBuilder
00159 {
00160 T* ptr_;
00161 PortableServer::POA_ptr poa_;
00162 CORBA::Boolean rel_;
00163
00164 VxSegmentationBuilder_tie(const VxSegmentationBuilder_tie<T>&) { }
00165 void operator=(const VxSegmentationBuilder_tie<T>&) { }
00166
00167 public:
00168
00169 VxSegmentationBuilder_tie(T& t)
00170 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00171 {
00172 }
00173
00174 VxSegmentationBuilder_tie(T& t, PortableServer::POA_ptr poa)
00175 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00176 {
00177 }
00178
00179 VxSegmentationBuilder_tie(T* p, CORBA::Boolean release = true)
00180 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00181 {
00182 }
00183
00184 VxSegmentationBuilder_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00185 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00186 {
00187 }
00188
00189 virtual
00190 ~VxSegmentationBuilder_tie()
00191 {
00192 if(rel_)
00193 delete ptr_;
00194
00195 CORBA::release(poa_);
00196 }
00197
00198 T*
00199 _tied_object()
00200 {
00201 return ptr_;
00202 }
00203
00204 void
00205 _tied_object(T& obj)
00206 {
00207 if(rel_)
00208 delete ptr_;
00209
00210 ptr_ = &obj;
00211 rel_ = false;
00212 }
00213
00214 void
00215 _tied_object(T* obj, CORBA::Boolean release = true)
00216 {
00217 if(rel_)
00218 delete ptr_;
00219
00220 ptr_ = obj;
00221 rel_ = release;
00222 }
00223
00224 CORBA::Boolean
00225 _is_owner()
00226 {
00227 return rel_;
00228 }
00229
00230 void
00231 _is_owner(CORBA::Boolean b)
00232 {
00233 rel_ = b;
00234 }
00235
00236 virtual void
00237 setDescription(const char* description)
00238 throw(CORBA::SystemException)
00239 {
00240 ptr_ -> setDescription(description);
00241 }
00242
00243 virtual HxCorba::VxSegmentBuilder_ptr
00244 buildSegment(CORBA::Long start,
00245 CORBA::Long end)
00246 throw(HxCorba::DatabaseException,
00247 CORBA::SystemException)
00248 {
00249 return ptr_ -> buildSegment(start, end);
00250 }
00251
00252 PortableServer::POA_ptr _default_POA()
00253 {
00254 if(!CORBA::is_nil(poa_))
00255 return PortableServer::POA::_duplicate(poa_);
00256 else
00257 return VxSegmentationBuilder::_default_POA();
00258 }
00259 };
00260
00261
00262
00263
00264 template<class T>
00265 class StoreSession_tie : virtual public StoreSession
00266 {
00267 T* ptr_;
00268 PortableServer::POA_ptr poa_;
00269 CORBA::Boolean rel_;
00270
00271 StoreSession_tie(const StoreSession_tie<T>&) { }
00272 void operator=(const StoreSession_tie<T>&) { }
00273
00274 public:
00275
00276 StoreSession_tie(T& t)
00277 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00278 {
00279 }
00280
00281 StoreSession_tie(T& t, PortableServer::POA_ptr poa)
00282 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00283 {
00284 }
00285
00286 StoreSession_tie(T* p, CORBA::Boolean release = true)
00287 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00288 {
00289 }
00290
00291 StoreSession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00292 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00293 {
00294 }
00295
00296 virtual
00297 ~StoreSession_tie()
00298 {
00299 if(rel_)
00300 delete ptr_;
00301
00302 CORBA::release(poa_);
00303 }
00304
00305 T*
00306 _tied_object()
00307 {
00308 return ptr_;
00309 }
00310
00311 void
00312 _tied_object(T& obj)
00313 {
00314 if(rel_)
00315 delete ptr_;
00316
00317 ptr_ = &obj;
00318 rel_ = false;
00319 }
00320
00321 void
00322 _tied_object(T* obj, CORBA::Boolean release = true)
00323 {
00324 if(rel_)
00325 delete ptr_;
00326
00327 ptr_ = obj;
00328 rel_ = release;
00329 }
00330
00331 CORBA::Boolean
00332 _is_owner()
00333 {
00334 return rel_;
00335 }
00336
00337 void
00338 _is_owner(CORBA::Boolean b)
00339 {
00340 rel_ = b;
00341 }
00342
00343 virtual void
00344 addSegmentation(HxCorba::VxSegmentation_ptr seg,
00345 const char* videoName,
00346 const char* segName,
00347 const char* description)
00348 throw(HxCorba::DatabaseException,
00349 CORBA::SystemException)
00350 {
00351 ptr_ -> addSegmentation(seg, videoName, segName, description);
00352 }
00353
00354 virtual HxCorba::VxSegmentationBuilder_ptr
00355 buildSegmentation(const char* videoName,
00356 const char* segName)
00357 throw(HxCorba::DatabaseException,
00358 CORBA::SystemException)
00359 {
00360 return ptr_ -> buildSegmentation(videoName, segName);
00361 }
00362
00363 virtual HxCorba::StringSeq*
00364 listVideos()
00365 throw(CORBA::SystemException)
00366 {
00367 return ptr_ -> listVideos();
00368 }
00369
00370 virtual HxCorba::StringSeq*
00371 listSegmentations(const char* videoName)
00372 throw(CORBA::SystemException)
00373 {
00374 return ptr_ -> listSegmentations(videoName);
00375 }
00376
00377 virtual HxCorba::VxSegmentation_ptr
00378 getSegmentation(const char* videoName,
00379 const char* segName)
00380 throw(CORBA::SystemException)
00381 {
00382 return ptr_ -> getSegmentation(videoName, segName);
00383 }
00384
00385 virtual HxCorba::VxSegmentSeq*
00386 querySegments(const char* sqlQuery)
00387 throw(HxCorba::DatabaseException,
00388 CORBA::SystemException)
00389 {
00390 return ptr_ -> querySegments(sqlQuery);
00391 }
00392
00393 virtual HxCorba::StringSeq*
00394 queryStrings(const char* sqlQuery)
00395 throw(HxCorba::DatabaseException,
00396 CORBA::SystemException)
00397 {
00398 return ptr_ -> queryStrings(sqlQuery);
00399 }
00400
00401 virtual HxCorba::SegmentQueryResultSeq*
00402 queryMultipleSegments(const char* sqlQuery)
00403 throw(HxCorba::DatabaseException,
00404 CORBA::SystemException)
00405 {
00406 return ptr_ -> queryMultipleSegments(sqlQuery);
00407 }
00408
00409 virtual void
00410 close()
00411 throw(CORBA::SystemException)
00412 {
00413 ptr_ -> close();
00414 }
00415
00416 PortableServer::POA_ptr _default_POA()
00417 {
00418 if(!CORBA::is_nil(poa_))
00419 return PortableServer::POA::_duplicate(poa_);
00420 else
00421 return StoreSession::_default_POA();
00422 }
00423 };
00424
00425
00426
00427
00428 template<class T>
00429 class VxMutableSegment_tie : virtual public VxMutableSegment
00430 {
00431 T* ptr_;
00432 PortableServer::POA_ptr poa_;
00433 CORBA::Boolean rel_;
00434
00435 VxMutableSegment_tie(const VxMutableSegment_tie<T>&) { }
00436 void operator=(const VxMutableSegment_tie<T>&) { }
00437
00438 public:
00439
00440 VxMutableSegment_tie(T& t)
00441 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00442 {
00443 }
00444
00445 VxMutableSegment_tie(T& t, PortableServer::POA_ptr poa)
00446 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00447 {
00448 }
00449
00450 VxMutableSegment_tie(T* p, CORBA::Boolean release = true)
00451 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00452 {
00453 }
00454
00455 VxMutableSegment_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00456 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00457 {
00458 }
00459
00460 virtual
00461 ~VxMutableSegment_tie()
00462 {
00463 if(rel_)
00464 delete ptr_;
00465
00466 CORBA::release(poa_);
00467 }
00468
00469 T*
00470 _tied_object()
00471 {
00472 return ptr_;
00473 }
00474
00475 void
00476 _tied_object(T& obj)
00477 {
00478 if(rel_)
00479 delete ptr_;
00480
00481 ptr_ = &obj;
00482 rel_ = false;
00483 }
00484
00485 void
00486 _tied_object(T* obj, CORBA::Boolean release = true)
00487 {
00488 if(rel_)
00489 delete ptr_;
00490
00491 ptr_ = obj;
00492 rel_ = release;
00493 }
00494
00495 CORBA::Boolean
00496 _is_owner()
00497 {
00498 return rel_;
00499 }
00500
00501 void
00502 _is_owner(CORBA::Boolean b)
00503 {
00504 rel_ = b;
00505 }
00506
00507 virtual void
00508 setStart(CORBA::Long start)
00509 throw(CORBA::SystemException)
00510 {
00511 ptr_ -> setStart(start);
00512 }
00513
00514 virtual void
00515 setEnd(CORBA::Long end)
00516 throw(CORBA::SystemException)
00517 {
00518 ptr_ -> setEnd(end);
00519 }
00520
00521 virtual void
00522 removeInt(const char* id)
00523 throw(HxCorba::DatabaseException,
00524 CORBA::SystemException)
00525 {
00526 ptr_ -> removeInt(id);
00527 }
00528
00529 virtual void
00530 removeDouble(const char* id)
00531 throw(HxCorba::DatabaseException,
00532 CORBA::SystemException)
00533 {
00534 ptr_ -> removeDouble(id);
00535 }
00536
00537 virtual void
00538 removeString(const char* id)
00539 throw(HxCorba::DatabaseException,
00540 CORBA::SystemException)
00541 {
00542 ptr_ -> removeString(id);
00543 }
00544
00545 virtual void
00546 changeInt(const char* id,
00547 CORBA::Long newValue)
00548 throw(HxCorba::DatabaseException,
00549 CORBA::SystemException)
00550 {
00551 ptr_ -> changeInt(id, newValue);
00552 }
00553
00554 virtual void
00555 changeDouble(const char* id,
00556 CORBA::Double newValue)
00557 throw(HxCorba::DatabaseException,
00558 CORBA::SystemException)
00559 {
00560 ptr_ -> changeDouble(id, newValue);
00561 }
00562
00563 virtual void
00564 changeString(const char* id,
00565 const char* newValue)
00566 throw(HxCorba::DatabaseException,
00567 CORBA::SystemException)
00568 {
00569 ptr_ -> changeString(id, newValue);
00570 }
00571
00572 virtual void
00573 addInt(const char* id,
00574 CORBA::Long value)
00575 throw(HxCorba::DatabaseException,
00576 CORBA::SystemException)
00577 {
00578 ptr_ -> addInt(id, value);
00579 }
00580
00581 virtual void
00582 addDouble(const char* id,
00583 CORBA::Double value)
00584 throw(HxCorba::DatabaseException,
00585 CORBA::SystemException)
00586 {
00587 ptr_ -> addDouble(id, value);
00588 }
00589
00590 virtual void
00591 addString(const char* id,
00592 const char* value)
00593 throw(HxCorba::DatabaseException,
00594 CORBA::SystemException)
00595 {
00596 ptr_ -> addString(id, value);
00597 }
00598
00599 virtual CORBA::Long
00600 start()
00601 throw(CORBA::SystemException)
00602 {
00603 return ptr_ -> start();
00604 }
00605
00606 virtual CORBA::Long
00607 end()
00608 throw(CORBA::SystemException)
00609 {
00610 return ptr_ -> end();
00611 }
00612
00613 virtual CORBA::Long
00614 length()
00615 throw(CORBA::SystemException)
00616 {
00617 return ptr_ -> length();
00618 }
00619
00620 virtual HxCorba::StringSeq*
00621 getIds()
00622 throw(CORBA::SystemException)
00623 {
00624 return ptr_ -> getIds();
00625 }
00626
00627 virtual HxCorba::StringSeq*
00628 getTypes()
00629 throw(CORBA::SystemException)
00630 {
00631 return ptr_ -> getTypes();
00632 }
00633
00634 virtual CORBA::Long
00635 getInt(const char* id)
00636 throw(CORBA::SystemException)
00637 {
00638 return ptr_ -> getInt(id);
00639 }
00640
00641 virtual CORBA::Double
00642 getDouble(const char* id)
00643 throw(CORBA::SystemException)
00644 {
00645 return ptr_ -> getDouble(id);
00646 }
00647
00648 virtual char*
00649 getString(const char* id)
00650 throw(CORBA::SystemException)
00651 {
00652 return ptr_ -> getString(id);
00653 }
00654
00655 virtual CORBA::Long
00656 getIntFlag(const char* id,
00657 CORBA::Boolean_out present)
00658 throw(CORBA::SystemException)
00659 {
00660 return ptr_ -> getIntFlag(id, present);
00661 }
00662
00663 virtual CORBA::Double
00664 getDoubleFlag(const char* id,
00665 CORBA::Boolean_out present)
00666 throw(CORBA::SystemException)
00667 {
00668 return ptr_ -> getDoubleFlag(id, present);
00669 }
00670
00671 virtual char*
00672 getStringFlag(const char* id,
00673 CORBA::Boolean_out present)
00674 throw(CORBA::SystemException)
00675 {
00676 return ptr_ -> getStringFlag(id, present);
00677 }
00678
00679 PortableServer::POA_ptr _default_POA()
00680 {
00681 if(!CORBA::is_nil(poa_))
00682 return PortableServer::POA::_duplicate(poa_);
00683 else
00684 return VxMutableSegment::_default_POA();
00685 }
00686 };
00687
00688
00689
00690
00691 template<class T>
00692 class VxMutableSegmentation_tie : virtual public VxMutableSegmentation
00693 {
00694 T* ptr_;
00695 PortableServer::POA_ptr poa_;
00696 CORBA::Boolean rel_;
00697
00698 VxMutableSegmentation_tie(const VxMutableSegmentation_tie<T>&) { }
00699 void operator=(const VxMutableSegmentation_tie<T>&) { }
00700
00701 public:
00702
00703 VxMutableSegmentation_tie(T& t)
00704 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00705 {
00706 }
00707
00708 VxMutableSegmentation_tie(T& t, PortableServer::POA_ptr poa)
00709 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00710 {
00711 }
00712
00713 VxMutableSegmentation_tie(T* p, CORBA::Boolean release = true)
00714 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00715 {
00716 }
00717
00718 VxMutableSegmentation_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00719 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00720 {
00721 }
00722
00723 virtual
00724 ~VxMutableSegmentation_tie()
00725 {
00726 if(rel_)
00727 delete ptr_;
00728
00729 CORBA::release(poa_);
00730 }
00731
00732 T*
00733 _tied_object()
00734 {
00735 return ptr_;
00736 }
00737
00738 void
00739 _tied_object(T& obj)
00740 {
00741 if(rel_)
00742 delete ptr_;
00743
00744 ptr_ = &obj;
00745 rel_ = false;
00746 }
00747
00748 void
00749 _tied_object(T* obj, CORBA::Boolean release = true)
00750 {
00751 if(rel_)
00752 delete ptr_;
00753
00754 ptr_ = obj;
00755 rel_ = release;
00756 }
00757
00758 CORBA::Boolean
00759 _is_owner()
00760 {
00761 return rel_;
00762 }
00763
00764 void
00765 _is_owner(CORBA::Boolean b)
00766 {
00767 rel_ = b;
00768 }
00769
00770 virtual void
00771 removeSegment(CORBA::Long index)
00772 throw(HxCorba::DatabaseException,
00773 CORBA::SystemException)
00774 {
00775 ptr_ -> removeSegment(index);
00776 }
00777
00778 virtual void
00779 setDescription(const char* description)
00780 throw(CORBA::SystemException)
00781 {
00782 ptr_ -> setDescription(description);
00783 }
00784
00785 virtual HxCorba::VxSegmentBuilder_ptr
00786 buildSegment(CORBA::Long start,
00787 CORBA::Long end)
00788 throw(HxCorba::DatabaseException,
00789 CORBA::SystemException)
00790 {
00791 return ptr_ -> buildSegment(start, end);
00792 }
00793
00794 virtual CORBA::Long
00795 size()
00796 throw(CORBA::SystemException)
00797 {
00798 return ptr_ -> size();
00799 }
00800
00801 virtual HxCorba::VxSegmentSeq*
00802 getAll()
00803 throw(CORBA::SystemException)
00804 {
00805 return ptr_ -> getAll();
00806 }
00807
00808 virtual HxCorba::VxTimeSpanSeq*
00809 getTimeSpans()
00810 throw(CORBA::SystemException)
00811 {
00812 return ptr_ -> getTimeSpans();
00813 }
00814
00815 virtual HxCorba::StringSeq*
00816 getIds()
00817 throw(CORBA::SystemException)
00818 {
00819 return ptr_ -> getIds();
00820 }
00821
00822 virtual HxCorba::StringSeq*
00823 getTypes()
00824 throw(CORBA::SystemException)
00825 {
00826 return ptr_ -> getTypes();
00827 }
00828
00829 virtual HxCorba::VxSegment_ptr
00830 getSegment(CORBA::Long index)
00831 throw(CORBA::SystemException)
00832 {
00833 return ptr_ -> getSegment(index);
00834 }
00835
00836 virtual HxCorba::VxSegment_ptr
00837 mapsToSegment(CORBA::Long timeSpan)
00838 throw(CORBA::SystemException)
00839 {
00840 return ptr_ -> mapsToSegment(timeSpan);
00841 }
00842
00843 PortableServer::POA_ptr _default_POA()
00844 {
00845 if(!CORBA::is_nil(poa_))
00846 return PortableServer::POA::_duplicate(poa_);
00847 else
00848 return VxMutableSegmentation::_default_POA();
00849 }
00850 };
00851
00852
00853
00854
00855 template<class T>
00856 class UpdateSession_tie : virtual public UpdateSession
00857 {
00858 T* ptr_;
00859 PortableServer::POA_ptr poa_;
00860 CORBA::Boolean rel_;
00861
00862 UpdateSession_tie(const UpdateSession_tie<T>&) { }
00863 void operator=(const UpdateSession_tie<T>&) { }
00864
00865 public:
00866
00867 UpdateSession_tie(T& t)
00868 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
00869 {
00870 }
00871
00872 UpdateSession_tie(T& t, PortableServer::POA_ptr poa)
00873 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
00874 {
00875 }
00876
00877 UpdateSession_tie(T* p, CORBA::Boolean release = true)
00878 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
00879 {
00880 }
00881
00882 UpdateSession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
00883 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
00884 {
00885 }
00886
00887 virtual
00888 ~UpdateSession_tie()
00889 {
00890 if(rel_)
00891 delete ptr_;
00892
00893 CORBA::release(poa_);
00894 }
00895
00896 T*
00897 _tied_object()
00898 {
00899 return ptr_;
00900 }
00901
00902 void
00903 _tied_object(T& obj)
00904 {
00905 if(rel_)
00906 delete ptr_;
00907
00908 ptr_ = &obj;
00909 rel_ = false;
00910 }
00911
00912 void
00913 _tied_object(T* obj, CORBA::Boolean release = true)
00914 {
00915 if(rel_)
00916 delete ptr_;
00917
00918 ptr_ = obj;
00919 rel_ = release;
00920 }
00921
00922 CORBA::Boolean
00923 _is_owner()
00924 {
00925 return rel_;
00926 }
00927
00928 void
00929 _is_owner(CORBA::Boolean b)
00930 {
00931 rel_ = b;
00932 }
00933
00934 virtual void
00935 removeVideo(const char* videoName)
00936 throw(HxCorba::DatabaseException,
00937 CORBA::SystemException)
00938 {
00939 ptr_ -> removeVideo(videoName);
00940 }
00941
00942 virtual void
00943 removeSegmentation(HxCorba::VxSegmentation_ptr seg)
00944 throw(HxCorba::DatabaseException,
00945 CORBA::SystemException)
00946 {
00947 ptr_ -> removeSegmentation(seg);
00948 }
00949
00950 virtual void
00951 removeSegment(HxCorba::VxSegment_ptr segment)
00952 throw(HxCorba::DatabaseException,
00953 CORBA::SystemException)
00954 {
00955 ptr_ -> removeSegment(segment);
00956 }
00957
00958 virtual void
00959 addSegmentation(HxCorba::VxSegmentation_ptr seg,
00960 const char* videoName,
00961 const char* segName,
00962 const char* description)
00963 throw(HxCorba::DatabaseException,
00964 CORBA::SystemException)
00965 {
00966 ptr_ -> addSegmentation(seg, videoName, segName, description);
00967 }
00968
00969 virtual HxCorba::VxSegmentationBuilder_ptr
00970 buildSegmentation(const char* videoName,
00971 const char* segName)
00972 throw(HxCorba::DatabaseException,
00973 CORBA::SystemException)
00974 {
00975 return ptr_ -> buildSegmentation(videoName, segName);
00976 }
00977
00978 virtual HxCorba::StringSeq*
00979 listVideos()
00980 throw(CORBA::SystemException)
00981 {
00982 return ptr_ -> listVideos();
00983 }
00984
00985 virtual HxCorba::StringSeq*
00986 listSegmentations(const char* videoName)
00987 throw(CORBA::SystemException)
00988 {
00989 return ptr_ -> listSegmentations(videoName);
00990 }
00991
00992 virtual HxCorba::VxSegmentation_ptr
00993 getSegmentation(const char* videoName,
00994 const char* segName)
00995 throw(CORBA::SystemException)
00996 {
00997 return ptr_ -> getSegmentation(videoName, segName);
00998 }
00999
01000 virtual HxCorba::VxSegmentSeq*
01001 querySegments(const char* sqlQuery)
01002 throw(HxCorba::DatabaseException,
01003 CORBA::SystemException)
01004 {
01005 return ptr_ -> querySegments(sqlQuery);
01006 }
01007
01008 virtual HxCorba::StringSeq*
01009 queryStrings(const char* sqlQuery)
01010 throw(HxCorba::DatabaseException,
01011 CORBA::SystemException)
01012 {
01013 return ptr_ -> queryStrings(sqlQuery);
01014 }
01015
01016 virtual HxCorba::SegmentQueryResultSeq*
01017 queryMultipleSegments(const char* sqlQuery)
01018 throw(HxCorba::DatabaseException,
01019 CORBA::SystemException)
01020 {
01021 return ptr_ -> queryMultipleSegments(sqlQuery);
01022 }
01023
01024 virtual void
01025 close()
01026 throw(CORBA::SystemException)
01027 {
01028 ptr_ -> close();
01029 }
01030
01031 PortableServer::POA_ptr _default_POA()
01032 {
01033 if(!CORBA::is_nil(poa_))
01034 return PortableServer::POA::_duplicate(poa_);
01035 else
01036 return UpdateSession::_default_POA();
01037 }
01038 };
01039
01040
01041
01042
01043 template<class T>
01044 class XMLSession_tie : virtual public XMLSession
01045 {
01046 T* ptr_;
01047 PortableServer::POA_ptr poa_;
01048 CORBA::Boolean rel_;
01049
01050 XMLSession_tie(const XMLSession_tie<T>&) { }
01051 void operator=(const XMLSession_tie<T>&) { }
01052
01053 public:
01054
01055 XMLSession_tie(T& t)
01056 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
01057 {
01058 }
01059
01060 XMLSession_tie(T& t, PortableServer::POA_ptr poa)
01061 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
01062 {
01063 }
01064
01065 XMLSession_tie(T* p, CORBA::Boolean release = true)
01066 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
01067 {
01068 }
01069
01070 XMLSession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
01071 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
01072 {
01073 }
01074
01075 virtual
01076 ~XMLSession_tie()
01077 {
01078 if(rel_)
01079 delete ptr_;
01080
01081 CORBA::release(poa_);
01082 }
01083
01084 T*
01085 _tied_object()
01086 {
01087 return ptr_;
01088 }
01089
01090 void
01091 _tied_object(T& obj)
01092 {
01093 if(rel_)
01094 delete ptr_;
01095
01096 ptr_ = &obj;
01097 rel_ = false;
01098 }
01099
01100 void
01101 _tied_object(T* obj, CORBA::Boolean release = true)
01102 {
01103 if(rel_)
01104 delete ptr_;
01105
01106 ptr_ = obj;
01107 rel_ = release;
01108 }
01109
01110 CORBA::Boolean
01111 _is_owner()
01112 {
01113 return rel_;
01114 }
01115
01116 void
01117 _is_owner(CORBA::Boolean b)
01118 {
01119 rel_ = b;
01120 }
01121
01122 virtual char*
01123 queryXML(const char* sqlQuery)
01124 throw(HxCorba::DatabaseException,
01125 CORBA::SystemException)
01126 {
01127 return ptr_ -> queryXML(sqlQuery);
01128 }
01129
01130 virtual HxCorba::DBDataRowSeq*
01131 queryDBData(const char* sqlQuery,
01132 const HxCorba::DBDataTagSeq& resultType)
01133 throw(HxCorba::DatabaseException,
01134 CORBA::SystemException)
01135 {
01136 return ptr_ -> queryDBData(sqlQuery, resultType);
01137 }
01138
01139 virtual HxCorba::StringSeq*
01140 listVideos()
01141 throw(CORBA::SystemException)
01142 {
01143 return ptr_ -> listVideos();
01144 }
01145
01146 virtual HxCorba::StringSeq*
01147 listSegmentations(const char* videoName)
01148 throw(CORBA::SystemException)
01149 {
01150 return ptr_ -> listSegmentations(videoName);
01151 }
01152
01153 virtual HxCorba::VxSegmentation_ptr
01154 getSegmentation(const char* videoName,
01155 const char* segName)
01156 throw(CORBA::SystemException)
01157 {
01158 return ptr_ -> getSegmentation(videoName, segName);
01159 }
01160
01161 virtual HxCorba::VxSegmentSeq*
01162 querySegments(const char* sqlQuery)
01163 throw(HxCorba::DatabaseException,
01164 CORBA::SystemException)
01165 {
01166 return ptr_ -> querySegments(sqlQuery);
01167 }
01168
01169 virtual HxCorba::StringSeq*
01170 queryStrings(const char* sqlQuery)
01171 throw(HxCorba::DatabaseException,
01172 CORBA::SystemException)
01173 {
01174 return ptr_ -> queryStrings(sqlQuery);
01175 }
01176
01177 virtual HxCorba::SegmentQueryResultSeq*
01178 queryMultipleSegments(const char* sqlQuery)
01179 throw(HxCorba::DatabaseException,
01180 CORBA::SystemException)
01181 {
01182 return ptr_ -> queryMultipleSegments(sqlQuery);
01183 }
01184
01185 virtual void
01186 close()
01187 throw(CORBA::SystemException)
01188 {
01189 ptr_ -> close();
01190 }
01191
01192 PortableServer::POA_ptr _default_POA()
01193 {
01194 if(!CORBA::is_nil(poa_))
01195 return PortableServer::POA::_duplicate(poa_);
01196 else
01197 return XMLSession::_default_POA();
01198 }
01199 };
01200
01201
01202
01203
01204 template<class T>
01205 class HistogramSession_tie : virtual public HistogramSession
01206 {
01207 T* ptr_;
01208 PortableServer::POA_ptr poa_;
01209 CORBA::Boolean rel_;
01210
01211 HistogramSession_tie(const HistogramSession_tie<T>&) { }
01212 void operator=(const HistogramSession_tie<T>&) { }
01213
01214 public:
01215
01216 HistogramSession_tie(T& t)
01217 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
01218 {
01219 }
01220
01221 HistogramSession_tie(T& t, PortableServer::POA_ptr poa)
01222 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
01223 {
01224 }
01225
01226 HistogramSession_tie(T* p, CORBA::Boolean release = true)
01227 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
01228 {
01229 }
01230
01231 HistogramSession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
01232 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
01233 {
01234 }
01235
01236 virtual
01237 ~HistogramSession_tie()
01238 {
01239 if(rel_)
01240 delete ptr_;
01241
01242 CORBA::release(poa_);
01243 }
01244
01245 T*
01246 _tied_object()
01247 {
01248 return ptr_;
01249 }
01250
01251 void
01252 _tied_object(T& obj)
01253 {
01254 if(rel_)
01255 delete ptr_;
01256
01257 ptr_ = &obj;
01258 rel_ = false;
01259 }
01260
01261 void
01262 _tied_object(T* obj, CORBA::Boolean release = true)
01263 {
01264 if(rel_)
01265 delete ptr_;
01266
01267 ptr_ = obj;
01268 rel_ = release;
01269 }
01270
01271 CORBA::Boolean
01272 _is_owner()
01273 {
01274 return rel_;
01275 }
01276
01277 void
01278 _is_owner(CORBA::Boolean b)
01279 {
01280 rel_ = b;
01281 }
01282
01283 virtual void
01284 addHistogram(const char* imageName,
01285 const char* setName,
01286 const HxCorba::FloatSeq& histoData)
01287 throw(HxCorba::DatabaseException,
01288 CORBA::SystemException)
01289 {
01290 ptr_ -> addHistogram(imageName, setName, histoData);
01291 }
01292
01293 virtual HxCorba::FloatSeq*
01294 getHistogram(const char* imageName,
01295 const char* setName)
01296 throw(HxCorba::DatabaseException,
01297 CORBA::SystemException)
01298 {
01299 return ptr_ -> getHistogram(imageName, setName);
01300 }
01301
01302 virtual HxCorba::StringSeq*
01303 nearest(const char* imageName,
01304 const char* setName,
01305 CORBA::Long count)
01306 throw(HxCorba::DatabaseException,
01307 CORBA::SystemException)
01308 {
01309 return ptr_ -> nearest(imageName, setName, count);
01310 }
01311
01312 virtual HxCorba::StringSeq*
01313 random(const char* setName,
01314 CORBA::Long count)
01315 throw(HxCorba::DatabaseException,
01316 CORBA::SystemException)
01317 {
01318 return ptr_ -> random(setName, count);
01319 }
01320
01321 virtual HxCorba::StringSeq*
01322 search(CORBA::Long count,
01323 const HxCorba::FloatSeq& sample)
01324 throw(HxCorba::DatabaseException,
01325 CORBA::SystemException)
01326 {
01327 return ptr_ -> search(count, sample);
01328 }
01329
01330 virtual HxCorba::StringSeq*
01331 listVideos()
01332 throw(CORBA::SystemException)
01333 {
01334 return ptr_ -> listVideos();
01335 }
01336
01337 virtual HxCorba::StringSeq*
01338 listSegmentations(const char* videoName)
01339 throw(CORBA::SystemException)
01340 {
01341 return ptr_ -> listSegmentations(videoName);
01342 }
01343
01344 virtual HxCorba::VxSegmentation_ptr
01345 getSegmentation(const char* videoName,
01346 const char* segName)
01347 throw(CORBA::SystemException)
01348 {
01349 return ptr_ -> getSegmentation(videoName, segName);
01350 }
01351
01352 virtual HxCorba::VxSegmentSeq*
01353 querySegments(const char* sqlQuery)
01354 throw(HxCorba::DatabaseException,
01355 CORBA::SystemException)
01356 {
01357 return ptr_ -> querySegments(sqlQuery);
01358 }
01359
01360 virtual HxCorba::StringSeq*
01361 queryStrings(const char* sqlQuery)
01362 throw(HxCorba::DatabaseException,
01363 CORBA::SystemException)
01364 {
01365 return ptr_ -> queryStrings(sqlQuery);
01366 }
01367
01368 virtual HxCorba::SegmentQueryResultSeq*
01369 queryMultipleSegments(const char* sqlQuery)
01370 throw(HxCorba::DatabaseException,
01371 CORBA::SystemException)
01372 {
01373 return ptr_ -> queryMultipleSegments(sqlQuery);
01374 }
01375
01376 virtual void
01377 close()
01378 throw(CORBA::SystemException)
01379 {
01380 ptr_ -> close();
01381 }
01382
01383 PortableServer::POA_ptr _default_POA()
01384 {
01385 if(!CORBA::is_nil(poa_))
01386 return PortableServer::POA::_duplicate(poa_);
01387 else
01388 return HistogramSession::_default_POA();
01389 }
01390 };
01391
01392
01393
01394
01395 template<class T>
01396 class VxSimilarityBuilder_tie : virtual public VxSimilarityBuilder
01397 {
01398 T* ptr_;
01399 PortableServer::POA_ptr poa_;
01400 CORBA::Boolean rel_;
01401
01402 VxSimilarityBuilder_tie(const VxSimilarityBuilder_tie<T>&) { }
01403 void operator=(const VxSimilarityBuilder_tie<T>&) { }
01404
01405 public:
01406
01407 VxSimilarityBuilder_tie(T& t)
01408 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
01409 {
01410 }
01411
01412 VxSimilarityBuilder_tie(T& t, PortableServer::POA_ptr poa)
01413 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
01414 {
01415 }
01416
01417 VxSimilarityBuilder_tie(T* p, CORBA::Boolean release = true)
01418 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
01419 {
01420 }
01421
01422 VxSimilarityBuilder_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
01423 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
01424 {
01425 }
01426
01427 virtual
01428 ~VxSimilarityBuilder_tie()
01429 {
01430 if(rel_)
01431 delete ptr_;
01432
01433 CORBA::release(poa_);
01434 }
01435
01436 T*
01437 _tied_object()
01438 {
01439 return ptr_;
01440 }
01441
01442 void
01443 _tied_object(T& obj)
01444 {
01445 if(rel_)
01446 delete ptr_;
01447
01448 ptr_ = &obj;
01449 rel_ = false;
01450 }
01451
01452 void
01453 _tied_object(T* obj, CORBA::Boolean release = true)
01454 {
01455 if(rel_)
01456 delete ptr_;
01457
01458 ptr_ = obj;
01459 rel_ = release;
01460 }
01461
01462 CORBA::Boolean
01463 _is_owner()
01464 {
01465 return rel_;
01466 }
01467
01468 void
01469 _is_owner(CORBA::Boolean b)
01470 {
01471 rel_ = b;
01472 }
01473
01474 virtual void
01475 addSimilarity(CORBA::Long index1,
01476 CORBA::Long index2,
01477 CORBA::Double value,
01478 CORBA::Long keyFrame1,
01479 CORBA::Long keyFrame2)
01480 throw(HxCorba::DatabaseException,
01481 CORBA::SystemException)
01482 {
01483 ptr_ -> addSimilarity(index1, index2, value, keyFrame1, keyFrame2);
01484 }
01485
01486 PortableServer::POA_ptr _default_POA()
01487 {
01488 if(!CORBA::is_nil(poa_))
01489 return PortableServer::POA::_duplicate(poa_);
01490 else
01491 return VxSimilarityBuilder::_default_POA();
01492 }
01493 };
01494
01495
01496
01497
01498 template<class T>
01499 class VxSimilaritySession_tie : virtual public VxSimilaritySession
01500 {
01501 T* ptr_;
01502 PortableServer::POA_ptr poa_;
01503 CORBA::Boolean rel_;
01504
01505 VxSimilaritySession_tie(const VxSimilaritySession_tie<T>&) { }
01506 void operator=(const VxSimilaritySession_tie<T>&) { }
01507
01508 public:
01509
01510 VxSimilaritySession_tie(T& t)
01511 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
01512 {
01513 }
01514
01515 VxSimilaritySession_tie(T& t, PortableServer::POA_ptr poa)
01516 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
01517 {
01518 }
01519
01520 VxSimilaritySession_tie(T* p, CORBA::Boolean release = true)
01521 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
01522 {
01523 }
01524
01525 VxSimilaritySession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
01526 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
01527 {
01528 }
01529
01530 virtual
01531 ~VxSimilaritySession_tie()
01532 {
01533 if(rel_)
01534 delete ptr_;
01535
01536 CORBA::release(poa_);
01537 }
01538
01539 T*
01540 _tied_object()
01541 {
01542 return ptr_;
01543 }
01544
01545 void
01546 _tied_object(T& obj)
01547 {
01548 if(rel_)
01549 delete ptr_;
01550
01551 ptr_ = &obj;
01552 rel_ = false;
01553 }
01554
01555 void
01556 _tied_object(T* obj, CORBA::Boolean release = true)
01557 {
01558 if(rel_)
01559 delete ptr_;
01560
01561 ptr_ = obj;
01562 rel_ = release;
01563 }
01564
01565 CORBA::Boolean
01566 _is_owner()
01567 {
01568 return rel_;
01569 }
01570
01571 void
01572 _is_owner(CORBA::Boolean b)
01573 {
01574 rel_ = b;
01575 }
01576
01577 virtual HxCorba::VxSimilarityBuilder_ptr
01578 addSimilarities(const char* videoName,
01579 const char* segName,
01580 const char* featureName)
01581 throw(HxCorba::DatabaseException,
01582 CORBA::SystemException)
01583 {
01584 return ptr_ -> addSimilarities(videoName, segName, featureName);
01585 }
01586
01587 virtual HxCorba::StringSeq*
01588 listVideos()
01589 throw(CORBA::SystemException)
01590 {
01591 return ptr_ -> listVideos();
01592 }
01593
01594 virtual HxCorba::StringSeq*
01595 listSegmentations(const char* videoName)
01596 throw(CORBA::SystemException)
01597 {
01598 return ptr_ -> listSegmentations(videoName);
01599 }
01600
01601 virtual HxCorba::VxSegmentation_ptr
01602 getSegmentation(const char* videoName,
01603 const char* segName)
01604 throw(CORBA::SystemException)
01605 {
01606 return ptr_ -> getSegmentation(videoName, segName);
01607 }
01608
01609 virtual HxCorba::VxSegmentSeq*
01610 querySegments(const char* sqlQuery)
01611 throw(HxCorba::DatabaseException,
01612 CORBA::SystemException)
01613 {
01614 return ptr_ -> querySegments(sqlQuery);
01615 }
01616
01617 virtual HxCorba::StringSeq*
01618 queryStrings(const char* sqlQuery)
01619 throw(HxCorba::DatabaseException,
01620 CORBA::SystemException)
01621 {
01622 return ptr_ -> queryStrings(sqlQuery);
01623 }
01624
01625 virtual HxCorba::SegmentQueryResultSeq*
01626 queryMultipleSegments(const char* sqlQuery)
01627 throw(HxCorba::DatabaseException,
01628 CORBA::SystemException)
01629 {
01630 return ptr_ -> queryMultipleSegments(sqlQuery);
01631 }
01632
01633 virtual void
01634 close()
01635 throw(CORBA::SystemException)
01636 {
01637 ptr_ -> close();
01638 }
01639
01640 PortableServer::POA_ptr _default_POA()
01641 {
01642 if(!CORBA::is_nil(poa_))
01643 return PortableServer::POA::_duplicate(poa_);
01644 else
01645 return VxSimilaritySession::_default_POA();
01646 }
01647 };
01648
01649
01650
01651
01652 template<class T>
01653 class FullSession_tie : virtual public FullSession
01654 {
01655 T* ptr_;
01656 PortableServer::POA_ptr poa_;
01657 CORBA::Boolean rel_;
01658
01659 FullSession_tie(const FullSession_tie<T>&) { }
01660 void operator=(const FullSession_tie<T>&) { }
01661
01662 public:
01663
01664 FullSession_tie(T& t)
01665 : ptr_(&t), poa_(PortableServer::POA::_nil()), rel_(false)
01666 {
01667 }
01668
01669 FullSession_tie(T& t, PortableServer::POA_ptr poa)
01670 : ptr_(&t), poa_(PortableServer::POA::_duplicate(poa)), rel_(false)
01671 {
01672 }
01673
01674 FullSession_tie(T* p, CORBA::Boolean release = true)
01675 : ptr_(p), poa_(PortableServer::POA::_nil()), rel_(release)
01676 {
01677 }
01678
01679 FullSession_tie(T* p, PortableServer::POA_ptr poa, CORBA::Boolean release = true)
01680 : ptr_(p), poa_(PortableServer::POA::_duplicate(poa)), rel_(release)
01681 {
01682 }
01683
01684 virtual
01685 ~FullSession_tie()
01686 {
01687 if(rel_)
01688 delete ptr_;
01689
01690 CORBA::release(poa_);
01691 }
01692
01693 T*
01694 _tied_object()
01695 {
01696 return ptr_;
01697 }
01698
01699 void
01700 _tied_object(T& obj)
01701 {
01702 if(rel_)
01703 delete ptr_;
01704
01705 ptr_ = &obj;
01706 rel_ = false;
01707 }
01708
01709 void
01710 _tied_object(T* obj, CORBA::Boolean release = true)
01711 {
01712 if(rel_)
01713 delete ptr_;
01714
01715 ptr_ = obj;
01716 rel_ = release;
01717 }
01718
01719 CORBA::Boolean
01720 _is_owner()
01721 {
01722 return rel_;
01723 }
01724
01725 void
01726 _is_owner(CORBA::Boolean b)
01727 {
01728 rel_ = b;
01729 }
01730
01731 virtual void
01732 removeVideo(const char* videoName)
01733 throw(HxCorba::DatabaseException,
01734 CORBA::SystemException)
01735 {
01736 ptr_ -> removeVideo(videoName);
01737 }
01738
01739 virtual void
01740 removeSegmentation(HxCorba::VxSegmentation_ptr seg)
01741 throw(HxCorba::DatabaseException,
01742 CORBA::SystemException)
01743 {
01744 ptr_ -> removeSegmentation(seg);
01745 }
01746
01747 virtual void
01748 removeSegment(HxCorba::VxSegment_ptr segment)
01749 throw(HxCorba::DatabaseException,
01750 CORBA::SystemException)
01751 {
01752 ptr_ -> removeSegment(segment);
01753 }
01754
01755 virtual void
01756 addSegmentation(HxCorba::VxSegmentation_ptr seg,
01757 const char* videoName,
01758 const char* segName,
01759 const char* description)
01760 throw(HxCorba::DatabaseException,
01761 CORBA::SystemException)
01762 {
01763 ptr_ -> addSegmentation(seg, videoName, segName, description);
01764 }
01765
01766 virtual HxCorba::VxSegmentationBuilder_ptr
01767 buildSegmentation(const char* videoName,
01768 const char* segName)
01769 throw(HxCorba::DatabaseException,
01770 CORBA::SystemException)
01771 {
01772 return ptr_ -> buildSegmentation(videoName, segName);
01773 }
01774
01775 virtual HxCorba::StringSeq*
01776 listVideos()
01777 throw(CORBA::SystemException)
01778 {
01779 return ptr_ -> listVideos();
01780 }
01781
01782 virtual HxCorba::StringSeq*
01783 listSegmentations(const char* videoName)
01784 throw(CORBA::SystemException)
01785 {
01786 return ptr_ -> listSegmentations(videoName);
01787 }
01788
01789 virtual HxCorba::VxSegmentation_ptr
01790 getSegmentation(const char* videoName,
01791 const char* segName)
01792 throw(CORBA::SystemException)
01793 {
01794 return ptr_ -> getSegmentation(videoName, segName);
01795 }
01796
01797 virtual HxCorba::VxSegmentSeq*
01798 querySegments(const char* sqlQuery)
01799 throw(HxCorba::DatabaseException,
01800 CORBA::SystemException)
01801 {
01802 return ptr_ -> querySegments(sqlQuery);
01803 }
01804
01805 virtual HxCorba::StringSeq*
01806 queryStrings(const char* sqlQuery)
01807 throw(HxCorba::DatabaseException,
01808 CORBA::SystemException)
01809 {
01810 return ptr_ -> queryStrings(sqlQuery);
01811 }
01812
01813 virtual HxCorba::SegmentQueryResultSeq*
01814 queryMultipleSegments(const char* sqlQuery)
01815 throw(HxCorba::DatabaseException,
01816 CORBA::SystemException)
01817 {
01818 return ptr_ -> queryMultipleSegments(sqlQuery);
01819 }
01820
01821 virtual void
01822 close()
01823 throw(CORBA::SystemException)
01824 {
01825 ptr_ -> close();
01826 }
01827
01828 virtual char*
01829 queryXML(const char* sqlQuery)
01830 throw(HxCorba::DatabaseException,
01831 CORBA::SystemException)
01832 {
01833 return ptr_ -> queryXML(sqlQuery);
01834 }
01835
01836 virtual HxCorba::DBDataRowSeq*
01837 queryDBData(const char* sqlQuery,
01838 const HxCorba::DBDataTagSeq& resultType)
01839 throw(HxCorba::DatabaseException,
01840 CORBA::SystemException)
01841 {
01842 return ptr_ -> queryDBData(sqlQuery, resultType);
01843 }
01844
01845 virtual void
01846 addHistogram(const char* imageName,
01847 const char* setName,
01848 const HxCorba::FloatSeq& histoData)
01849 throw(HxCorba::DatabaseException,
01850 CORBA::SystemException)
01851 {
01852 ptr_ -> addHistogram(imageName, setName, histoData);
01853 }
01854
01855 virtual HxCorba::FloatSeq*
01856 getHistogram(const char* imageName,
01857 const char* setName)
01858 throw(HxCorba::DatabaseException,
01859 CORBA::SystemException)
01860 {
01861 return ptr_ -> getHistogram(imageName, setName);
01862 }
01863
01864 virtual HxCorba::StringSeq*
01865 nearest(const char* imageName,
01866 const char* setName,
01867 CORBA::Long count)
01868 throw(HxCorba::DatabaseException,
01869 CORBA::SystemException)
01870 {
01871 return ptr_ -> nearest(imageName, setName, count);
01872 }
01873
01874 virtual HxCorba::StringSeq*
01875 random(const char* setName,
01876 CORBA::Long count)
01877 throw(HxCorba::DatabaseException,
01878 CORBA::SystemException)
01879 {
01880 return ptr_ -> random(setName, count);
01881 }
01882
01883 virtual HxCorba::StringSeq*
01884 search(CORBA::Long count,
01885 const HxCorba::FloatSeq& sample)
01886 throw(HxCorba::DatabaseException,
01887 CORBA::SystemException)
01888 {
01889 return ptr_ -> search(count, sample);
01890 }
01891
01892 virtual HxCorba::VxSimilarityBuilder_ptr
01893 addSimilarities(const char* videoName,
01894 const char* segName,
01895 const char* featureName)
01896 throw(HxCorba::DatabaseException,
01897 CORBA::SystemException)
01898 {
01899 return ptr_ -> addSimilarities(videoName, segName, featureName);
01900 }
01901
01902 PortableServer::POA_ptr _default_POA()
01903 {
01904 if(!CORBA::is_nil(poa_))
01905 return PortableServer::POA::_duplicate(poa_);
01906 else
01907 return FullSession::_default_POA();
01908 }
01909 };
01910
01911 }
01912
01913 #endif