00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "ImageIce.h"
00014 #include <IceE/LocalException.h>
00015 #include <IceE/ObjectFactory.h>
00016 #include <IceE/BasicStream.h>
00017 #include <IceE/Iterator.h>
00018
00019 #ifndef ICEE_IGNORE_VERSION
00020 # if ICEE_INT_VERSION / 100 != 103
00021 # error IceE version mismatch!
00022 # endif
00023 # if ICEE_INT_VERSION % 100 < 0
00024 # error IceE patch level mismatch!
00025 # endif
00026 #endif
00027
00028 static const ::std::string __ImageIceMod__ImageShuttle__transferImage_name = "transferImage";
00029
00030 ::Ice::Object* IceInternal::upCast(::ImageIceMod::ImageShuttle* p) { return p; }
00031 ::IceProxy::Ice::Object* IceInternal::upCast(::IceProxy::ImageIceMod::ImageShuttle* p) { return p; }
00032
00033 void
00034 ImageIceMod::__read(::IceInternal::BasicStream* __is, ::ImageIceMod::ImageShuttlePrx& v)
00035 {
00036 ::Ice::ObjectPrx proxy;
00037 __is->read(proxy);
00038 if(!proxy)
00039 {
00040 v = 0;
00041 }
00042 else
00043 {
00044 v = new ::IceProxy::ImageIceMod::ImageShuttle;
00045 v->__copyFrom(proxy);
00046 }
00047 }
00048
00049 bool
00050 ImageIceMod::DimsIce::operator==(const DimsIce& __rhs) const
00051 {
00052 if(this == &__rhs)
00053 {
00054 return true;
00055 }
00056 if(w != __rhs.w)
00057 {
00058 return false;
00059 }
00060 if(h != __rhs.h)
00061 {
00062 return false;
00063 }
00064 return true;
00065 }
00066
00067 bool
00068 ImageIceMod::DimsIce::operator<(const DimsIce& __rhs) const
00069 {
00070 if(this == &__rhs)
00071 {
00072 return false;
00073 }
00074 if(w < __rhs.w)
00075 {
00076 return true;
00077 }
00078 else if(__rhs.w < w)
00079 {
00080 return false;
00081 }
00082 if(h < __rhs.h)
00083 {
00084 return true;
00085 }
00086 else if(__rhs.h < h)
00087 {
00088 return false;
00089 }
00090 return false;
00091 }
00092
00093 void
00094 ImageIceMod::DimsIce::__write(::IceInternal::BasicStream* __os) const
00095 {
00096 __os->write(w);
00097 __os->write(h);
00098 }
00099
00100 void
00101 ImageIceMod::DimsIce::__read(::IceInternal::BasicStream* __is)
00102 {
00103 __is->read(w);
00104 __is->read(h);
00105 }
00106
00107 bool
00108 ImageIceMod::SensorPose::operator==(const SensorPose& __rhs) const
00109 {
00110 if(this == &__rhs)
00111 {
00112 return true;
00113 }
00114 if(val != __rhs.val)
00115 {
00116 return false;
00117 }
00118 if(weight != __rhs.weight)
00119 {
00120 return false;
00121 }
00122 if(decay != __rhs.decay)
00123 {
00124 return false;
00125 }
00126 return true;
00127 }
00128
00129 bool
00130 ImageIceMod::SensorPose::operator<(const SensorPose& __rhs) const
00131 {
00132 if(this == &__rhs)
00133 {
00134 return false;
00135 }
00136 if(val < __rhs.val)
00137 {
00138 return true;
00139 }
00140 else if(__rhs.val < val)
00141 {
00142 return false;
00143 }
00144 if(weight < __rhs.weight)
00145 {
00146 return true;
00147 }
00148 else if(__rhs.weight < weight)
00149 {
00150 return false;
00151 }
00152 if(decay < __rhs.decay)
00153 {
00154 return true;
00155 }
00156 else if(__rhs.decay < decay)
00157 {
00158 return false;
00159 }
00160 return false;
00161 }
00162
00163 void
00164 ImageIceMod::SensorPose::__write(::IceInternal::BasicStream* __os) const
00165 {
00166 __os->write(val);
00167 __os->write(weight);
00168 __os->write(decay);
00169 }
00170
00171 void
00172 ImageIceMod::SensorPose::__read(::IceInternal::BasicStream* __is)
00173 {
00174 __is->read(val);
00175 __is->read(weight);
00176 __is->read(decay);
00177 }
00178
00179 void
00180 ImageIceMod::__write(::IceInternal::BasicStream* __os, ::ImageIceMod::SensorType v)
00181 {
00182 __os->write(static_cast< ::Ice::Byte>(v), 4);
00183 }
00184
00185 void
00186 ImageIceMod::__read(::IceInternal::BasicStream* __is, ::ImageIceMod::SensorType& v)
00187 {
00188 ::Ice::Byte val;
00189 __is->read(val, 4);
00190 v = static_cast< ::ImageIceMod::SensorType>(val);
00191 }
00192
00193 bool
00194 ImageIceMod::SensorVote::operator==(const SensorVote& __rhs) const
00195 {
00196 if(this == &__rhs)
00197 {
00198 return true;
00199 }
00200 if(type != __rhs.type)
00201 {
00202 return false;
00203 }
00204 if(heading != __rhs.heading)
00205 {
00206 return false;
00207 }
00208 if(depth != __rhs.depth)
00209 {
00210 return false;
00211 }
00212 return true;
00213 }
00214
00215 bool
00216 ImageIceMod::SensorVote::operator<(const SensorVote& __rhs) const
00217 {
00218 if(this == &__rhs)
00219 {
00220 return false;
00221 }
00222 if(type < __rhs.type)
00223 {
00224 return true;
00225 }
00226 else if(__rhs.type < type)
00227 {
00228 return false;
00229 }
00230 if(heading < __rhs.heading)
00231 {
00232 return true;
00233 }
00234 else if(__rhs.heading < heading)
00235 {
00236 return false;
00237 }
00238 if(depth < __rhs.depth)
00239 {
00240 return true;
00241 }
00242 else if(__rhs.depth < depth)
00243 {
00244 return false;
00245 }
00246 return false;
00247 }
00248
00249 void
00250 ImageIceMod::SensorVote::__write(::IceInternal::BasicStream* __os) const
00251 {
00252 ::ImageIceMod::__write(__os, type);
00253 heading.__write(__os);
00254 depth.__write(__os);
00255 }
00256
00257 void
00258 ImageIceMod::SensorVote::__read(::IceInternal::BasicStream* __is)
00259 {
00260 ::ImageIceMod::__read(__is, type);
00261 heading.__read(__is);
00262 depth.__read(__is);
00263 }
00264
00265 bool
00266 ImageIceMod::Point2DIce::operator==(const Point2DIce& __rhs) const
00267 {
00268 if(this == &__rhs)
00269 {
00270 return true;
00271 }
00272 if(i != __rhs.i)
00273 {
00274 return false;
00275 }
00276 if(j != __rhs.j)
00277 {
00278 return false;
00279 }
00280 return true;
00281 }
00282
00283 bool
00284 ImageIceMod::Point2DIce::operator<(const Point2DIce& __rhs) const
00285 {
00286 if(this == &__rhs)
00287 {
00288 return false;
00289 }
00290 if(i < __rhs.i)
00291 {
00292 return true;
00293 }
00294 else if(__rhs.i < i)
00295 {
00296 return false;
00297 }
00298 if(j < __rhs.j)
00299 {
00300 return true;
00301 }
00302 else if(__rhs.j < j)
00303 {
00304 return false;
00305 }
00306 return false;
00307 }
00308
00309 void
00310 ImageIceMod::Point2DIce::__write(::IceInternal::BasicStream* __os) const
00311 {
00312 __os->write(i);
00313 __os->write(j);
00314 }
00315
00316 void
00317 ImageIceMod::Point2DIce::__read(::IceInternal::BasicStream* __is)
00318 {
00319 __is->read(i);
00320 __is->read(j);
00321 }
00322
00323 bool
00324 ImageIceMod::Point3DIce::operator==(const Point3DIce& __rhs) const
00325 {
00326 if(this == &__rhs)
00327 {
00328 return true;
00329 }
00330 if(x != __rhs.x)
00331 {
00332 return false;
00333 }
00334 if(y != __rhs.y)
00335 {
00336 return false;
00337 }
00338 if(z != __rhs.z)
00339 {
00340 return false;
00341 }
00342 return true;
00343 }
00344
00345 bool
00346 ImageIceMod::Point3DIce::operator<(const Point3DIce& __rhs) const
00347 {
00348 if(this == &__rhs)
00349 {
00350 return false;
00351 }
00352 if(x < __rhs.x)
00353 {
00354 return true;
00355 }
00356 else if(__rhs.x < x)
00357 {
00358 return false;
00359 }
00360 if(y < __rhs.y)
00361 {
00362 return true;
00363 }
00364 else if(__rhs.y < y)
00365 {
00366 return false;
00367 }
00368 if(z < __rhs.z)
00369 {
00370 return true;
00371 }
00372 else if(__rhs.z < z)
00373 {
00374 return false;
00375 }
00376 return false;
00377 }
00378
00379 void
00380 ImageIceMod::Point3DIce::__write(::IceInternal::BasicStream* __os) const
00381 {
00382 __os->write(x);
00383 __os->write(y);
00384 __os->write(z);
00385 }
00386
00387 void
00388 ImageIceMod::Point3DIce::__read(::IceInternal::BasicStream* __is)
00389 {
00390 __is->read(x);
00391 __is->read(y);
00392 __is->read(z);
00393 }
00394
00395 bool
00396 ImageIceMod::RectangleIce::operator==(const RectangleIce& __rhs) const
00397 {
00398 if(this == &__rhs)
00399 {
00400 return true;
00401 }
00402 if(tl != __rhs.tl)
00403 {
00404 return false;
00405 }
00406 if(br != __rhs.br)
00407 {
00408 return false;
00409 }
00410 return true;
00411 }
00412
00413 bool
00414 ImageIceMod::RectangleIce::operator<(const RectangleIce& __rhs) const
00415 {
00416 if(this == &__rhs)
00417 {
00418 return false;
00419 }
00420 if(tl < __rhs.tl)
00421 {
00422 return true;
00423 }
00424 else if(__rhs.tl < tl)
00425 {
00426 return false;
00427 }
00428 if(br < __rhs.br)
00429 {
00430 return true;
00431 }
00432 else if(__rhs.br < br)
00433 {
00434 return false;
00435 }
00436 return false;
00437 }
00438
00439 void
00440 ImageIceMod::RectangleIce::__write(::IceInternal::BasicStream* __os) const
00441 {
00442 tl.__write(__os);
00443 br.__write(__os);
00444 }
00445
00446 void
00447 ImageIceMod::RectangleIce::__read(::IceInternal::BasicStream* __is)
00448 {
00449 tl.__read(__is);
00450 br.__read(__is);
00451 }
00452
00453 bool
00454 ImageIceMod::QuadrilateralIce::operator==(const QuadrilateralIce& __rhs) const
00455 {
00456 if(this == &__rhs)
00457 {
00458 return true;
00459 }
00460 if(tl != __rhs.tl)
00461 {
00462 return false;
00463 }
00464 if(tr != __rhs.tr)
00465 {
00466 return false;
00467 }
00468 if(bl != __rhs.bl)
00469 {
00470 return false;
00471 }
00472 if(br != __rhs.br)
00473 {
00474 return false;
00475 }
00476 if(center != __rhs.center)
00477 {
00478 return false;
00479 }
00480 if(ratio != __rhs.ratio)
00481 {
00482 return false;
00483 }
00484 if(angle != __rhs.angle)
00485 {
00486 return false;
00487 }
00488 return true;
00489 }
00490
00491 bool
00492 ImageIceMod::QuadrilateralIce::operator<(const QuadrilateralIce& __rhs) const
00493 {
00494 if(this == &__rhs)
00495 {
00496 return false;
00497 }
00498 if(tl < __rhs.tl)
00499 {
00500 return true;
00501 }
00502 else if(__rhs.tl < tl)
00503 {
00504 return false;
00505 }
00506 if(tr < __rhs.tr)
00507 {
00508 return true;
00509 }
00510 else if(__rhs.tr < tr)
00511 {
00512 return false;
00513 }
00514 if(bl < __rhs.bl)
00515 {
00516 return true;
00517 }
00518 else if(__rhs.bl < bl)
00519 {
00520 return false;
00521 }
00522 if(br < __rhs.br)
00523 {
00524 return true;
00525 }
00526 else if(__rhs.br < br)
00527 {
00528 return false;
00529 }
00530 if(center < __rhs.center)
00531 {
00532 return true;
00533 }
00534 else if(__rhs.center < center)
00535 {
00536 return false;
00537 }
00538 if(ratio < __rhs.ratio)
00539 {
00540 return true;
00541 }
00542 else if(__rhs.ratio < ratio)
00543 {
00544 return false;
00545 }
00546 if(angle < __rhs.angle)
00547 {
00548 return true;
00549 }
00550 else if(__rhs.angle < angle)
00551 {
00552 return false;
00553 }
00554 return false;
00555 }
00556
00557 void
00558 ImageIceMod::QuadrilateralIce::__write(::IceInternal::BasicStream* __os) const
00559 {
00560 tl.__write(__os);
00561 tr.__write(__os);
00562 bl.__write(__os);
00563 br.__write(__os);
00564 center.__write(__os);
00565 __os->write(ratio);
00566 __os->write(angle);
00567 }
00568
00569 void
00570 ImageIceMod::QuadrilateralIce::__read(::IceInternal::BasicStream* __is)
00571 {
00572 tl.__read(__is);
00573 tr.__read(__is);
00574 bl.__read(__is);
00575 br.__read(__is);
00576 center.__read(__is);
00577 __is->read(ratio);
00578 __is->read(angle);
00579 }
00580
00581 bool
00582 ImageIceMod::LineIce::operator==(const LineIce& __rhs) const
00583 {
00584 if(this == &__rhs)
00585 {
00586 return true;
00587 }
00588 if(pt1 != __rhs.pt1)
00589 {
00590 return false;
00591 }
00592 if(pt2 != __rhs.pt2)
00593 {
00594 return false;
00595 }
00596 if(angle != __rhs.angle)
00597 {
00598 return false;
00599 }
00600 return true;
00601 }
00602
00603 bool
00604 ImageIceMod::LineIce::operator<(const LineIce& __rhs) const
00605 {
00606 if(this == &__rhs)
00607 {
00608 return false;
00609 }
00610 if(pt1 < __rhs.pt1)
00611 {
00612 return true;
00613 }
00614 else if(__rhs.pt1 < pt1)
00615 {
00616 return false;
00617 }
00618 if(pt2 < __rhs.pt2)
00619 {
00620 return true;
00621 }
00622 else if(__rhs.pt2 < pt2)
00623 {
00624 return false;
00625 }
00626 if(angle < __rhs.angle)
00627 {
00628 return true;
00629 }
00630 else if(__rhs.angle < angle)
00631 {
00632 return false;
00633 }
00634 return false;
00635 }
00636
00637 void
00638 ImageIceMod::LineIce::__write(::IceInternal::BasicStream* __os) const
00639 {
00640 pt1.__write(__os);
00641 pt2.__write(__os);
00642 __os->write(angle);
00643 }
00644
00645 void
00646 ImageIceMod::LineIce::__read(::IceInternal::BasicStream* __is)
00647 {
00648 pt1.__read(__is);
00649 pt2.__read(__is);
00650 __is->read(angle);
00651 }
00652
00653 bool
00654 ImageIceMod::ImageIce::operator==(const ImageIce& __rhs) const
00655 {
00656 if(this == &__rhs)
00657 {
00658 return true;
00659 }
00660 if(data != __rhs.data)
00661 {
00662 return false;
00663 }
00664 if(width != __rhs.width)
00665 {
00666 return false;
00667 }
00668 if(height != __rhs.height)
00669 {
00670 return false;
00671 }
00672 if(pixSize != __rhs.pixSize)
00673 {
00674 return false;
00675 }
00676 return true;
00677 }
00678
00679 bool
00680 ImageIceMod::ImageIce::operator<(const ImageIce& __rhs) const
00681 {
00682 if(this == &__rhs)
00683 {
00684 return false;
00685 }
00686 if(data < __rhs.data)
00687 {
00688 return true;
00689 }
00690 else if(__rhs.data < data)
00691 {
00692 return false;
00693 }
00694 if(width < __rhs.width)
00695 {
00696 return true;
00697 }
00698 else if(__rhs.width < width)
00699 {
00700 return false;
00701 }
00702 if(height < __rhs.height)
00703 {
00704 return true;
00705 }
00706 else if(__rhs.height < height)
00707 {
00708 return false;
00709 }
00710 if(pixSize < __rhs.pixSize)
00711 {
00712 return true;
00713 }
00714 else if(__rhs.pixSize < pixSize)
00715 {
00716 return false;
00717 }
00718 return false;
00719 }
00720
00721 void
00722 ImageIceMod::ImageIce::__write(::IceInternal::BasicStream* __os) const
00723 {
00724 if(data.size() == 0)
00725 {
00726 __os->writeSize(0);
00727 }
00728 else
00729 {
00730 __os->write(&data[0], &data[0] + data.size());
00731 }
00732 __os->write(width);
00733 __os->write(height);
00734 __os->write(pixSize);
00735 }
00736
00737 void
00738 ImageIceMod::ImageIce::__read(::IceInternal::BasicStream* __is)
00739 {
00740 ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*> ___data;
00741 __is->read(___data);
00742 ::std::vector< ::Ice::Byte>(___data.first, ___data.second).swap(data);
00743 __is->read(width);
00744 __is->read(height);
00745 __is->read(pixSize);
00746 }
00747
00748 void
00749 ImageIceMod::__writeImageIceSeq(::IceInternal::BasicStream* __os, const ::ImageIceMod::ImageIce* begin, const ::ImageIceMod::ImageIce* end)
00750 {
00751 ::Ice::Int size = static_cast< ::Ice::Int>(end - begin);
00752 __os->writeSize(size);
00753 for(int i = 0; i < size; ++i)
00754 {
00755 begin[i].__write(__os);
00756 }
00757 }
00758
00759 void
00760 ImageIceMod::__readImageIceSeq(::IceInternal::BasicStream* __is, ::ImageIceMod::ImageIceSeq& v)
00761 {
00762 ::Ice::Int sz;
00763 __is->readSize(sz);
00764 __is->startSeq(sz, 13);
00765 v.resize(sz);
00766 for(int i = 0; i < sz; ++i)
00767 {
00768 v[i].__read(__is);
00769 __is->checkSeq();
00770 __is->endElement();
00771 }
00772 __is->endSeq(sz);
00773 }
00774
00775 static const ::std::string __ImageIceMod__ImageShuttle_ids[2] =
00776 {
00777 "::Ice::Object",
00778 "::ImageIceMod::ImageShuttle"
00779 };
00780
00781 bool
00782 ImageIceMod::ImageShuttle::ice_isA(const ::std::string& _s, const ::Ice::Current&) const
00783 {
00784 return ::std::binary_search(__ImageIceMod__ImageShuttle_ids, __ImageIceMod__ImageShuttle_ids + 2, _s);
00785 }
00786
00787 ::std::vector< ::std::string>
00788 ImageIceMod::ImageShuttle::ice_ids(const ::Ice::Current&) const
00789 {
00790 return ::std::vector< ::std::string>(&__ImageIceMod__ImageShuttle_ids[0], &__ImageIceMod__ImageShuttle_ids[2]);
00791 }
00792
00793 const ::std::string&
00794 ImageIceMod::ImageShuttle::ice_id(const ::Ice::Current&) const
00795 {
00796 return __ImageIceMod__ImageShuttle_ids[1];
00797 }
00798
00799 const ::std::string&
00800 ImageIceMod::ImageShuttle::ice_staticId()
00801 {
00802 return __ImageIceMod__ImageShuttle_ids[1];
00803 }
00804
00805 #ifndef ICEE_PURE_CLIENT
00806 ::Ice::DispatchStatus
00807 ImageIceMod::ImageShuttle::___transferImage(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
00808 {
00809 __checkMode(::Ice::Normal, __current.mode);
00810 ::IceInternal::BasicStream* __is = __inS.is();
00811 ::ImageIceMod::ImageIce i;
00812 i.__read(__is);
00813 transferImage(i, __current);
00814 return ::Ice::DispatchOK;
00815 }
00816 #endif // ICEE_PURE_CLIENT
00817
00818 #ifndef ICEE_PURE_CLIENT
00819 static ::std::string __ImageIceMod__ImageShuttle_all[] =
00820 {
00821 "ice_id",
00822 "ice_ids",
00823 "ice_isA",
00824 "ice_ping",
00825 "transferImage"
00826 };
00827
00828 ::Ice::DispatchStatus
00829 ImageIceMod::ImageShuttle::__dispatch(::IceInternal::Incoming& in, const ::Ice::Current& current)
00830 {
00831 ::std::pair< ::std::string*, ::std::string*> r = ::std::equal_range(__ImageIceMod__ImageShuttle_all, __ImageIceMod__ImageShuttle_all + 5, current.operation);
00832 if(r.first == r.second)
00833 {
00834 throw Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
00835 }
00836
00837 switch(r.first - __ImageIceMod__ImageShuttle_all)
00838 {
00839 case 0:
00840 {
00841 return ___ice_id(in, current);
00842 }
00843 case 1:
00844 {
00845 return ___ice_ids(in, current);
00846 }
00847 case 2:
00848 {
00849 return ___ice_isA(in, current);
00850 }
00851 case 3:
00852 {
00853 return ___ice_ping(in, current);
00854 }
00855 case 4:
00856 {
00857 return ___transferImage(in, current);
00858 }
00859 }
00860
00861 assert(false);
00862 throw Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
00863 }
00864 #endif // ICEE_PURE_CLIENT
00865
00866 void
00867 ImageIceMod::ImageShuttle::__write(::IceInternal::BasicStream* __os) const
00868 {
00869 __os->writeTypeId(ice_staticId());
00870 __os->startWriteSlice();
00871 __os->endWriteSlice();
00872 ::Ice::Object::__write(__os);
00873 }
00874
00875 void
00876 ImageIceMod::ImageShuttle::__read(::IceInternal::BasicStream* __is, bool __rid)
00877 {
00878 if(__rid)
00879 {
00880 ::std::string myId;
00881 __is->readTypeId(myId);
00882 }
00883 __is->startReadSlice();
00884 __is->endReadSlice();
00885 ::Ice::Object::__read(__is, true);
00886 }
00887
00888
00889 bool
00890 ImageIceMod::operator==(const ::ImageIceMod::ImageShuttle& l, const ::ImageIceMod::ImageShuttle& r)
00891 {
00892 return static_cast<const ::Ice::Object&>(l) == static_cast<const ::Ice::Object&>(r);
00893 }
00894
00895 bool
00896 ImageIceMod::operator<(const ::ImageIceMod::ImageShuttle& l, const ::ImageIceMod::ImageShuttle& r)
00897 {
00898 return static_cast<const ::Ice::Object&>(l) < static_cast<const ::Ice::Object&>(r);
00899 }
00900
00901 void
00902 ImageIceMod::__patch__ImageShuttlePtr(void* __addr, ::Ice::ObjectPtr& v)
00903 {
00904 ::ImageIceMod::ImageShuttlePtr* p = static_cast< ::ImageIceMod::ImageShuttlePtr*>(__addr);
00905 assert(p);
00906 *p = ::ImageIceMod::ImageShuttlePtr::dynamicCast(v);
00907 if(v && !*p)
00908 {
00909 IceInternal::Ex::throwUOE(::ImageIceMod::ImageShuttle::ice_staticId(), v->ice_id());
00910 }
00911 }
00912
00913 void
00914 IceProxy::ImageIceMod::ImageShuttle::transferImage(const ::ImageIceMod::ImageIce& i, const ::Ice::Context* __ctx)
00915 {
00916 int __cnt = 0;
00917 while(true)
00918 {
00919 ::IceInternal::RequestHandlerPtr __handler;
00920 try
00921 {
00922 __handler = __getRequestHandler();
00923 ::IceInternal::Outgoing __outS(__handler.get(), _reference.get(), __ImageIceMod__ImageShuttle__transferImage_name, ::Ice::Normal, __ctx);
00924 try
00925 {
00926 ::IceInternal::BasicStream* __os = __outS.os();
00927 i.__write(__os);
00928 }
00929 catch(const ::Ice::LocalException& __ex)
00930 {
00931 __outS.abort(__ex);
00932 }
00933 bool __ok = __outS.invoke();
00934 try
00935 {
00936 if(!__ok)
00937 {
00938 __outS.is()->throwUnknownUserException();
00939 }
00940 }
00941 catch(const ::Ice::LocalException& __ex)
00942 {
00943 throw ::IceInternal::LocalExceptionWrapper(__ex, false);
00944 }
00945 #if defined(_MSC_VER) && defined(_M_ARM) // ARM bug.
00946 catch(...)
00947 {
00948 throw;
00949 }
00950 #endif
00951 return;
00952 }
00953 catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00954 {
00955 __handleExceptionWrapper(__handler, __ex);
00956 }
00957 catch(const ::Ice::LocalException& __ex)
00958 {
00959 __handleException(__handler, __ex, __cnt);
00960 }
00961 #if defined(_MSC_VER) && defined(_M_ARM) // ARM bug.
00962 catch(...)
00963 {
00964 throw;
00965 }
00966 #endif
00967 }
00968 }
00969
00970 const ::std::string&
00971 IceProxy::ImageIceMod::ImageShuttle::ice_staticId()
00972 {
00973 return __ImageIceMod__ImageShuttle_ids[1];
00974 }
00975
00976 ::IceProxy::Ice::Object*
00977 IceProxy::ImageIceMod::ImageShuttle::__newInstance() const
00978 {
00979 return new ImageShuttle;
00980 }