ImageIce.ice.C

00001 // **********************************************************************
00002 //
00003 // Copyright (c) 2003-2009 ZeroC, Inc. All rights reserved.
00004 //
00005 // This copy of Ice is licensed to you under the terms described in the
00006 // ICE_LICENSE file included in this distribution.
00007 //
00008 // **********************************************************************
00009 
00010 // Ice version 3.3.1
00011 // Generated from file `ImageIce.ice'
00012 
00013 #include <ImageIce.ice.H>
00014 #include <Ice/LocalException.h>
00015 #include <Ice/ObjectFactory.h>
00016 #include <Ice/BasicStream.h>
00017 #include <IceUtil/Iterator.h>
00018 #include <IceUtil/ScopedArray.h>
00019 
00020 #ifndef ICE_IGNORE_VERSION
00021 #   if ICE_INT_VERSION / 100 != 303
00022 #       error Ice version mismatch!
00023 #   endif
00024 #   if ICE_INT_VERSION % 100 > 50
00025 #       error Beta header file detected
00026 #   endif
00027 #   if ICE_INT_VERSION % 100 < 1
00028 #       error Ice patch level mismatch!
00029 #   endif
00030 #endif
00031 
00032 static const ::std::string __ImageIceMod__ImageShuttle__transferImage_name = "transferImage";
00033 
00034 ::Ice::Object* IceInternal::upCast(::ImageIceMod::ImageShuttle* p) { return p; }
00035 ::IceProxy::Ice::Object* IceInternal::upCast(::IceProxy::ImageIceMod::ImageShuttle* p) { return p; }
00036 
00037 void
00038 ImageIceMod::__read(::IceInternal::BasicStream* __is, ::ImageIceMod::ImageShuttlePrx& v)
00039 {
00040     ::Ice::ObjectPrx proxy;
00041     __is->read(proxy);
00042     if(!proxy)
00043     {
00044         v = 0;
00045     }
00046     else
00047     {
00048         v = new ::IceProxy::ImageIceMod::ImageShuttle;
00049         v->__copyFrom(proxy);
00050     }
00051 }
00052 
00053 bool
00054 ImageIceMod::DimsIce::operator==(const DimsIce& __rhs) const
00055 {
00056     if(this == &__rhs)
00057     {
00058         return true;
00059     }
00060     if(w != __rhs.w)
00061     {
00062         return false;
00063     }
00064     if(h != __rhs.h)
00065     {
00066         return false;
00067     }
00068     return true;
00069 }
00070 
00071 bool
00072 ImageIceMod::DimsIce::operator<(const DimsIce& __rhs) const
00073 {
00074     if(this == &__rhs)
00075     {
00076         return false;
00077     }
00078     if(w < __rhs.w)
00079     {
00080         return true;
00081     }
00082     else if(__rhs.w < w)
00083     {
00084         return false;
00085     }
00086     if(h < __rhs.h)
00087     {
00088         return true;
00089     }
00090     else if(__rhs.h < h)
00091     {
00092         return false;
00093     }
00094     return false;
00095 }
00096 
00097 void
00098 ImageIceMod::DimsIce::__write(::IceInternal::BasicStream* __os) const
00099 {
00100     __os->write(w);
00101     __os->write(h);
00102 }
00103 
00104 void
00105 ImageIceMod::DimsIce::__read(::IceInternal::BasicStream* __is)
00106 {
00107     __is->read(w);
00108     __is->read(h);
00109 }
00110 
00111 bool
00112 ImageIceMod::SensorPose::operator==(const SensorPose& __rhs) const
00113 {
00114     if(this == &__rhs)
00115     {
00116         return true;
00117     }
00118     if(val != __rhs.val)
00119     {
00120         return false;
00121     }
00122     if(weight != __rhs.weight)
00123     {
00124         return false;
00125     }
00126     if(decay != __rhs.decay)
00127     {
00128         return false;
00129     }
00130     return true;
00131 }
00132 
00133 bool
00134 ImageIceMod::SensorPose::operator<(const SensorPose& __rhs) const
00135 {
00136     if(this == &__rhs)
00137     {
00138         return false;
00139     }
00140     if(val < __rhs.val)
00141     {
00142         return true;
00143     }
00144     else if(__rhs.val < val)
00145     {
00146         return false;
00147     }
00148     if(weight < __rhs.weight)
00149     {
00150         return true;
00151     }
00152     else if(__rhs.weight < weight)
00153     {
00154         return false;
00155     }
00156     if(decay < __rhs.decay)
00157     {
00158         return true;
00159     }
00160     else if(__rhs.decay < decay)
00161     {
00162         return false;
00163     }
00164     return false;
00165 }
00166 
00167 void
00168 ImageIceMod::SensorPose::__write(::IceInternal::BasicStream* __os) const
00169 {
00170     __os->write(val);
00171     __os->write(weight);
00172     __os->write(decay);
00173 }
00174 
00175 void
00176 ImageIceMod::SensorPose::__read(::IceInternal::BasicStream* __is)
00177 {
00178     __is->read(val);
00179     __is->read(weight);
00180     __is->read(decay);
00181 }
00182 
00183 void
00184 ImageIceMod::__write(::IceInternal::BasicStream* __os, ::ImageIceMod::SensorType v)
00185 {
00186     __os->write(static_cast< ::Ice::Byte>(v), 4);
00187 }
00188 
00189 void
00190 ImageIceMod::__read(::IceInternal::BasicStream* __is, ::ImageIceMod::SensorType& v)
00191 {
00192     ::Ice::Byte val;
00193     __is->read(val, 4);
00194     v = static_cast< ::ImageIceMod::SensorType>(val);
00195 }
00196 
00197 bool
00198 ImageIceMod::SensorVote::operator==(const SensorVote& __rhs) const
00199 {
00200     if(this == &__rhs)
00201     {
00202         return true;
00203     }
00204     if(type != __rhs.type)
00205     {
00206         return false;
00207     }
00208     if(heading != __rhs.heading)
00209     {
00210         return false;
00211     }
00212     if(depth != __rhs.depth)
00213     {
00214         return false;
00215     }
00216     return true;
00217 }
00218 
00219 bool
00220 ImageIceMod::SensorVote::operator<(const SensorVote& __rhs) const
00221 {
00222     if(this == &__rhs)
00223     {
00224         return false;
00225     }
00226     if(type < __rhs.type)
00227     {
00228         return true;
00229     }
00230     else if(__rhs.type < type)
00231     {
00232         return false;
00233     }
00234     if(heading < __rhs.heading)
00235     {
00236         return true;
00237     }
00238     else if(__rhs.heading < heading)
00239     {
00240         return false;
00241     }
00242     if(depth < __rhs.depth)
00243     {
00244         return true;
00245     }
00246     else if(__rhs.depth < depth)
00247     {
00248         return false;
00249     }
00250     return false;
00251 }
00252 
00253 void
00254 ImageIceMod::SensorVote::__write(::IceInternal::BasicStream* __os) const
00255 {
00256     ::ImageIceMod::__write(__os, type);
00257     heading.__write(__os);
00258     depth.__write(__os);
00259 }
00260 
00261 void
00262 ImageIceMod::SensorVote::__read(::IceInternal::BasicStream* __is)
00263 {
00264     ::ImageIceMod::__read(__is, type);
00265     heading.__read(__is);
00266     depth.__read(__is);
00267 }
00268 
00269 bool
00270 ImageIceMod::WaypointIce::operator==(const WaypointIce& __rhs) const
00271 {
00272     if(this == &__rhs)
00273     {
00274         return true;
00275     }
00276     if(x != __rhs.x)
00277     {
00278         return false;
00279     }
00280     if(y != __rhs.y)
00281     {
00282         return false;
00283     }
00284     if(depth != __rhs.depth)
00285     {
00286         return false;
00287     }
00288     if(heading != __rhs.heading)
00289     {
00290         return false;
00291     }
00292     return true;
00293 }
00294 
00295 bool
00296 ImageIceMod::WaypointIce::operator<(const WaypointIce& __rhs) const
00297 {
00298     if(this == &__rhs)
00299     {
00300         return false;
00301     }
00302     if(x < __rhs.x)
00303     {
00304         return true;
00305     }
00306     else if(__rhs.x < x)
00307     {
00308         return false;
00309     }
00310     if(y < __rhs.y)
00311     {
00312         return true;
00313     }
00314     else if(__rhs.y < y)
00315     {
00316         return false;
00317     }
00318     if(depth < __rhs.depth)
00319     {
00320         return true;
00321     }
00322     else if(__rhs.depth < depth)
00323     {
00324         return false;
00325     }
00326     if(heading < __rhs.heading)
00327     {
00328         return true;
00329     }
00330     else if(__rhs.heading < heading)
00331     {
00332         return false;
00333     }
00334     return false;
00335 }
00336 
00337 void
00338 ImageIceMod::WaypointIce::__write(::IceInternal::BasicStream* __os) const
00339 {
00340     __os->write(x);
00341     __os->write(y);
00342     __os->write(depth);
00343     __os->write(heading);
00344 }
00345 
00346 void
00347 ImageIceMod::WaypointIce::__read(::IceInternal::BasicStream* __is)
00348 {
00349     __is->read(x);
00350     __is->read(y);
00351     __is->read(depth);
00352     __is->read(heading);
00353 }
00354 
00355 bool
00356 ImageIceMod::Point2DIce::operator==(const Point2DIce& __rhs) const
00357 {
00358     if(this == &__rhs)
00359     {
00360         return true;
00361     }
00362     if(i != __rhs.i)
00363     {
00364         return false;
00365     }
00366     if(j != __rhs.j)
00367     {
00368         return false;
00369     }
00370     return true;
00371 }
00372 
00373 bool
00374 ImageIceMod::Point2DIce::operator<(const Point2DIce& __rhs) const
00375 {
00376     if(this == &__rhs)
00377     {
00378         return false;
00379     }
00380     if(i < __rhs.i)
00381     {
00382         return true;
00383     }
00384     else if(__rhs.i < i)
00385     {
00386         return false;
00387     }
00388     if(j < __rhs.j)
00389     {
00390         return true;
00391     }
00392     else if(__rhs.j < j)
00393     {
00394         return false;
00395     }
00396     return false;
00397 }
00398 
00399 void
00400 ImageIceMod::Point2DIce::__write(::IceInternal::BasicStream* __os) const
00401 {
00402     __os->write(i);
00403     __os->write(j);
00404 }
00405 
00406 void
00407 ImageIceMod::Point2DIce::__read(::IceInternal::BasicStream* __is)
00408 {
00409     __is->read(i);
00410     __is->read(j);
00411 }
00412 
00413 bool
00414 ImageIceMod::Point3DIce::operator==(const Point3DIce& __rhs) const
00415 {
00416     if(this == &__rhs)
00417     {
00418         return true;
00419     }
00420     if(x != __rhs.x)
00421     {
00422         return false;
00423     }
00424     if(y != __rhs.y)
00425     {
00426         return false;
00427     }
00428     if(z != __rhs.z)
00429     {
00430         return false;
00431     }
00432     return true;
00433 }
00434 
00435 bool
00436 ImageIceMod::Point3DIce::operator<(const Point3DIce& __rhs) const
00437 {
00438     if(this == &__rhs)
00439     {
00440         return false;
00441     }
00442     if(x < __rhs.x)
00443     {
00444         return true;
00445     }
00446     else if(__rhs.x < x)
00447     {
00448         return false;
00449     }
00450     if(y < __rhs.y)
00451     {
00452         return true;
00453     }
00454     else if(__rhs.y < y)
00455     {
00456         return false;
00457     }
00458     if(z < __rhs.z)
00459     {
00460         return true;
00461     }
00462     else if(__rhs.z < z)
00463     {
00464         return false;
00465     }
00466     return false;
00467 }
00468 
00469 void
00470 ImageIceMod::Point3DIce::__write(::IceInternal::BasicStream* __os) const
00471 {
00472     __os->write(x);
00473     __os->write(y);
00474     __os->write(z);
00475 }
00476 
00477 void
00478 ImageIceMod::Point3DIce::__read(::IceInternal::BasicStream* __is)
00479 {
00480     __is->read(x);
00481     __is->read(y);
00482     __is->read(z);
00483 }
00484 
00485 bool
00486 ImageIceMod::RectangleIce::operator==(const RectangleIce& __rhs) const
00487 {
00488     if(this == &__rhs)
00489     {
00490         return true;
00491     }
00492     if(tl != __rhs.tl)
00493     {
00494         return false;
00495     }
00496     if(br != __rhs.br)
00497     {
00498         return false;
00499     }
00500     return true;
00501 }
00502 
00503 bool
00504 ImageIceMod::RectangleIce::operator<(const RectangleIce& __rhs) const
00505 {
00506     if(this == &__rhs)
00507     {
00508         return false;
00509     }
00510     if(tl < __rhs.tl)
00511     {
00512         return true;
00513     }
00514     else if(__rhs.tl < tl)
00515     {
00516         return false;
00517     }
00518     if(br < __rhs.br)
00519     {
00520         return true;
00521     }
00522     else if(__rhs.br < br)
00523     {
00524         return false;
00525     }
00526     return false;
00527 }
00528 
00529 void
00530 ImageIceMod::RectangleIce::__write(::IceInternal::BasicStream* __os) const
00531 {
00532     tl.__write(__os);
00533     br.__write(__os);
00534 }
00535 
00536 void
00537 ImageIceMod::RectangleIce::__read(::IceInternal::BasicStream* __is)
00538 {
00539     tl.__read(__is);
00540     br.__read(__is);
00541 }
00542 
00543 bool
00544 ImageIceMod::QuadrilateralIce::operator==(const QuadrilateralIce& __rhs) const
00545 {
00546     if(this == &__rhs)
00547     {
00548         return true;
00549     }
00550     if(tl != __rhs.tl)
00551     {
00552         return false;
00553     }
00554     if(tr != __rhs.tr)
00555     {
00556         return false;
00557     }
00558     if(bl != __rhs.bl)
00559     {
00560         return false;
00561     }
00562     if(br != __rhs.br)
00563     {
00564         return false;
00565     }
00566     if(center != __rhs.center)
00567     {
00568         return false;
00569     }
00570     if(ratio != __rhs.ratio)
00571     {
00572         return false;
00573     }
00574     if(angle != __rhs.angle)
00575     {
00576         return false;
00577     }
00578     return true;
00579 }
00580 
00581 bool
00582 ImageIceMod::QuadrilateralIce::operator<(const QuadrilateralIce& __rhs) const
00583 {
00584     if(this == &__rhs)
00585     {
00586         return false;
00587     }
00588     if(tl < __rhs.tl)
00589     {
00590         return true;
00591     }
00592     else if(__rhs.tl < tl)
00593     {
00594         return false;
00595     }
00596     if(tr < __rhs.tr)
00597     {
00598         return true;
00599     }
00600     else if(__rhs.tr < tr)
00601     {
00602         return false;
00603     }
00604     if(bl < __rhs.bl)
00605     {
00606         return true;
00607     }
00608     else if(__rhs.bl < bl)
00609     {
00610         return false;
00611     }
00612     if(br < __rhs.br)
00613     {
00614         return true;
00615     }
00616     else if(__rhs.br < br)
00617     {
00618         return false;
00619     }
00620     if(center < __rhs.center)
00621     {
00622         return true;
00623     }
00624     else if(__rhs.center < center)
00625     {
00626         return false;
00627     }
00628     if(ratio < __rhs.ratio)
00629     {
00630         return true;
00631     }
00632     else if(__rhs.ratio < ratio)
00633     {
00634         return false;
00635     }
00636     if(angle < __rhs.angle)
00637     {
00638         return true;
00639     }
00640     else if(__rhs.angle < angle)
00641     {
00642         return false;
00643     }
00644     return false;
00645 }
00646 
00647 void
00648 ImageIceMod::QuadrilateralIce::__write(::IceInternal::BasicStream* __os) const
00649 {
00650     tl.__write(__os);
00651     tr.__write(__os);
00652     bl.__write(__os);
00653     br.__write(__os);
00654     center.__write(__os);
00655     __os->write(ratio);
00656     __os->write(angle);
00657 }
00658 
00659 void
00660 ImageIceMod::QuadrilateralIce::__read(::IceInternal::BasicStream* __is)
00661 {
00662     tl.__read(__is);
00663     tr.__read(__is);
00664     bl.__read(__is);
00665     br.__read(__is);
00666     center.__read(__is);
00667     __is->read(ratio);
00668     __is->read(angle);
00669 }
00670 
00671 bool
00672 ImageIceMod::LineIce::operator==(const LineIce& __rhs) const
00673 {
00674     if(this == &__rhs)
00675     {
00676         return true;
00677     }
00678     if(pt1 != __rhs.pt1)
00679     {
00680         return false;
00681     }
00682     if(pt2 != __rhs.pt2)
00683     {
00684         return false;
00685     }
00686     if(angle != __rhs.angle)
00687     {
00688         return false;
00689     }
00690     return true;
00691 }
00692 
00693 bool
00694 ImageIceMod::LineIce::operator<(const LineIce& __rhs) const
00695 {
00696     if(this == &__rhs)
00697     {
00698         return false;
00699     }
00700     if(pt1 < __rhs.pt1)
00701     {
00702         return true;
00703     }
00704     else if(__rhs.pt1 < pt1)
00705     {
00706         return false;
00707     }
00708     if(pt2 < __rhs.pt2)
00709     {
00710         return true;
00711     }
00712     else if(__rhs.pt2 < pt2)
00713     {
00714         return false;
00715     }
00716     if(angle < __rhs.angle)
00717     {
00718         return true;
00719     }
00720     else if(__rhs.angle < angle)
00721     {
00722         return false;
00723     }
00724     return false;
00725 }
00726 
00727 void
00728 ImageIceMod::LineIce::__write(::IceInternal::BasicStream* __os) const
00729 {
00730     pt1.__write(__os);
00731     pt2.__write(__os);
00732     __os->write(angle);
00733 }
00734 
00735 void
00736 ImageIceMod::LineIce::__read(::IceInternal::BasicStream* __is)
00737 {
00738     pt1.__read(__is);
00739     pt2.__read(__is);
00740     __is->read(angle);
00741 }
00742 
00743 bool
00744 ImageIceMod::ImageIce::operator==(const ImageIce& __rhs) const
00745 {
00746     if(this == &__rhs)
00747     {
00748         return true;
00749     }
00750     if(data != __rhs.data)
00751     {
00752         return false;
00753     }
00754     if(width != __rhs.width)
00755     {
00756         return false;
00757     }
00758     if(height != __rhs.height)
00759     {
00760         return false;
00761     }
00762     if(pixSize != __rhs.pixSize)
00763     {
00764         return false;
00765     }
00766     return true;
00767 }
00768 
00769 bool
00770 ImageIceMod::ImageIce::operator<(const ImageIce& __rhs) const
00771 {
00772     if(this == &__rhs)
00773     {
00774         return false;
00775     }
00776     if(data < __rhs.data)
00777     {
00778         return true;
00779     }
00780     else if(__rhs.data < data)
00781     {
00782         return false;
00783     }
00784     if(width < __rhs.width)
00785     {
00786         return true;
00787     }
00788     else if(__rhs.width < width)
00789     {
00790         return false;
00791     }
00792     if(height < __rhs.height)
00793     {
00794         return true;
00795     }
00796     else if(__rhs.height < height)
00797     {
00798         return false;
00799     }
00800     if(pixSize < __rhs.pixSize)
00801     {
00802         return true;
00803     }
00804     else if(__rhs.pixSize < pixSize)
00805     {
00806         return false;
00807     }
00808     return false;
00809 }
00810 
00811 void
00812 ImageIceMod::ImageIce::__write(::IceInternal::BasicStream* __os) const
00813 {
00814     if(data.size() == 0)
00815     {
00816         __os->writeSize(0);
00817     }
00818     else
00819     {
00820         __os->write(&data[0], &data[0] + data.size());
00821     }
00822     __os->write(width);
00823     __os->write(height);
00824     __os->write(pixSize);
00825 }
00826 
00827 void
00828 ImageIceMod::ImageIce::__read(::IceInternal::BasicStream* __is)
00829 {
00830     ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*> ___data;
00831     __is->read(___data);
00832     ::std::vector< ::Ice::Byte>(___data.first, ___data.second).swap(data);
00833     __is->read(width);
00834     __is->read(height);
00835     __is->read(pixSize);
00836 }
00837 
00838 void
00839 ImageIceMod::__writeImageIceSeq(::IceInternal::BasicStream* __os, const ::ImageIceMod::ImageIce* begin, const ::ImageIceMod::ImageIce* end)
00840 {
00841     ::Ice::Int size = static_cast< ::Ice::Int>(end - begin);
00842     __os->writeSize(size);
00843     for(int i = 0; i < size; ++i)
00844     {
00845         begin[i].__write(__os);
00846     }
00847 }
00848 
00849 void
00850 ImageIceMod::__readImageIceSeq(::IceInternal::BasicStream* __is, ::ImageIceMod::ImageIceSeq& v)
00851 {
00852     ::Ice::Int sz;
00853     __is->readSize(sz);
00854     __is->startSeq(sz, 13);
00855     v.resize(sz);
00856     for(int i = 0; i < sz; ++i)
00857     {
00858         v[i].__read(__is);
00859         __is->checkSeq();
00860         __is->endElement();
00861     }
00862     __is->endSeq(sz);
00863 }
00864 
00865 void
00866 IceProxy::ImageIceMod::ImageShuttle::transferImage(const ::ImageIceMod::ImageIce& i, const ::Ice::Context* __ctx)
00867 {
00868     int __cnt = 0;
00869     while(true)
00870     {
00871         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00872         try
00873         {
00874 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00875             IceUtil::DummyBCC dummy;
00876 #endif
00877             __delBase = __getDelegate(false);
00878             ::IceDelegate::ImageIceMod::ImageShuttle* __del = dynamic_cast< ::IceDelegate::ImageIceMod::ImageShuttle*>(__delBase.get());
00879             __del->transferImage(i, __ctx);
00880             return;
00881         }
00882         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00883         {
00884             __handleExceptionWrapper(__delBase, __ex, 0);
00885         }
00886         catch(const ::Ice::LocalException& __ex)
00887         {
00888             __handleException(__delBase, __ex, 0, __cnt);
00889         }
00890     }
00891 }
00892 
00893 const ::std::string&
00894 IceProxy::ImageIceMod::ImageShuttle::ice_staticId()
00895 {
00896     return ::ImageIceMod::ImageShuttle::ice_staticId();
00897 }
00898 
00899 ::IceInternal::Handle< ::IceDelegateM::Ice::Object>
00900 IceProxy::ImageIceMod::ImageShuttle::__createDelegateM()
00901 {
00902     return ::IceInternal::Handle< ::IceDelegateM::Ice::Object>(new ::IceDelegateM::ImageIceMod::ImageShuttle);
00903 }
00904 
00905 ::IceInternal::Handle< ::IceDelegateD::Ice::Object>
00906 IceProxy::ImageIceMod::ImageShuttle::__createDelegateD()
00907 {
00908     return ::IceInternal::Handle< ::IceDelegateD::Ice::Object>(new ::IceDelegateD::ImageIceMod::ImageShuttle);
00909 }
00910 
00911 ::IceProxy::Ice::Object*
00912 IceProxy::ImageIceMod::ImageShuttle::__newInstance() const
00913 {
00914     return new ImageShuttle;
00915 }
00916 
00917 void
00918 IceDelegateM::ImageIceMod::ImageShuttle::transferImage(const ::ImageIceMod::ImageIce& i, const ::Ice::Context* __context)
00919 {
00920     ::IceInternal::Outgoing __og(__handler.get(), __ImageIceMod__ImageShuttle__transferImage_name, ::Ice::Normal, __context);
00921     try
00922     {
00923         ::IceInternal::BasicStream* __os = __og.os();
00924         i.__write(__os);
00925     }
00926     catch(const ::Ice::LocalException& __ex)
00927     {
00928         __og.abort(__ex);
00929     }
00930     bool __ok = __og.invoke();
00931     if(!__og.is()->b.empty())
00932     {
00933         try
00934         {
00935             if(!__ok)
00936             {
00937                 try
00938                 {
00939                     __og.throwUserException();
00940                 }
00941                 catch(const ::Ice::UserException& __ex)
00942                 {
00943                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
00944                     throw __uue;
00945                 }
00946             }
00947             __og.is()->skipEmptyEncaps();
00948         }
00949         catch(const ::Ice::LocalException& __ex)
00950         {
00951             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
00952         }
00953     }
00954 }
00955 
00956 void
00957 IceDelegateD::ImageIceMod::ImageShuttle::transferImage(const ::ImageIceMod::ImageIce& i, const ::Ice::Context* __context)
00958 {
00959     class _DirectI : public ::IceInternal::Direct
00960     {
00961     public:
00962 
00963         _DirectI(const ::ImageIceMod::ImageIce& i, const ::Ice::Current& __current) :
00964             ::IceInternal::Direct(__current),
00965             _m_i(i)
00966         {
00967         }
00968 
00969         virtual ::Ice::DispatchStatus
00970         run(::Ice::Object* object)
00971         {
00972             ::ImageIceMod::ImageShuttle* servant = dynamic_cast< ::ImageIceMod::ImageShuttle*>(object);
00973             if(!servant)
00974             {
00975                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
00976             }
00977             servant->transferImage(_m_i, _current);
00978             return ::Ice::DispatchOK;
00979         }
00980 
00981     private:
00982 
00983         const ::ImageIceMod::ImageIce& _m_i;
00984     };
00985 
00986     ::Ice::Current __current;
00987     __initCurrent(__current, __ImageIceMod__ImageShuttle__transferImage_name, ::Ice::Normal, __context);
00988     try
00989     {
00990         _DirectI __direct(i, __current);
00991         try
00992         {
00993             __direct.servant()->__collocDispatch(__direct);
00994         }
00995         catch(...)
00996         {
00997             __direct.destroy();
00998             throw;
00999         }
01000         __direct.destroy();
01001     }
01002     catch(const ::Ice::SystemException&)
01003     {
01004         throw;
01005     }
01006     catch(const ::IceInternal::LocalExceptionWrapper&)
01007     {
01008         throw;
01009     }
01010     catch(const ::std::exception& __ex)
01011     {
01012         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
01013     }
01014     catch(...)
01015     {
01016         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
01017     }
01018 }
01019 
01020 ::Ice::ObjectPtr
01021 ImageIceMod::ImageShuttle::ice_clone() const
01022 {
01023     throw ::Ice::CloneNotImplementedException(__FILE__, __LINE__);
01024     return 0; // to avoid a warning with some compilers
01025 }
01026 
01027 static const ::std::string __ImageIceMod__ImageShuttle_ids[2] =
01028 {
01029     "::Ice::Object",
01030     "::ImageIceMod::ImageShuttle"
01031 };
01032 
01033 bool
01034 ImageIceMod::ImageShuttle::ice_isA(const ::std::string& _s, const ::Ice::Current&) const
01035 {
01036     return ::std::binary_search(__ImageIceMod__ImageShuttle_ids, __ImageIceMod__ImageShuttle_ids + 2, _s);
01037 }
01038 
01039 ::std::vector< ::std::string>
01040 ImageIceMod::ImageShuttle::ice_ids(const ::Ice::Current&) const
01041 {
01042     return ::std::vector< ::std::string>(&__ImageIceMod__ImageShuttle_ids[0], &__ImageIceMod__ImageShuttle_ids[2]);
01043 }
01044 
01045 const ::std::string&
01046 ImageIceMod::ImageShuttle::ice_id(const ::Ice::Current&) const
01047 {
01048     return __ImageIceMod__ImageShuttle_ids[1];
01049 }
01050 
01051 const ::std::string&
01052 ImageIceMod::ImageShuttle::ice_staticId()
01053 {
01054     return __ImageIceMod__ImageShuttle_ids[1];
01055 }
01056 
01057 ::Ice::DispatchStatus
01058 ImageIceMod::ImageShuttle::___transferImage(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
01059 {
01060     __checkMode(::Ice::Normal, __current.mode);
01061     ::IceInternal::BasicStream* __is = __inS.is();
01062     __is->startReadEncaps();
01063     ::ImageIceMod::ImageIce i;
01064     i.__read(__is);
01065     __is->endReadEncaps();
01066     transferImage(i, __current);
01067     return ::Ice::DispatchOK;
01068 }
01069 
01070 static ::std::string __ImageIceMod__ImageShuttle_all[] =
01071 {
01072     "ice_id",
01073     "ice_ids",
01074     "ice_isA",
01075     "ice_ping",
01076     "transferImage"
01077 };
01078 
01079 ::Ice::DispatchStatus
01080 ImageIceMod::ImageShuttle::__dispatch(::IceInternal::Incoming& in, const ::Ice::Current& current)
01081 {
01082     ::std::pair< ::std::string*, ::std::string*> r = ::std::equal_range(__ImageIceMod__ImageShuttle_all, __ImageIceMod__ImageShuttle_all + 5, current.operation);
01083     if(r.first == r.second)
01084     {
01085         throw ::Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
01086     }
01087 
01088     switch(r.first - __ImageIceMod__ImageShuttle_all)
01089     {
01090         case 0:
01091         {
01092             return ___ice_id(in, current);
01093         }
01094         case 1:
01095         {
01096             return ___ice_ids(in, current);
01097         }
01098         case 2:
01099         {
01100             return ___ice_isA(in, current);
01101         }
01102         case 3:
01103         {
01104             return ___ice_ping(in, current);
01105         }
01106         case 4:
01107         {
01108             return ___transferImage(in, current);
01109         }
01110     }
01111 
01112     assert(false);
01113     throw ::Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
01114 }
01115 
01116 void
01117 ImageIceMod::ImageShuttle::__write(::IceInternal::BasicStream* __os) const
01118 {
01119     __os->writeTypeId(ice_staticId());
01120     __os->startWriteSlice();
01121     __os->endWriteSlice();
01122 #if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug
01123     Object::__write(__os);
01124 #else
01125     ::Ice::Object::__write(__os);
01126 #endif
01127 }
01128 
01129 void
01130 ImageIceMod::ImageShuttle::__read(::IceInternal::BasicStream* __is, bool __rid)
01131 {
01132     if(__rid)
01133     {
01134         ::std::string myId;
01135         __is->readTypeId(myId);
01136     }
01137     __is->startReadSlice();
01138     __is->endReadSlice();
01139 #if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug
01140     Object::__read(__is, true);
01141 #else
01142     ::Ice::Object::__read(__is, true);
01143 #endif
01144 }
01145 
01146 void
01147 ImageIceMod::ImageShuttle::__write(const ::Ice::OutputStreamPtr&) const
01148 {
01149     Ice::MarshalException ex(__FILE__, __LINE__);
01150     ex.reason = "type ImageIceMod::ImageShuttle was not generated with stream support";
01151     throw ex;
01152 }
01153 
01154 void
01155 ImageIceMod::ImageShuttle::__read(const ::Ice::InputStreamPtr&, bool)
01156 {
01157     Ice::MarshalException ex(__FILE__, __LINE__);
01158     ex.reason = "type ImageIceMod::ImageShuttle was not generated with stream support";
01159     throw ex;
01160 }
01161 
01162 void
01163 ImageIceMod::__patch__ImageShuttlePtr(void* __addr, ::Ice::ObjectPtr& v)
01164 {
01165     ::ImageIceMod::ImageShuttlePtr* p = static_cast< ::ImageIceMod::ImageShuttlePtr*>(__addr);
01166     assert(p);
01167     *p = ::ImageIceMod::ImageShuttlePtr::dynamicCast(v);
01168     if(v && !*p)
01169     {
01170         IceInternal::Ex::throwUOE(::ImageIceMod::ImageShuttle::ice_staticId(), v->ice_id());
01171     }
01172 }
01173 
01174 bool
01175 ImageIceMod::operator==(const ::ImageIceMod::ImageShuttle& l, const ::ImageIceMod::ImageShuttle& r)
01176 {
01177     return static_cast<const ::Ice::Object&>(l) == static_cast<const ::Ice::Object&>(r);
01178 }
01179 
01180 bool
01181 ImageIceMod::operator<(const ::ImageIceMod::ImageShuttle& l, const ::ImageIceMod::ImageShuttle& r)
01182 {
01183     return static_cast<const ::Ice::Object&>(l) < static_cast<const ::Ice::Object&>(r);
01184 }
Generated on Sun May 8 08:40:44 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3