Horus Doc || IDL Reference || C++ Binding   Java Binding || Doxygen's quick Index  

HxCorbaDatabaseSessions_skel_tie.h

Go to the documentation of this file.
00001 // **********************************************************************
00002 //
00003 // Generated by the ORBacus IDL-to-C++ Translator
00004 //
00005 // Copyright (c) 2001
00006 // IONA Technologies, Inc.
00007 // Waltham, MA, USA
00008 //
00009 // All Rights Reserved
00010 //
00011 // **********************************************************************
00012 
00013 // Version: 4.1.0
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 // IDL:HxCorba:1.0
00032 //
00033 namespace POA_HxCorba
00034 {
00035 
00036 //
00037 // IDL:HxCorba/VxSegmentBuilder:1.0
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 // IDL:HxCorba/VxSegmentationBuilder:1.0
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 // IDL:HxCorba/StoreSession:1.0
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 // IDL:HxCorba/VxMutableSegment:1.0
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 // IDL:HxCorba/VxMutableSegmentation:1.0
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 // IDL:HxCorba/UpdateSession:1.0
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 // IDL:HxCorba/XMLSession:1.0
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 // IDL:HxCorba/HistogramSession:1.0
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 // IDL:HxCorba/VxSimilarityBuilder:1.0
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 // IDL:HxCorba/VxSimilaritySession:1.0
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 // IDL:HxCorba/FullSession:1.0
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 } // End of namespace POA_HxCorba
01912 
01913 #endif

Generated on Mon Jan 27 15:07:52 2003 for C++Binding by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001