Scorbot.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 `Scorbot.ice'
00012 
00013 #include <Scorbot.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 __Robots__ScorbotIce__getIK_name = "getIK";
00033 
00034 static const ::std::string __Robots__ScorbotIce__getEFpos_name = "getEFpos";
00035 
00036 static const ::std::string __Robots__ScorbotIce__setEFPos_name = "setEFPos";
00037 
00038 static const ::std::string __Robots__ScorbotIce__setMotor_name = "setMotor";
00039 
00040 static const ::std::string __Robots__ScorbotIce__getPWM_name = "getPWM";
00041 
00042 static const ::std::string __Robots__ScorbotIce__setJointPos_name = "setJointPos";
00043 
00044 static const ::std::string __Robots__ScorbotIce__getJointPos_name = "getJointPos";
00045 
00046 static const ::std::string __Robots__ScorbotIce__getEncoderAng_name = "getEncoderAng";
00047 
00048 static const ::std::string __Robots__ScorbotIce__resetEncoders_name = "resetEncoders";
00049 
00050 static const ::std::string __Robots__ScorbotIce__stopAllMotors_name = "stopAllMotors";
00051 
00052 static const ::std::string __Robots__ScorbotIce__setSafety_name = "setSafety";
00053 
00054 static const ::std::string __Robots__ScorbotIce__getMovementTime_name = "getMovementTime";
00055 
00056 static const ::std::string __Robots__ScorbotIce__homeMotor_name = "homeMotor";
00057 
00058 static const ::std::string __Robots__ScorbotIce__homeMotors_name = "homeMotors";
00059 
00060 static const ::std::string __Robots__ScorbotIce__getMicroSwitch_name = "getMicroSwitch";
00061 
00062 static const ::std::string __Robots__ScorbotIce__getMicroSwitchMotor_name = "getMicroSwitchMotor";
00063 
00064 static const ::std::string __Robots__ScorbotIce__setArmPos_name = "setArmPos";
00065 
00066 static const ::std::string __Robots__ScorbotIce__getArmPos_name = "getArmPos";
00067 
00068 static const ::std::string __Robots__ScorbotIce__motorsOn_name = "motorsOn";
00069 
00070 static const ::std::string __Robots__ScorbotIce__motorsOff_name = "motorsOff";
00071 
00072 static const ::std::string __Robots__ScorbotIce__shutdown_name = "shutdown";
00073 
00074 static const ::std::string __Robots__ScorbotIce__enc2ang_name = "enc2ang";
00075 
00076 static const ::std::string __Robots__ScorbotIce__ang2enc_name = "ang2enc";
00077 
00078 static const ::std::string __Robots__ScorbotIce__enc2mm_name = "enc2mm";
00079 
00080 static const ::std::string __Robots__ScorbotIce__mm2enc_name = "mm2enc";
00081 
00082 ::Ice::Object* IceInternal::upCast(::Robots::ScorbotIce* p) { return p; }
00083 ::IceProxy::Ice::Object* IceInternal::upCast(::IceProxy::Robots::ScorbotIce* p) { return p; }
00084 
00085 void
00086 Robots::__read(::IceInternal::BasicStream* __is, ::Robots::ScorbotIcePrx& v)
00087 {
00088     ::Ice::ObjectPrx proxy;
00089     __is->read(proxy);
00090     if(!proxy)
00091     {
00092         v = 0;
00093     }
00094     else
00095     {
00096         v = new ::IceProxy::Robots::ScorbotIce;
00097         v->__copyFrom(proxy);
00098     }
00099 }
00100 
00101 void
00102 Robots::__write(::IceInternal::BasicStream* __os, ::Robots::JOINTS v)
00103 {
00104     __os->write(static_cast< ::Ice::Byte>(v), 10);
00105 }
00106 
00107 void
00108 Robots::__read(::IceInternal::BasicStream* __is, ::Robots::JOINTS& v)
00109 {
00110     ::Ice::Byte val;
00111     __is->read(val, 10);
00112     v = static_cast< ::Robots::JOINTS>(val);
00113 }
00114 
00115 bool
00116 Robots::ArmPos::operator==(const ArmPos& __rhs) const
00117 {
00118     if(this == &__rhs)
00119     {
00120         return true;
00121     }
00122     if(base != __rhs.base)
00123     {
00124         return false;
00125     }
00126     if(shoulder != __rhs.shoulder)
00127     {
00128         return false;
00129     }
00130     if(elbow != __rhs.elbow)
00131     {
00132         return false;
00133     }
00134     if(wrist1 != __rhs.wrist1)
00135     {
00136         return false;
00137     }
00138     if(wrist2 != __rhs.wrist2)
00139     {
00140         return false;
00141     }
00142     if(gripper != __rhs.gripper)
00143     {
00144         return false;
00145     }
00146     if(ex1 != __rhs.ex1)
00147     {
00148         return false;
00149     }
00150     if(ex2 != __rhs.ex2)
00151     {
00152         return false;
00153     }
00154     if(wristroll != __rhs.wristroll)
00155     {
00156         return false;
00157     }
00158     if(wristpitch != __rhs.wristpitch)
00159     {
00160         return false;
00161     }
00162     if(duration != __rhs.duration)
00163     {
00164         return false;
00165     }
00166     return true;
00167 }
00168 
00169 bool
00170 Robots::ArmPos::operator<(const ArmPos& __rhs) const
00171 {
00172     if(this == &__rhs)
00173     {
00174         return false;
00175     }
00176     if(base < __rhs.base)
00177     {
00178         return true;
00179     }
00180     else if(__rhs.base < base)
00181     {
00182         return false;
00183     }
00184     if(shoulder < __rhs.shoulder)
00185     {
00186         return true;
00187     }
00188     else if(__rhs.shoulder < shoulder)
00189     {
00190         return false;
00191     }
00192     if(elbow < __rhs.elbow)
00193     {
00194         return true;
00195     }
00196     else if(__rhs.elbow < elbow)
00197     {
00198         return false;
00199     }
00200     if(wrist1 < __rhs.wrist1)
00201     {
00202         return true;
00203     }
00204     else if(__rhs.wrist1 < wrist1)
00205     {
00206         return false;
00207     }
00208     if(wrist2 < __rhs.wrist2)
00209     {
00210         return true;
00211     }
00212     else if(__rhs.wrist2 < wrist2)
00213     {
00214         return false;
00215     }
00216     if(gripper < __rhs.gripper)
00217     {
00218         return true;
00219     }
00220     else if(__rhs.gripper < gripper)
00221     {
00222         return false;
00223     }
00224     if(ex1 < __rhs.ex1)
00225     {
00226         return true;
00227     }
00228     else if(__rhs.ex1 < ex1)
00229     {
00230         return false;
00231     }
00232     if(ex2 < __rhs.ex2)
00233     {
00234         return true;
00235     }
00236     else if(__rhs.ex2 < ex2)
00237     {
00238         return false;
00239     }
00240     if(wristroll < __rhs.wristroll)
00241     {
00242         return true;
00243     }
00244     else if(__rhs.wristroll < wristroll)
00245     {
00246         return false;
00247     }
00248     if(wristpitch < __rhs.wristpitch)
00249     {
00250         return true;
00251     }
00252     else if(__rhs.wristpitch < wristpitch)
00253     {
00254         return false;
00255     }
00256     if(duration < __rhs.duration)
00257     {
00258         return true;
00259     }
00260     else if(__rhs.duration < duration)
00261     {
00262         return false;
00263     }
00264     return false;
00265 }
00266 
00267 void
00268 Robots::ArmPos::__write(::IceInternal::BasicStream* __os) const
00269 {
00270     __os->write(base);
00271     __os->write(shoulder);
00272     __os->write(elbow);
00273     __os->write(wrist1);
00274     __os->write(wrist2);
00275     __os->write(gripper);
00276     __os->write(ex1);
00277     __os->write(ex2);
00278     __os->write(wristroll);
00279     __os->write(wristpitch);
00280     __os->write(duration);
00281 }
00282 
00283 void
00284 Robots::ArmPos::__read(::IceInternal::BasicStream* __is)
00285 {
00286     __is->read(base);
00287     __is->read(shoulder);
00288     __is->read(elbow);
00289     __is->read(wrist1);
00290     __is->read(wrist2);
00291     __is->read(gripper);
00292     __is->read(ex1);
00293     __is->read(ex2);
00294     __is->read(wristroll);
00295     __is->read(wristpitch);
00296     __is->read(duration);
00297 }
00298 
00299 ::Robots::ArmPos
00300 IceProxy::Robots::ScorbotIce::getIK(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __ctx)
00301 {
00302     int __cnt = 0;
00303     while(true)
00304     {
00305         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00306         try
00307         {
00308 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00309             IceUtil::DummyBCC dummy;
00310 #endif
00311             __checkTwowayOnly(__Robots__ScorbotIce__getIK_name);
00312             __delBase = __getDelegate(false);
00313             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00314             return __del->getIK(x, y, z, __ctx);
00315         }
00316         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00317         {
00318             __handleExceptionWrapper(__delBase, __ex, 0);
00319         }
00320         catch(const ::Ice::LocalException& __ex)
00321         {
00322             __handleException(__delBase, __ex, 0, __cnt);
00323         }
00324     }
00325 }
00326 
00327 bool
00328 IceProxy::Robots::ScorbotIce::getEFpos(::Ice::Float& x, ::Ice::Float& y, ::Ice::Float& z, const ::Ice::Context* __ctx)
00329 {
00330     int __cnt = 0;
00331     while(true)
00332     {
00333         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00334         try
00335         {
00336 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00337             IceUtil::DummyBCC dummy;
00338 #endif
00339             __checkTwowayOnly(__Robots__ScorbotIce__getEFpos_name);
00340             __delBase = __getDelegate(false);
00341             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00342             return __del->getEFpos(x, y, z, __ctx);
00343         }
00344         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00345         {
00346             __handleExceptionWrapper(__delBase, __ex, 0);
00347         }
00348         catch(const ::Ice::LocalException& __ex)
00349         {
00350             __handleException(__delBase, __ex, 0, __cnt);
00351         }
00352     }
00353 }
00354 
00355 bool
00356 IceProxy::Robots::ScorbotIce::setEFPos(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __ctx)
00357 {
00358     int __cnt = 0;
00359     while(true)
00360     {
00361         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00362         try
00363         {
00364 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00365             IceUtil::DummyBCC dummy;
00366 #endif
00367             __checkTwowayOnly(__Robots__ScorbotIce__setEFPos_name);
00368             __delBase = __getDelegate(false);
00369             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00370             return __del->setEFPos(x, y, z, __ctx);
00371         }
00372         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00373         {
00374             __handleExceptionWrapper(__delBase, __ex, 0);
00375         }
00376         catch(const ::Ice::LocalException& __ex)
00377         {
00378             __handleException(__delBase, __ex, 0, __cnt);
00379         }
00380     }
00381 }
00382 
00383 bool
00384 IceProxy::Robots::ScorbotIce::setMotor(::Robots::JOINTS joint, ::Ice::Int pwm, const ::Ice::Context* __ctx)
00385 {
00386     int __cnt = 0;
00387     while(true)
00388     {
00389         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00390         try
00391         {
00392 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00393             IceUtil::DummyBCC dummy;
00394 #endif
00395             __checkTwowayOnly(__Robots__ScorbotIce__setMotor_name);
00396             __delBase = __getDelegate(false);
00397             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00398             return __del->setMotor(joint, pwm, __ctx);
00399         }
00400         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00401         {
00402             __handleExceptionWrapper(__delBase, __ex, 0);
00403         }
00404         catch(const ::Ice::LocalException& __ex)
00405         {
00406             __handleException(__delBase, __ex, 0, __cnt);
00407         }
00408     }
00409 }
00410 
00411 ::Ice::Int
00412 IceProxy::Robots::ScorbotIce::getPWM(::Robots::JOINTS j, const ::Ice::Context* __ctx)
00413 {
00414     int __cnt = 0;
00415     while(true)
00416     {
00417         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00418         try
00419         {
00420 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00421             IceUtil::DummyBCC dummy;
00422 #endif
00423             __checkTwowayOnly(__Robots__ScorbotIce__getPWM_name);
00424             __delBase = __getDelegate(false);
00425             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00426             return __del->getPWM(j, __ctx);
00427         }
00428         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00429         {
00430             __handleExceptionWrapper(__delBase, __ex, 0);
00431         }
00432         catch(const ::Ice::LocalException& __ex)
00433         {
00434             __handleException(__delBase, __ex, 0, __cnt);
00435         }
00436     }
00437 }
00438 
00439 bool
00440 IceProxy::Robots::ScorbotIce::setJointPos(::Robots::JOINTS joint, ::Ice::Int pos, const ::Ice::Context* __ctx)
00441 {
00442     int __cnt = 0;
00443     while(true)
00444     {
00445         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00446         try
00447         {
00448 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00449             IceUtil::DummyBCC dummy;
00450 #endif
00451             __checkTwowayOnly(__Robots__ScorbotIce__setJointPos_name);
00452             __delBase = __getDelegate(false);
00453             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00454             return __del->setJointPos(joint, pos, __ctx);
00455         }
00456         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00457         {
00458             __handleExceptionWrapper(__delBase, __ex, 0);
00459         }
00460         catch(const ::Ice::LocalException& __ex)
00461         {
00462             __handleException(__delBase, __ex, 0, __cnt);
00463         }
00464     }
00465 }
00466 
00467 ::Ice::Int
00468 IceProxy::Robots::ScorbotIce::getJointPos(::Robots::JOINTS joint, const ::Ice::Context* __ctx)
00469 {
00470     int __cnt = 0;
00471     while(true)
00472     {
00473         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00474         try
00475         {
00476 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00477             IceUtil::DummyBCC dummy;
00478 #endif
00479             __checkTwowayOnly(__Robots__ScorbotIce__getJointPos_name);
00480             __delBase = __getDelegate(false);
00481             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00482             return __del->getJointPos(joint, __ctx);
00483         }
00484         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00485         {
00486             __handleExceptionWrapper(__delBase, __ex, 0);
00487         }
00488         catch(const ::Ice::LocalException& __ex)
00489         {
00490             __handleException(__delBase, __ex, 0, __cnt);
00491         }
00492     }
00493 }
00494 
00495 ::Ice::Float
00496 IceProxy::Robots::ScorbotIce::getEncoderAng(::Robots::JOINTS joint, const ::Ice::Context* __ctx)
00497 {
00498     int __cnt = 0;
00499     while(true)
00500     {
00501         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00502         try
00503         {
00504 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00505             IceUtil::DummyBCC dummy;
00506 #endif
00507             __checkTwowayOnly(__Robots__ScorbotIce__getEncoderAng_name);
00508             __delBase = __getDelegate(false);
00509             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00510             return __del->getEncoderAng(joint, __ctx);
00511         }
00512         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00513         {
00514             __handleExceptionWrapper(__delBase, __ex, 0);
00515         }
00516         catch(const ::Ice::LocalException& __ex)
00517         {
00518             __handleException(__delBase, __ex, 0, __cnt);
00519         }
00520     }
00521 }
00522 
00523 void
00524 IceProxy::Robots::ScorbotIce::resetEncoders(const ::Ice::Context* __ctx)
00525 {
00526     int __cnt = 0;
00527     while(true)
00528     {
00529         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00530         try
00531         {
00532 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00533             IceUtil::DummyBCC dummy;
00534 #endif
00535             __delBase = __getDelegate(false);
00536             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00537             __del->resetEncoders(__ctx);
00538             return;
00539         }
00540         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00541         {
00542             __handleExceptionWrapper(__delBase, __ex, 0);
00543         }
00544         catch(const ::Ice::LocalException& __ex)
00545         {
00546             __handleException(__delBase, __ex, 0, __cnt);
00547         }
00548     }
00549 }
00550 
00551 void
00552 IceProxy::Robots::ScorbotIce::stopAllMotors(const ::Ice::Context* __ctx)
00553 {
00554     int __cnt = 0;
00555     while(true)
00556     {
00557         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00558         try
00559         {
00560 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00561             IceUtil::DummyBCC dummy;
00562 #endif
00563             __delBase = __getDelegate(false);
00564             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00565             __del->stopAllMotors(__ctx);
00566             return;
00567         }
00568         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00569         {
00570             __handleExceptionWrapper(__delBase, __ex, 0);
00571         }
00572         catch(const ::Ice::LocalException& __ex)
00573         {
00574             __handleException(__delBase, __ex, 0, __cnt);
00575         }
00576     }
00577 }
00578 
00579 void
00580 IceProxy::Robots::ScorbotIce::setSafety(bool val, const ::Ice::Context* __ctx)
00581 {
00582     int __cnt = 0;
00583     while(true)
00584     {
00585         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00586         try
00587         {
00588 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00589             IceUtil::DummyBCC dummy;
00590 #endif
00591             __delBase = __getDelegate(false);
00592             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00593             __del->setSafety(val, __ctx);
00594             return;
00595         }
00596         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00597         {
00598             __handleExceptionWrapper(__delBase, __ex, 0);
00599         }
00600         catch(const ::Ice::LocalException& __ex)
00601         {
00602             __handleException(__delBase, __ex, 0, __cnt);
00603         }
00604     }
00605 }
00606 
00607 ::Ice::Int
00608 IceProxy::Robots::ScorbotIce::getMovementTime(const ::Ice::Context* __ctx)
00609 {
00610     int __cnt = 0;
00611     while(true)
00612     {
00613         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00614         try
00615         {
00616 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00617             IceUtil::DummyBCC dummy;
00618 #endif
00619             __checkTwowayOnly(__Robots__ScorbotIce__getMovementTime_name);
00620             __delBase = __getDelegate(false);
00621             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00622             return __del->getMovementTime(__ctx);
00623         }
00624         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00625         {
00626             __handleExceptionWrapper(__delBase, __ex, 0);
00627         }
00628         catch(const ::Ice::LocalException& __ex)
00629         {
00630             __handleException(__delBase, __ex, 0, __cnt);
00631         }
00632     }
00633 }
00634 
00635 void
00636 IceProxy::Robots::ScorbotIce::homeMotor(::Robots::JOINTS joint, ::Ice::Int LimitSeekSpeed, ::Ice::Int MSJumpSpeed, ::Ice::Float MSJumpDelay, ::Ice::Int MSSeekSpeed, bool MSStopCondition, bool checkMS, const ::Ice::Context* __ctx)
00637 {
00638     int __cnt = 0;
00639     while(true)
00640     {
00641         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00642         try
00643         {
00644 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00645             IceUtil::DummyBCC dummy;
00646 #endif
00647             __delBase = __getDelegate(false);
00648             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00649             __del->homeMotor(joint, LimitSeekSpeed, MSJumpSpeed, MSJumpDelay, MSSeekSpeed, MSStopCondition, checkMS, __ctx);
00650             return;
00651         }
00652         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00653         {
00654             __handleExceptionWrapper(__delBase, __ex, 0);
00655         }
00656         catch(const ::Ice::LocalException& __ex)
00657         {
00658             __handleException(__delBase, __ex, 0, __cnt);
00659         }
00660     }
00661 }
00662 
00663 void
00664 IceProxy::Robots::ScorbotIce::homeMotors(const ::Ice::Context* __ctx)
00665 {
00666     int __cnt = 0;
00667     while(true)
00668     {
00669         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00670         try
00671         {
00672 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00673             IceUtil::DummyBCC dummy;
00674 #endif
00675             __delBase = __getDelegate(false);
00676             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00677             __del->homeMotors(__ctx);
00678             return;
00679         }
00680         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00681         {
00682             __handleExceptionWrapper(__delBase, __ex, 0);
00683         }
00684         catch(const ::Ice::LocalException& __ex)
00685         {
00686             __handleException(__delBase, __ex, 0, __cnt);
00687         }
00688     }
00689 }
00690 
00691 ::Ice::Int
00692 IceProxy::Robots::ScorbotIce::getMicroSwitch(const ::Ice::Context* __ctx)
00693 {
00694     int __cnt = 0;
00695     while(true)
00696     {
00697         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00698         try
00699         {
00700 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00701             IceUtil::DummyBCC dummy;
00702 #endif
00703             __checkTwowayOnly(__Robots__ScorbotIce__getMicroSwitch_name);
00704             __delBase = __getDelegate(false);
00705             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00706             return __del->getMicroSwitch(__ctx);
00707         }
00708         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00709         {
00710             __handleExceptionWrapper(__delBase, __ex, 0);
00711         }
00712         catch(const ::Ice::LocalException& __ex)
00713         {
00714             __handleException(__delBase, __ex, 0, __cnt);
00715         }
00716     }
00717 }
00718 
00719 ::Ice::Int
00720 IceProxy::Robots::ScorbotIce::getMicroSwitchMotor(::Robots::JOINTS m, const ::Ice::Context* __ctx)
00721 {
00722     int __cnt = 0;
00723     while(true)
00724     {
00725         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00726         try
00727         {
00728 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00729             IceUtil::DummyBCC dummy;
00730 #endif
00731             __checkTwowayOnly(__Robots__ScorbotIce__getMicroSwitchMotor_name);
00732             __delBase = __getDelegate(false);
00733             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00734             return __del->getMicroSwitchMotor(m, __ctx);
00735         }
00736         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00737         {
00738             __handleExceptionWrapper(__delBase, __ex, 0);
00739         }
00740         catch(const ::Ice::LocalException& __ex)
00741         {
00742             __handleException(__delBase, __ex, 0, __cnt);
00743         }
00744     }
00745 }
00746 
00747 bool
00748 IceProxy::Robots::ScorbotIce::setArmPos(const ::Robots::ArmPos& pos, const ::Ice::Context* __ctx)
00749 {
00750     int __cnt = 0;
00751     while(true)
00752     {
00753         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00754         try
00755         {
00756 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00757             IceUtil::DummyBCC dummy;
00758 #endif
00759             __checkTwowayOnly(__Robots__ScorbotIce__setArmPos_name);
00760             __delBase = __getDelegate(false);
00761             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00762             return __del->setArmPos(pos, __ctx);
00763         }
00764         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00765         {
00766             __handleExceptionWrapper(__delBase, __ex, 0);
00767         }
00768         catch(const ::Ice::LocalException& __ex)
00769         {
00770             __handleException(__delBase, __ex, 0, __cnt);
00771         }
00772     }
00773 }
00774 
00775 ::Robots::ArmPos
00776 IceProxy::Robots::ScorbotIce::getArmPos(const ::Ice::Context* __ctx)
00777 {
00778     int __cnt = 0;
00779     while(true)
00780     {
00781         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00782         try
00783         {
00784 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00785             IceUtil::DummyBCC dummy;
00786 #endif
00787             __checkTwowayOnly(__Robots__ScorbotIce__getArmPos_name);
00788             __delBase = __getDelegate(false);
00789             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00790             return __del->getArmPos(__ctx);
00791         }
00792         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00793         {
00794             __handleExceptionWrapper(__delBase, __ex, 0);
00795         }
00796         catch(const ::Ice::LocalException& __ex)
00797         {
00798             __handleException(__delBase, __ex, 0, __cnt);
00799         }
00800     }
00801 }
00802 
00803 void
00804 IceProxy::Robots::ScorbotIce::motorsOn(const ::Ice::Context* __ctx)
00805 {
00806     int __cnt = 0;
00807     while(true)
00808     {
00809         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00810         try
00811         {
00812 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00813             IceUtil::DummyBCC dummy;
00814 #endif
00815             __delBase = __getDelegate(false);
00816             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00817             __del->motorsOn(__ctx);
00818             return;
00819         }
00820         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00821         {
00822             __handleExceptionWrapper(__delBase, __ex, 0);
00823         }
00824         catch(const ::Ice::LocalException& __ex)
00825         {
00826             __handleException(__delBase, __ex, 0, __cnt);
00827         }
00828     }
00829 }
00830 
00831 void
00832 IceProxy::Robots::ScorbotIce::motorsOff(const ::Ice::Context* __ctx)
00833 {
00834     int __cnt = 0;
00835     while(true)
00836     {
00837         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00838         try
00839         {
00840 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00841             IceUtil::DummyBCC dummy;
00842 #endif
00843             __delBase = __getDelegate(false);
00844             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00845             __del->motorsOff(__ctx);
00846             return;
00847         }
00848         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00849         {
00850             __handleExceptionWrapper(__delBase, __ex, 0);
00851         }
00852         catch(const ::Ice::LocalException& __ex)
00853         {
00854             __handleException(__delBase, __ex, 0, __cnt);
00855         }
00856     }
00857 }
00858 
00859 void
00860 IceProxy::Robots::ScorbotIce::shutdown(const ::Ice::Context* __ctx)
00861 {
00862     int __cnt = 0;
00863     while(true)
00864     {
00865         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00866         try
00867         {
00868 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00869             IceUtil::DummyBCC dummy;
00870 #endif
00871             __delBase = __getDelegate(false);
00872             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00873             __del->shutdown(__ctx);
00874             return;
00875         }
00876         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00877         {
00878             __handleExceptionWrapper(__delBase, __ex, 0);
00879         }
00880         catch(const ::Ice::LocalException& __ex)
00881         {
00882             __handleException(__delBase, __ex, 0, __cnt);
00883         }
00884     }
00885 }
00886 
00887 ::Ice::Double
00888 IceProxy::Robots::ScorbotIce::enc2ang(::Ice::Int encoderTicks, const ::Ice::Context* __ctx)
00889 {
00890     int __cnt = 0;
00891     while(true)
00892     {
00893         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00894         try
00895         {
00896 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00897             IceUtil::DummyBCC dummy;
00898 #endif
00899             __checkTwowayOnly(__Robots__ScorbotIce__enc2ang_name);
00900             __delBase = __getDelegate(false);
00901             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00902             return __del->enc2ang(encoderTicks, __ctx);
00903         }
00904         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00905         {
00906             __handleExceptionWrapper(__delBase, __ex, 0);
00907         }
00908         catch(const ::Ice::LocalException& __ex)
00909         {
00910             __handleException(__delBase, __ex, 0, __cnt);
00911         }
00912     }
00913 }
00914 
00915 ::Ice::Int
00916 IceProxy::Robots::ScorbotIce::ang2enc(::Ice::Double degrees, const ::Ice::Context* __ctx)
00917 {
00918     int __cnt = 0;
00919     while(true)
00920     {
00921         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00922         try
00923         {
00924 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00925             IceUtil::DummyBCC dummy;
00926 #endif
00927             __checkTwowayOnly(__Robots__ScorbotIce__ang2enc_name);
00928             __delBase = __getDelegate(false);
00929             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00930             return __del->ang2enc(degrees, __ctx);
00931         }
00932         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00933         {
00934             __handleExceptionWrapper(__delBase, __ex, 0);
00935         }
00936         catch(const ::Ice::LocalException& __ex)
00937         {
00938             __handleException(__delBase, __ex, 0, __cnt);
00939         }
00940     }
00941 }
00942 
00943 ::Ice::Double
00944 IceProxy::Robots::ScorbotIce::enc2mm(::Ice::Int encoderTicks, const ::Ice::Context* __ctx)
00945 {
00946     int __cnt = 0;
00947     while(true)
00948     {
00949         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00950         try
00951         {
00952 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00953             IceUtil::DummyBCC dummy;
00954 #endif
00955             __checkTwowayOnly(__Robots__ScorbotIce__enc2mm_name);
00956             __delBase = __getDelegate(false);
00957             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00958             return __del->enc2mm(encoderTicks, __ctx);
00959         }
00960         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00961         {
00962             __handleExceptionWrapper(__delBase, __ex, 0);
00963         }
00964         catch(const ::Ice::LocalException& __ex)
00965         {
00966             __handleException(__delBase, __ex, 0, __cnt);
00967         }
00968     }
00969 }
00970 
00971 ::Ice::Int
00972 IceProxy::Robots::ScorbotIce::mm2enc(::Ice::Double mm, const ::Ice::Context* __ctx)
00973 {
00974     int __cnt = 0;
00975     while(true)
00976     {
00977         ::IceInternal::Handle< ::IceDelegate::Ice::Object> __delBase;
00978         try
00979         {
00980 #if defined(__BCPLUSPLUS__) && (__BCPLUSPLUS__ >= 0x0600) // C++Builder 2009 compiler bug
00981             IceUtil::DummyBCC dummy;
00982 #endif
00983             __checkTwowayOnly(__Robots__ScorbotIce__mm2enc_name);
00984             __delBase = __getDelegate(false);
00985             ::IceDelegate::Robots::ScorbotIce* __del = dynamic_cast< ::IceDelegate::Robots::ScorbotIce*>(__delBase.get());
00986             return __del->mm2enc(mm, __ctx);
00987         }
00988         catch(const ::IceInternal::LocalExceptionWrapper& __ex)
00989         {
00990             __handleExceptionWrapper(__delBase, __ex, 0);
00991         }
00992         catch(const ::Ice::LocalException& __ex)
00993         {
00994             __handleException(__delBase, __ex, 0, __cnt);
00995         }
00996     }
00997 }
00998 
00999 const ::std::string&
01000 IceProxy::Robots::ScorbotIce::ice_staticId()
01001 {
01002     return ::Robots::ScorbotIce::ice_staticId();
01003 }
01004 
01005 ::IceInternal::Handle< ::IceDelegateM::Ice::Object>
01006 IceProxy::Robots::ScorbotIce::__createDelegateM()
01007 {
01008     return ::IceInternal::Handle< ::IceDelegateM::Ice::Object>(new ::IceDelegateM::Robots::ScorbotIce);
01009 }
01010 
01011 ::IceInternal::Handle< ::IceDelegateD::Ice::Object>
01012 IceProxy::Robots::ScorbotIce::__createDelegateD()
01013 {
01014     return ::IceInternal::Handle< ::IceDelegateD::Ice::Object>(new ::IceDelegateD::Robots::ScorbotIce);
01015 }
01016 
01017 ::IceProxy::Ice::Object*
01018 IceProxy::Robots::ScorbotIce::__newInstance() const
01019 {
01020     return new ScorbotIce;
01021 }
01022 
01023 ::Robots::ArmPos
01024 IceDelegateM::Robots::ScorbotIce::getIK(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __context)
01025 {
01026     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getIK_name, ::Ice::Normal, __context);
01027     try
01028     {
01029         ::IceInternal::BasicStream* __os = __og.os();
01030         __os->write(x);
01031         __os->write(y);
01032         __os->write(z);
01033     }
01034     catch(const ::Ice::LocalException& __ex)
01035     {
01036         __og.abort(__ex);
01037     }
01038     bool __ok = __og.invoke();
01039     ::Robots::ArmPos __ret;
01040     try
01041     {
01042         if(!__ok)
01043         {
01044             try
01045             {
01046                 __og.throwUserException();
01047             }
01048             catch(const ::Ice::UserException& __ex)
01049             {
01050                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01051                 throw __uue;
01052             }
01053         }
01054         ::IceInternal::BasicStream* __is = __og.is();
01055         __is->startReadEncaps();
01056         __ret.__read(__is);
01057         __is->endReadEncaps();
01058         return __ret;
01059     }
01060     catch(const ::Ice::LocalException& __ex)
01061     {
01062         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01063     }
01064 }
01065 
01066 bool
01067 IceDelegateM::Robots::ScorbotIce::getEFpos(::Ice::Float& x, ::Ice::Float& y, ::Ice::Float& z, const ::Ice::Context* __context)
01068 {
01069     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getEFpos_name, ::Ice::Normal, __context);
01070     bool __ok = __og.invoke();
01071     bool __ret;
01072     try
01073     {
01074         if(!__ok)
01075         {
01076             try
01077             {
01078                 __og.throwUserException();
01079             }
01080             catch(const ::Ice::UserException& __ex)
01081             {
01082                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01083                 throw __uue;
01084             }
01085         }
01086         ::IceInternal::BasicStream* __is = __og.is();
01087         __is->startReadEncaps();
01088         __is->read(x);
01089         __is->read(y);
01090         __is->read(z);
01091         __is->read(__ret);
01092         __is->endReadEncaps();
01093         return __ret;
01094     }
01095     catch(const ::Ice::LocalException& __ex)
01096     {
01097         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01098     }
01099 }
01100 
01101 bool
01102 IceDelegateM::Robots::ScorbotIce::setEFPos(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __context)
01103 {
01104     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__setEFPos_name, ::Ice::Normal, __context);
01105     try
01106     {
01107         ::IceInternal::BasicStream* __os = __og.os();
01108         __os->write(x);
01109         __os->write(y);
01110         __os->write(z);
01111     }
01112     catch(const ::Ice::LocalException& __ex)
01113     {
01114         __og.abort(__ex);
01115     }
01116     bool __ok = __og.invoke();
01117     bool __ret;
01118     try
01119     {
01120         if(!__ok)
01121         {
01122             try
01123             {
01124                 __og.throwUserException();
01125             }
01126             catch(const ::Ice::UserException& __ex)
01127             {
01128                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01129                 throw __uue;
01130             }
01131         }
01132         ::IceInternal::BasicStream* __is = __og.is();
01133         __is->startReadEncaps();
01134         __is->read(__ret);
01135         __is->endReadEncaps();
01136         return __ret;
01137     }
01138     catch(const ::Ice::LocalException& __ex)
01139     {
01140         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01141     }
01142 }
01143 
01144 bool
01145 IceDelegateM::Robots::ScorbotIce::setMotor(::Robots::JOINTS joint, ::Ice::Int pwm, const ::Ice::Context* __context)
01146 {
01147     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__setMotor_name, ::Ice::Normal, __context);
01148     try
01149     {
01150         ::IceInternal::BasicStream* __os = __og.os();
01151         ::Robots::__write(__os, joint);
01152         __os->write(pwm);
01153     }
01154     catch(const ::Ice::LocalException& __ex)
01155     {
01156         __og.abort(__ex);
01157     }
01158     bool __ok = __og.invoke();
01159     bool __ret;
01160     try
01161     {
01162         if(!__ok)
01163         {
01164             try
01165             {
01166                 __og.throwUserException();
01167             }
01168             catch(const ::Ice::UserException& __ex)
01169             {
01170                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01171                 throw __uue;
01172             }
01173         }
01174         ::IceInternal::BasicStream* __is = __og.is();
01175         __is->startReadEncaps();
01176         __is->read(__ret);
01177         __is->endReadEncaps();
01178         return __ret;
01179     }
01180     catch(const ::Ice::LocalException& __ex)
01181     {
01182         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01183     }
01184 }
01185 
01186 ::Ice::Int
01187 IceDelegateM::Robots::ScorbotIce::getPWM(::Robots::JOINTS j, const ::Ice::Context* __context)
01188 {
01189     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getPWM_name, ::Ice::Normal, __context);
01190     try
01191     {
01192         ::IceInternal::BasicStream* __os = __og.os();
01193         ::Robots::__write(__os, j);
01194     }
01195     catch(const ::Ice::LocalException& __ex)
01196     {
01197         __og.abort(__ex);
01198     }
01199     bool __ok = __og.invoke();
01200     ::Ice::Int __ret;
01201     try
01202     {
01203         if(!__ok)
01204         {
01205             try
01206             {
01207                 __og.throwUserException();
01208             }
01209             catch(const ::Ice::UserException& __ex)
01210             {
01211                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01212                 throw __uue;
01213             }
01214         }
01215         ::IceInternal::BasicStream* __is = __og.is();
01216         __is->startReadEncaps();
01217         __is->read(__ret);
01218         __is->endReadEncaps();
01219         return __ret;
01220     }
01221     catch(const ::Ice::LocalException& __ex)
01222     {
01223         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01224     }
01225 }
01226 
01227 bool
01228 IceDelegateM::Robots::ScorbotIce::setJointPos(::Robots::JOINTS joint, ::Ice::Int pos, const ::Ice::Context* __context)
01229 {
01230     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__setJointPos_name, ::Ice::Normal, __context);
01231     try
01232     {
01233         ::IceInternal::BasicStream* __os = __og.os();
01234         ::Robots::__write(__os, joint);
01235         __os->write(pos);
01236     }
01237     catch(const ::Ice::LocalException& __ex)
01238     {
01239         __og.abort(__ex);
01240     }
01241     bool __ok = __og.invoke();
01242     bool __ret;
01243     try
01244     {
01245         if(!__ok)
01246         {
01247             try
01248             {
01249                 __og.throwUserException();
01250             }
01251             catch(const ::Ice::UserException& __ex)
01252             {
01253                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01254                 throw __uue;
01255             }
01256         }
01257         ::IceInternal::BasicStream* __is = __og.is();
01258         __is->startReadEncaps();
01259         __is->read(__ret);
01260         __is->endReadEncaps();
01261         return __ret;
01262     }
01263     catch(const ::Ice::LocalException& __ex)
01264     {
01265         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01266     }
01267 }
01268 
01269 ::Ice::Int
01270 IceDelegateM::Robots::ScorbotIce::getJointPos(::Robots::JOINTS joint, const ::Ice::Context* __context)
01271 {
01272     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getJointPos_name, ::Ice::Normal, __context);
01273     try
01274     {
01275         ::IceInternal::BasicStream* __os = __og.os();
01276         ::Robots::__write(__os, joint);
01277     }
01278     catch(const ::Ice::LocalException& __ex)
01279     {
01280         __og.abort(__ex);
01281     }
01282     bool __ok = __og.invoke();
01283     ::Ice::Int __ret;
01284     try
01285     {
01286         if(!__ok)
01287         {
01288             try
01289             {
01290                 __og.throwUserException();
01291             }
01292             catch(const ::Ice::UserException& __ex)
01293             {
01294                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01295                 throw __uue;
01296             }
01297         }
01298         ::IceInternal::BasicStream* __is = __og.is();
01299         __is->startReadEncaps();
01300         __is->read(__ret);
01301         __is->endReadEncaps();
01302         return __ret;
01303     }
01304     catch(const ::Ice::LocalException& __ex)
01305     {
01306         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01307     }
01308 }
01309 
01310 ::Ice::Float
01311 IceDelegateM::Robots::ScorbotIce::getEncoderAng(::Robots::JOINTS joint, const ::Ice::Context* __context)
01312 {
01313     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getEncoderAng_name, ::Ice::Normal, __context);
01314     try
01315     {
01316         ::IceInternal::BasicStream* __os = __og.os();
01317         ::Robots::__write(__os, joint);
01318     }
01319     catch(const ::Ice::LocalException& __ex)
01320     {
01321         __og.abort(__ex);
01322     }
01323     bool __ok = __og.invoke();
01324     ::Ice::Float __ret;
01325     try
01326     {
01327         if(!__ok)
01328         {
01329             try
01330             {
01331                 __og.throwUserException();
01332             }
01333             catch(const ::Ice::UserException& __ex)
01334             {
01335                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01336                 throw __uue;
01337             }
01338         }
01339         ::IceInternal::BasicStream* __is = __og.is();
01340         __is->startReadEncaps();
01341         __is->read(__ret);
01342         __is->endReadEncaps();
01343         return __ret;
01344     }
01345     catch(const ::Ice::LocalException& __ex)
01346     {
01347         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01348     }
01349 }
01350 
01351 void
01352 IceDelegateM::Robots::ScorbotIce::resetEncoders(const ::Ice::Context* __context)
01353 {
01354     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__resetEncoders_name, ::Ice::Normal, __context);
01355     bool __ok = __og.invoke();
01356     if(!__og.is()->b.empty())
01357     {
01358         try
01359         {
01360             if(!__ok)
01361             {
01362                 try
01363                 {
01364                     __og.throwUserException();
01365                 }
01366                 catch(const ::Ice::UserException& __ex)
01367                 {
01368                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01369                     throw __uue;
01370                 }
01371             }
01372             __og.is()->skipEmptyEncaps();
01373         }
01374         catch(const ::Ice::LocalException& __ex)
01375         {
01376             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01377         }
01378     }
01379 }
01380 
01381 void
01382 IceDelegateM::Robots::ScorbotIce::stopAllMotors(const ::Ice::Context* __context)
01383 {
01384     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__stopAllMotors_name, ::Ice::Normal, __context);
01385     bool __ok = __og.invoke();
01386     if(!__og.is()->b.empty())
01387     {
01388         try
01389         {
01390             if(!__ok)
01391             {
01392                 try
01393                 {
01394                     __og.throwUserException();
01395                 }
01396                 catch(const ::Ice::UserException& __ex)
01397                 {
01398                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01399                     throw __uue;
01400                 }
01401             }
01402             __og.is()->skipEmptyEncaps();
01403         }
01404         catch(const ::Ice::LocalException& __ex)
01405         {
01406             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01407         }
01408     }
01409 }
01410 
01411 void
01412 IceDelegateM::Robots::ScorbotIce::setSafety(bool val, const ::Ice::Context* __context)
01413 {
01414     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__setSafety_name, ::Ice::Normal, __context);
01415     try
01416     {
01417         ::IceInternal::BasicStream* __os = __og.os();
01418         __os->write(val);
01419     }
01420     catch(const ::Ice::LocalException& __ex)
01421     {
01422         __og.abort(__ex);
01423     }
01424     bool __ok = __og.invoke();
01425     if(!__og.is()->b.empty())
01426     {
01427         try
01428         {
01429             if(!__ok)
01430             {
01431                 try
01432                 {
01433                     __og.throwUserException();
01434                 }
01435                 catch(const ::Ice::UserException& __ex)
01436                 {
01437                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01438                     throw __uue;
01439                 }
01440             }
01441             __og.is()->skipEmptyEncaps();
01442         }
01443         catch(const ::Ice::LocalException& __ex)
01444         {
01445             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01446         }
01447     }
01448 }
01449 
01450 ::Ice::Int
01451 IceDelegateM::Robots::ScorbotIce::getMovementTime(const ::Ice::Context* __context)
01452 {
01453     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getMovementTime_name, ::Ice::Normal, __context);
01454     bool __ok = __og.invoke();
01455     ::Ice::Int __ret;
01456     try
01457     {
01458         if(!__ok)
01459         {
01460             try
01461             {
01462                 __og.throwUserException();
01463             }
01464             catch(const ::Ice::UserException& __ex)
01465             {
01466                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01467                 throw __uue;
01468             }
01469         }
01470         ::IceInternal::BasicStream* __is = __og.is();
01471         __is->startReadEncaps();
01472         __is->read(__ret);
01473         __is->endReadEncaps();
01474         return __ret;
01475     }
01476     catch(const ::Ice::LocalException& __ex)
01477     {
01478         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01479     }
01480 }
01481 
01482 void
01483 IceDelegateM::Robots::ScorbotIce::homeMotor(::Robots::JOINTS joint, ::Ice::Int LimitSeekSpeed, ::Ice::Int MSJumpSpeed, ::Ice::Float MSJumpDelay, ::Ice::Int MSSeekSpeed, bool MSStopCondition, bool checkMS, const ::Ice::Context* __context)
01484 {
01485     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__homeMotor_name, ::Ice::Normal, __context);
01486     try
01487     {
01488         ::IceInternal::BasicStream* __os = __og.os();
01489         ::Robots::__write(__os, joint);
01490         __os->write(LimitSeekSpeed);
01491         __os->write(MSJumpSpeed);
01492         __os->write(MSJumpDelay);
01493         __os->write(MSSeekSpeed);
01494         __os->write(MSStopCondition);
01495         __os->write(checkMS);
01496     }
01497     catch(const ::Ice::LocalException& __ex)
01498     {
01499         __og.abort(__ex);
01500     }
01501     bool __ok = __og.invoke();
01502     if(!__og.is()->b.empty())
01503     {
01504         try
01505         {
01506             if(!__ok)
01507             {
01508                 try
01509                 {
01510                     __og.throwUserException();
01511                 }
01512                 catch(const ::Ice::UserException& __ex)
01513                 {
01514                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01515                     throw __uue;
01516                 }
01517             }
01518             __og.is()->skipEmptyEncaps();
01519         }
01520         catch(const ::Ice::LocalException& __ex)
01521         {
01522             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01523         }
01524     }
01525 }
01526 
01527 void
01528 IceDelegateM::Robots::ScorbotIce::homeMotors(const ::Ice::Context* __context)
01529 {
01530     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__homeMotors_name, ::Ice::Normal, __context);
01531     bool __ok = __og.invoke();
01532     if(!__og.is()->b.empty())
01533     {
01534         try
01535         {
01536             if(!__ok)
01537             {
01538                 try
01539                 {
01540                     __og.throwUserException();
01541                 }
01542                 catch(const ::Ice::UserException& __ex)
01543                 {
01544                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01545                     throw __uue;
01546                 }
01547             }
01548             __og.is()->skipEmptyEncaps();
01549         }
01550         catch(const ::Ice::LocalException& __ex)
01551         {
01552             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01553         }
01554     }
01555 }
01556 
01557 ::Ice::Int
01558 IceDelegateM::Robots::ScorbotIce::getMicroSwitch(const ::Ice::Context* __context)
01559 {
01560     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getMicroSwitch_name, ::Ice::Normal, __context);
01561     bool __ok = __og.invoke();
01562     ::Ice::Int __ret;
01563     try
01564     {
01565         if(!__ok)
01566         {
01567             try
01568             {
01569                 __og.throwUserException();
01570             }
01571             catch(const ::Ice::UserException& __ex)
01572             {
01573                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01574                 throw __uue;
01575             }
01576         }
01577         ::IceInternal::BasicStream* __is = __og.is();
01578         __is->startReadEncaps();
01579         __is->read(__ret);
01580         __is->endReadEncaps();
01581         return __ret;
01582     }
01583     catch(const ::Ice::LocalException& __ex)
01584     {
01585         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01586     }
01587 }
01588 
01589 ::Ice::Int
01590 IceDelegateM::Robots::ScorbotIce::getMicroSwitchMotor(::Robots::JOINTS m, const ::Ice::Context* __context)
01591 {
01592     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getMicroSwitchMotor_name, ::Ice::Normal, __context);
01593     try
01594     {
01595         ::IceInternal::BasicStream* __os = __og.os();
01596         ::Robots::__write(__os, m);
01597     }
01598     catch(const ::Ice::LocalException& __ex)
01599     {
01600         __og.abort(__ex);
01601     }
01602     bool __ok = __og.invoke();
01603     ::Ice::Int __ret;
01604     try
01605     {
01606         if(!__ok)
01607         {
01608             try
01609             {
01610                 __og.throwUserException();
01611             }
01612             catch(const ::Ice::UserException& __ex)
01613             {
01614                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01615                 throw __uue;
01616             }
01617         }
01618         ::IceInternal::BasicStream* __is = __og.is();
01619         __is->startReadEncaps();
01620         __is->read(__ret);
01621         __is->endReadEncaps();
01622         return __ret;
01623     }
01624     catch(const ::Ice::LocalException& __ex)
01625     {
01626         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01627     }
01628 }
01629 
01630 bool
01631 IceDelegateM::Robots::ScorbotIce::setArmPos(const ::Robots::ArmPos& pos, const ::Ice::Context* __context)
01632 {
01633     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__setArmPos_name, ::Ice::Normal, __context);
01634     try
01635     {
01636         ::IceInternal::BasicStream* __os = __og.os();
01637         pos.__write(__os);
01638     }
01639     catch(const ::Ice::LocalException& __ex)
01640     {
01641         __og.abort(__ex);
01642     }
01643     bool __ok = __og.invoke();
01644     bool __ret;
01645     try
01646     {
01647         if(!__ok)
01648         {
01649             try
01650             {
01651                 __og.throwUserException();
01652             }
01653             catch(const ::Ice::UserException& __ex)
01654             {
01655                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01656                 throw __uue;
01657             }
01658         }
01659         ::IceInternal::BasicStream* __is = __og.is();
01660         __is->startReadEncaps();
01661         __is->read(__ret);
01662         __is->endReadEncaps();
01663         return __ret;
01664     }
01665     catch(const ::Ice::LocalException& __ex)
01666     {
01667         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01668     }
01669 }
01670 
01671 ::Robots::ArmPos
01672 IceDelegateM::Robots::ScorbotIce::getArmPos(const ::Ice::Context* __context)
01673 {
01674     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__getArmPos_name, ::Ice::Normal, __context);
01675     bool __ok = __og.invoke();
01676     ::Robots::ArmPos __ret;
01677     try
01678     {
01679         if(!__ok)
01680         {
01681             try
01682             {
01683                 __og.throwUserException();
01684             }
01685             catch(const ::Ice::UserException& __ex)
01686             {
01687                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01688                 throw __uue;
01689             }
01690         }
01691         ::IceInternal::BasicStream* __is = __og.is();
01692         __is->startReadEncaps();
01693         __ret.__read(__is);
01694         __is->endReadEncaps();
01695         return __ret;
01696     }
01697     catch(const ::Ice::LocalException& __ex)
01698     {
01699         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01700     }
01701 }
01702 
01703 void
01704 IceDelegateM::Robots::ScorbotIce::motorsOn(const ::Ice::Context* __context)
01705 {
01706     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__motorsOn_name, ::Ice::Normal, __context);
01707     bool __ok = __og.invoke();
01708     if(!__og.is()->b.empty())
01709     {
01710         try
01711         {
01712             if(!__ok)
01713             {
01714                 try
01715                 {
01716                     __og.throwUserException();
01717                 }
01718                 catch(const ::Ice::UserException& __ex)
01719                 {
01720                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01721                     throw __uue;
01722                 }
01723             }
01724             __og.is()->skipEmptyEncaps();
01725         }
01726         catch(const ::Ice::LocalException& __ex)
01727         {
01728             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01729         }
01730     }
01731 }
01732 
01733 void
01734 IceDelegateM::Robots::ScorbotIce::motorsOff(const ::Ice::Context* __context)
01735 {
01736     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__motorsOff_name, ::Ice::Normal, __context);
01737     bool __ok = __og.invoke();
01738     if(!__og.is()->b.empty())
01739     {
01740         try
01741         {
01742             if(!__ok)
01743             {
01744                 try
01745                 {
01746                     __og.throwUserException();
01747                 }
01748                 catch(const ::Ice::UserException& __ex)
01749                 {
01750                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01751                     throw __uue;
01752                 }
01753             }
01754             __og.is()->skipEmptyEncaps();
01755         }
01756         catch(const ::Ice::LocalException& __ex)
01757         {
01758             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01759         }
01760     }
01761 }
01762 
01763 void
01764 IceDelegateM::Robots::ScorbotIce::shutdown(const ::Ice::Context* __context)
01765 {
01766     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__shutdown_name, ::Ice::Normal, __context);
01767     bool __ok = __og.invoke();
01768     if(!__og.is()->b.empty())
01769     {
01770         try
01771         {
01772             if(!__ok)
01773             {
01774                 try
01775                 {
01776                     __og.throwUserException();
01777                 }
01778                 catch(const ::Ice::UserException& __ex)
01779                 {
01780                     ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01781                     throw __uue;
01782                 }
01783             }
01784             __og.is()->skipEmptyEncaps();
01785         }
01786         catch(const ::Ice::LocalException& __ex)
01787         {
01788             throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01789         }
01790     }
01791 }
01792 
01793 ::Ice::Double
01794 IceDelegateM::Robots::ScorbotIce::enc2ang(::Ice::Int encoderTicks, const ::Ice::Context* __context)
01795 {
01796     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__enc2ang_name, ::Ice::Normal, __context);
01797     try
01798     {
01799         ::IceInternal::BasicStream* __os = __og.os();
01800         __os->write(encoderTicks);
01801     }
01802     catch(const ::Ice::LocalException& __ex)
01803     {
01804         __og.abort(__ex);
01805     }
01806     bool __ok = __og.invoke();
01807     ::Ice::Double __ret;
01808     try
01809     {
01810         if(!__ok)
01811         {
01812             try
01813             {
01814                 __og.throwUserException();
01815             }
01816             catch(const ::Ice::UserException& __ex)
01817             {
01818                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01819                 throw __uue;
01820             }
01821         }
01822         ::IceInternal::BasicStream* __is = __og.is();
01823         __is->startReadEncaps();
01824         __is->read(__ret);
01825         __is->endReadEncaps();
01826         return __ret;
01827     }
01828     catch(const ::Ice::LocalException& __ex)
01829     {
01830         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01831     }
01832 }
01833 
01834 ::Ice::Int
01835 IceDelegateM::Robots::ScorbotIce::ang2enc(::Ice::Double degrees, const ::Ice::Context* __context)
01836 {
01837     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__ang2enc_name, ::Ice::Normal, __context);
01838     try
01839     {
01840         ::IceInternal::BasicStream* __os = __og.os();
01841         __os->write(degrees);
01842     }
01843     catch(const ::Ice::LocalException& __ex)
01844     {
01845         __og.abort(__ex);
01846     }
01847     bool __ok = __og.invoke();
01848     ::Ice::Int __ret;
01849     try
01850     {
01851         if(!__ok)
01852         {
01853             try
01854             {
01855                 __og.throwUserException();
01856             }
01857             catch(const ::Ice::UserException& __ex)
01858             {
01859                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01860                 throw __uue;
01861             }
01862         }
01863         ::IceInternal::BasicStream* __is = __og.is();
01864         __is->startReadEncaps();
01865         __is->read(__ret);
01866         __is->endReadEncaps();
01867         return __ret;
01868     }
01869     catch(const ::Ice::LocalException& __ex)
01870     {
01871         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01872     }
01873 }
01874 
01875 ::Ice::Double
01876 IceDelegateM::Robots::ScorbotIce::enc2mm(::Ice::Int encoderTicks, const ::Ice::Context* __context)
01877 {
01878     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__enc2mm_name, ::Ice::Normal, __context);
01879     try
01880     {
01881         ::IceInternal::BasicStream* __os = __og.os();
01882         __os->write(encoderTicks);
01883     }
01884     catch(const ::Ice::LocalException& __ex)
01885     {
01886         __og.abort(__ex);
01887     }
01888     bool __ok = __og.invoke();
01889     ::Ice::Double __ret;
01890     try
01891     {
01892         if(!__ok)
01893         {
01894             try
01895             {
01896                 __og.throwUserException();
01897             }
01898             catch(const ::Ice::UserException& __ex)
01899             {
01900                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01901                 throw __uue;
01902             }
01903         }
01904         ::IceInternal::BasicStream* __is = __og.is();
01905         __is->startReadEncaps();
01906         __is->read(__ret);
01907         __is->endReadEncaps();
01908         return __ret;
01909     }
01910     catch(const ::Ice::LocalException& __ex)
01911     {
01912         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01913     }
01914 }
01915 
01916 ::Ice::Int
01917 IceDelegateM::Robots::ScorbotIce::mm2enc(::Ice::Double mm, const ::Ice::Context* __context)
01918 {
01919     ::IceInternal::Outgoing __og(__handler.get(), __Robots__ScorbotIce__mm2enc_name, ::Ice::Normal, __context);
01920     try
01921     {
01922         ::IceInternal::BasicStream* __os = __og.os();
01923         __os->write(mm);
01924     }
01925     catch(const ::Ice::LocalException& __ex)
01926     {
01927         __og.abort(__ex);
01928     }
01929     bool __ok = __og.invoke();
01930     ::Ice::Int __ret;
01931     try
01932     {
01933         if(!__ok)
01934         {
01935             try
01936             {
01937                 __og.throwUserException();
01938             }
01939             catch(const ::Ice::UserException& __ex)
01940             {
01941                 ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
01942                 throw __uue;
01943             }
01944         }
01945         ::IceInternal::BasicStream* __is = __og.is();
01946         __is->startReadEncaps();
01947         __is->read(__ret);
01948         __is->endReadEncaps();
01949         return __ret;
01950     }
01951     catch(const ::Ice::LocalException& __ex)
01952     {
01953         throw ::IceInternal::LocalExceptionWrapper(__ex, false);
01954     }
01955 }
01956 
01957 ::Robots::ArmPos
01958 IceDelegateD::Robots::ScorbotIce::getIK(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __context)
01959 {
01960     class _DirectI : public ::IceInternal::Direct
01961     {
01962     public:
01963 
01964         _DirectI(::Robots::ArmPos& __result, ::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Current& __current) :
01965             ::IceInternal::Direct(__current),
01966             _result(__result),
01967             _m_x(x),
01968             _m_y(y),
01969             _m_z(z)
01970         {
01971         }
01972 
01973         virtual ::Ice::DispatchStatus
01974         run(::Ice::Object* object)
01975         {
01976             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
01977             if(!servant)
01978             {
01979                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
01980             }
01981             _result = servant->getIK(_m_x, _m_y, _m_z, _current);
01982             return ::Ice::DispatchOK;
01983         }
01984 
01985     private:
01986 
01987         ::Robots::ArmPos& _result;
01988         ::Ice::Float _m_x;
01989         ::Ice::Float _m_y;
01990         ::Ice::Float _m_z;
01991     };
01992 
01993     ::Ice::Current __current;
01994     __initCurrent(__current, __Robots__ScorbotIce__getIK_name, ::Ice::Normal, __context);
01995     ::Robots::ArmPos __result;
01996     try
01997     {
01998         _DirectI __direct(__result, x, y, z, __current);
01999         try
02000         {
02001             __direct.servant()->__collocDispatch(__direct);
02002         }
02003         catch(...)
02004         {
02005             __direct.destroy();
02006             throw;
02007         }
02008         __direct.destroy();
02009     }
02010     catch(const ::Ice::SystemException&)
02011     {
02012         throw;
02013     }
02014     catch(const ::IceInternal::LocalExceptionWrapper&)
02015     {
02016         throw;
02017     }
02018     catch(const ::std::exception& __ex)
02019     {
02020         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02021     }
02022     catch(...)
02023     {
02024         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02025     }
02026     return __result;
02027 }
02028 
02029 bool
02030 IceDelegateD::Robots::ScorbotIce::getEFpos(::Ice::Float& x, ::Ice::Float& y, ::Ice::Float& z, const ::Ice::Context* __context)
02031 {
02032     class _DirectI : public ::IceInternal::Direct
02033     {
02034     public:
02035 
02036         _DirectI(bool& __result, ::Ice::Float& x, ::Ice::Float& y, ::Ice::Float& z, const ::Ice::Current& __current) :
02037             ::IceInternal::Direct(__current),
02038             _result(__result),
02039             _m_x(x),
02040             _m_y(y),
02041             _m_z(z)
02042         {
02043         }
02044 
02045         virtual ::Ice::DispatchStatus
02046         run(::Ice::Object* object)
02047         {
02048             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02049             if(!servant)
02050             {
02051                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02052             }
02053             _result = servant->getEFpos(_m_x, _m_y, _m_z, _current);
02054             return ::Ice::DispatchOK;
02055         }
02056 
02057     private:
02058 
02059         bool& _result;
02060         ::Ice::Float& _m_x;
02061         ::Ice::Float& _m_y;
02062         ::Ice::Float& _m_z;
02063     };
02064 
02065     ::Ice::Current __current;
02066     __initCurrent(__current, __Robots__ScorbotIce__getEFpos_name, ::Ice::Normal, __context);
02067     bool __result;
02068     try
02069     {
02070         _DirectI __direct(__result, x, y, z, __current);
02071         try
02072         {
02073             __direct.servant()->__collocDispatch(__direct);
02074         }
02075         catch(...)
02076         {
02077             __direct.destroy();
02078             throw;
02079         }
02080         __direct.destroy();
02081     }
02082     catch(const ::Ice::SystemException&)
02083     {
02084         throw;
02085     }
02086     catch(const ::IceInternal::LocalExceptionWrapper&)
02087     {
02088         throw;
02089     }
02090     catch(const ::std::exception& __ex)
02091     {
02092         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02093     }
02094     catch(...)
02095     {
02096         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02097     }
02098     return __result;
02099 }
02100 
02101 bool
02102 IceDelegateD::Robots::ScorbotIce::setEFPos(::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Context* __context)
02103 {
02104     class _DirectI : public ::IceInternal::Direct
02105     {
02106     public:
02107 
02108         _DirectI(bool& __result, ::Ice::Float x, ::Ice::Float y, ::Ice::Float z, const ::Ice::Current& __current) :
02109             ::IceInternal::Direct(__current),
02110             _result(__result),
02111             _m_x(x),
02112             _m_y(y),
02113             _m_z(z)
02114         {
02115         }
02116 
02117         virtual ::Ice::DispatchStatus
02118         run(::Ice::Object* object)
02119         {
02120             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02121             if(!servant)
02122             {
02123                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02124             }
02125             _result = servant->setEFPos(_m_x, _m_y, _m_z, _current);
02126             return ::Ice::DispatchOK;
02127         }
02128 
02129     private:
02130 
02131         bool& _result;
02132         ::Ice::Float _m_x;
02133         ::Ice::Float _m_y;
02134         ::Ice::Float _m_z;
02135     };
02136 
02137     ::Ice::Current __current;
02138     __initCurrent(__current, __Robots__ScorbotIce__setEFPos_name, ::Ice::Normal, __context);
02139     bool __result;
02140     try
02141     {
02142         _DirectI __direct(__result, x, y, z, __current);
02143         try
02144         {
02145             __direct.servant()->__collocDispatch(__direct);
02146         }
02147         catch(...)
02148         {
02149             __direct.destroy();
02150             throw;
02151         }
02152         __direct.destroy();
02153     }
02154     catch(const ::Ice::SystemException&)
02155     {
02156         throw;
02157     }
02158     catch(const ::IceInternal::LocalExceptionWrapper&)
02159     {
02160         throw;
02161     }
02162     catch(const ::std::exception& __ex)
02163     {
02164         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02165     }
02166     catch(...)
02167     {
02168         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02169     }
02170     return __result;
02171 }
02172 
02173 bool
02174 IceDelegateD::Robots::ScorbotIce::setMotor(::Robots::JOINTS joint, ::Ice::Int pwm, const ::Ice::Context* __context)
02175 {
02176     class _DirectI : public ::IceInternal::Direct
02177     {
02178     public:
02179 
02180         _DirectI(bool& __result, ::Robots::JOINTS joint, ::Ice::Int pwm, const ::Ice::Current& __current) :
02181             ::IceInternal::Direct(__current),
02182             _result(__result),
02183             _m_joint(joint),
02184             _m_pwm(pwm)
02185         {
02186         }
02187 
02188         virtual ::Ice::DispatchStatus
02189         run(::Ice::Object* object)
02190         {
02191             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02192             if(!servant)
02193             {
02194                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02195             }
02196             _result = servant->setMotor(_m_joint, _m_pwm, _current);
02197             return ::Ice::DispatchOK;
02198         }
02199 
02200     private:
02201 
02202         bool& _result;
02203         ::Robots::JOINTS _m_joint;
02204         ::Ice::Int _m_pwm;
02205     };
02206 
02207     ::Ice::Current __current;
02208     __initCurrent(__current, __Robots__ScorbotIce__setMotor_name, ::Ice::Normal, __context);
02209     bool __result;
02210     try
02211     {
02212         _DirectI __direct(__result, joint, pwm, __current);
02213         try
02214         {
02215             __direct.servant()->__collocDispatch(__direct);
02216         }
02217         catch(...)
02218         {
02219             __direct.destroy();
02220             throw;
02221         }
02222         __direct.destroy();
02223     }
02224     catch(const ::Ice::SystemException&)
02225     {
02226         throw;
02227     }
02228     catch(const ::IceInternal::LocalExceptionWrapper&)
02229     {
02230         throw;
02231     }
02232     catch(const ::std::exception& __ex)
02233     {
02234         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02235     }
02236     catch(...)
02237     {
02238         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02239     }
02240     return __result;
02241 }
02242 
02243 ::Ice::Int
02244 IceDelegateD::Robots::ScorbotIce::getPWM(::Robots::JOINTS j, const ::Ice::Context* __context)
02245 {
02246     class _DirectI : public ::IceInternal::Direct
02247     {
02248     public:
02249 
02250         _DirectI(::Ice::Int& __result, ::Robots::JOINTS j, const ::Ice::Current& __current) :
02251             ::IceInternal::Direct(__current),
02252             _result(__result),
02253             _m_j(j)
02254         {
02255         }
02256 
02257         virtual ::Ice::DispatchStatus
02258         run(::Ice::Object* object)
02259         {
02260             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02261             if(!servant)
02262             {
02263                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02264             }
02265             _result = servant->getPWM(_m_j, _current);
02266             return ::Ice::DispatchOK;
02267         }
02268 
02269     private:
02270 
02271         ::Ice::Int& _result;
02272         ::Robots::JOINTS _m_j;
02273     };
02274 
02275     ::Ice::Current __current;
02276     __initCurrent(__current, __Robots__ScorbotIce__getPWM_name, ::Ice::Normal, __context);
02277     ::Ice::Int __result;
02278     try
02279     {
02280         _DirectI __direct(__result, j, __current);
02281         try
02282         {
02283             __direct.servant()->__collocDispatch(__direct);
02284         }
02285         catch(...)
02286         {
02287             __direct.destroy();
02288             throw;
02289         }
02290         __direct.destroy();
02291     }
02292     catch(const ::Ice::SystemException&)
02293     {
02294         throw;
02295     }
02296     catch(const ::IceInternal::LocalExceptionWrapper&)
02297     {
02298         throw;
02299     }
02300     catch(const ::std::exception& __ex)
02301     {
02302         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02303     }
02304     catch(...)
02305     {
02306         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02307     }
02308     return __result;
02309 }
02310 
02311 bool
02312 IceDelegateD::Robots::ScorbotIce::setJointPos(::Robots::JOINTS joint, ::Ice::Int pos, const ::Ice::Context* __context)
02313 {
02314     class _DirectI : public ::IceInternal::Direct
02315     {
02316     public:
02317 
02318         _DirectI(bool& __result, ::Robots::JOINTS joint, ::Ice::Int pos, const ::Ice::Current& __current) :
02319             ::IceInternal::Direct(__current),
02320             _result(__result),
02321             _m_joint(joint),
02322             _m_pos(pos)
02323         {
02324         }
02325 
02326         virtual ::Ice::DispatchStatus
02327         run(::Ice::Object* object)
02328         {
02329             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02330             if(!servant)
02331             {
02332                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02333             }
02334             _result = servant->setJointPos(_m_joint, _m_pos, _current);
02335             return ::Ice::DispatchOK;
02336         }
02337 
02338     private:
02339 
02340         bool& _result;
02341         ::Robots::JOINTS _m_joint;
02342         ::Ice::Int _m_pos;
02343     };
02344 
02345     ::Ice::Current __current;
02346     __initCurrent(__current, __Robots__ScorbotIce__setJointPos_name, ::Ice::Normal, __context);
02347     bool __result;
02348     try
02349     {
02350         _DirectI __direct(__result, joint, pos, __current);
02351         try
02352         {
02353             __direct.servant()->__collocDispatch(__direct);
02354         }
02355         catch(...)
02356         {
02357             __direct.destroy();
02358             throw;
02359         }
02360         __direct.destroy();
02361     }
02362     catch(const ::Ice::SystemException&)
02363     {
02364         throw;
02365     }
02366     catch(const ::IceInternal::LocalExceptionWrapper&)
02367     {
02368         throw;
02369     }
02370     catch(const ::std::exception& __ex)
02371     {
02372         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02373     }
02374     catch(...)
02375     {
02376         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02377     }
02378     return __result;
02379 }
02380 
02381 ::Ice::Int
02382 IceDelegateD::Robots::ScorbotIce::getJointPos(::Robots::JOINTS joint, const ::Ice::Context* __context)
02383 {
02384     class _DirectI : public ::IceInternal::Direct
02385     {
02386     public:
02387 
02388         _DirectI(::Ice::Int& __result, ::Robots::JOINTS joint, const ::Ice::Current& __current) :
02389             ::IceInternal::Direct(__current),
02390             _result(__result),
02391             _m_joint(joint)
02392         {
02393         }
02394 
02395         virtual ::Ice::DispatchStatus
02396         run(::Ice::Object* object)
02397         {
02398             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02399             if(!servant)
02400             {
02401                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02402             }
02403             _result = servant->getJointPos(_m_joint, _current);
02404             return ::Ice::DispatchOK;
02405         }
02406 
02407     private:
02408 
02409         ::Ice::Int& _result;
02410         ::Robots::JOINTS _m_joint;
02411     };
02412 
02413     ::Ice::Current __current;
02414     __initCurrent(__current, __Robots__ScorbotIce__getJointPos_name, ::Ice::Normal, __context);
02415     ::Ice::Int __result;
02416     try
02417     {
02418         _DirectI __direct(__result, joint, __current);
02419         try
02420         {
02421             __direct.servant()->__collocDispatch(__direct);
02422         }
02423         catch(...)
02424         {
02425             __direct.destroy();
02426             throw;
02427         }
02428         __direct.destroy();
02429     }
02430     catch(const ::Ice::SystemException&)
02431     {
02432         throw;
02433     }
02434     catch(const ::IceInternal::LocalExceptionWrapper&)
02435     {
02436         throw;
02437     }
02438     catch(const ::std::exception& __ex)
02439     {
02440         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02441     }
02442     catch(...)
02443     {
02444         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02445     }
02446     return __result;
02447 }
02448 
02449 ::Ice::Float
02450 IceDelegateD::Robots::ScorbotIce::getEncoderAng(::Robots::JOINTS joint, const ::Ice::Context* __context)
02451 {
02452     class _DirectI : public ::IceInternal::Direct
02453     {
02454     public:
02455 
02456         _DirectI(::Ice::Float& __result, ::Robots::JOINTS joint, const ::Ice::Current& __current) :
02457             ::IceInternal::Direct(__current),
02458             _result(__result),
02459             _m_joint(joint)
02460         {
02461         }
02462 
02463         virtual ::Ice::DispatchStatus
02464         run(::Ice::Object* object)
02465         {
02466             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02467             if(!servant)
02468             {
02469                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02470             }
02471             _result = servant->getEncoderAng(_m_joint, _current);
02472             return ::Ice::DispatchOK;
02473         }
02474 
02475     private:
02476 
02477         ::Ice::Float& _result;
02478         ::Robots::JOINTS _m_joint;
02479     };
02480 
02481     ::Ice::Current __current;
02482     __initCurrent(__current, __Robots__ScorbotIce__getEncoderAng_name, ::Ice::Normal, __context);
02483     ::Ice::Float __result;
02484     try
02485     {
02486         _DirectI __direct(__result, joint, __current);
02487         try
02488         {
02489             __direct.servant()->__collocDispatch(__direct);
02490         }
02491         catch(...)
02492         {
02493             __direct.destroy();
02494             throw;
02495         }
02496         __direct.destroy();
02497     }
02498     catch(const ::Ice::SystemException&)
02499     {
02500         throw;
02501     }
02502     catch(const ::IceInternal::LocalExceptionWrapper&)
02503     {
02504         throw;
02505     }
02506     catch(const ::std::exception& __ex)
02507     {
02508         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02509     }
02510     catch(...)
02511     {
02512         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02513     }
02514     return __result;
02515 }
02516 
02517 void
02518 IceDelegateD::Robots::ScorbotIce::resetEncoders(const ::Ice::Context* __context)
02519 {
02520     class _DirectI : public ::IceInternal::Direct
02521     {
02522     public:
02523 
02524         _DirectI(const ::Ice::Current& __current) :
02525             ::IceInternal::Direct(__current)
02526         {
02527         }
02528 
02529         virtual ::Ice::DispatchStatus
02530         run(::Ice::Object* object)
02531         {
02532             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02533             if(!servant)
02534             {
02535                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02536             }
02537             servant->resetEncoders(_current);
02538             return ::Ice::DispatchOK;
02539         }
02540 
02541     private:
02542 
02543     };
02544 
02545     ::Ice::Current __current;
02546     __initCurrent(__current, __Robots__ScorbotIce__resetEncoders_name, ::Ice::Normal, __context);
02547     try
02548     {
02549         _DirectI __direct(__current);
02550         try
02551         {
02552             __direct.servant()->__collocDispatch(__direct);
02553         }
02554         catch(...)
02555         {
02556             __direct.destroy();
02557             throw;
02558         }
02559         __direct.destroy();
02560     }
02561     catch(const ::Ice::SystemException&)
02562     {
02563         throw;
02564     }
02565     catch(const ::IceInternal::LocalExceptionWrapper&)
02566     {
02567         throw;
02568     }
02569     catch(const ::std::exception& __ex)
02570     {
02571         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02572     }
02573     catch(...)
02574     {
02575         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02576     }
02577 }
02578 
02579 void
02580 IceDelegateD::Robots::ScorbotIce::stopAllMotors(const ::Ice::Context* __context)
02581 {
02582     class _DirectI : public ::IceInternal::Direct
02583     {
02584     public:
02585 
02586         _DirectI(const ::Ice::Current& __current) :
02587             ::IceInternal::Direct(__current)
02588         {
02589         }
02590 
02591         virtual ::Ice::DispatchStatus
02592         run(::Ice::Object* object)
02593         {
02594             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02595             if(!servant)
02596             {
02597                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02598             }
02599             servant->stopAllMotors(_current);
02600             return ::Ice::DispatchOK;
02601         }
02602 
02603     private:
02604 
02605     };
02606 
02607     ::Ice::Current __current;
02608     __initCurrent(__current, __Robots__ScorbotIce__stopAllMotors_name, ::Ice::Normal, __context);
02609     try
02610     {
02611         _DirectI __direct(__current);
02612         try
02613         {
02614             __direct.servant()->__collocDispatch(__direct);
02615         }
02616         catch(...)
02617         {
02618             __direct.destroy();
02619             throw;
02620         }
02621         __direct.destroy();
02622     }
02623     catch(const ::Ice::SystemException&)
02624     {
02625         throw;
02626     }
02627     catch(const ::IceInternal::LocalExceptionWrapper&)
02628     {
02629         throw;
02630     }
02631     catch(const ::std::exception& __ex)
02632     {
02633         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02634     }
02635     catch(...)
02636     {
02637         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02638     }
02639 }
02640 
02641 void
02642 IceDelegateD::Robots::ScorbotIce::setSafety(bool val, const ::Ice::Context* __context)
02643 {
02644     class _DirectI : public ::IceInternal::Direct
02645     {
02646     public:
02647 
02648         _DirectI(bool val, const ::Ice::Current& __current) :
02649             ::IceInternal::Direct(__current),
02650             _m_val(val)
02651         {
02652         }
02653 
02654         virtual ::Ice::DispatchStatus
02655         run(::Ice::Object* object)
02656         {
02657             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02658             if(!servant)
02659             {
02660                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02661             }
02662             servant->setSafety(_m_val, _current);
02663             return ::Ice::DispatchOK;
02664         }
02665 
02666     private:
02667 
02668         bool _m_val;
02669     };
02670 
02671     ::Ice::Current __current;
02672     __initCurrent(__current, __Robots__ScorbotIce__setSafety_name, ::Ice::Normal, __context);
02673     try
02674     {
02675         _DirectI __direct(val, __current);
02676         try
02677         {
02678             __direct.servant()->__collocDispatch(__direct);
02679         }
02680         catch(...)
02681         {
02682             __direct.destroy();
02683             throw;
02684         }
02685         __direct.destroy();
02686     }
02687     catch(const ::Ice::SystemException&)
02688     {
02689         throw;
02690     }
02691     catch(const ::IceInternal::LocalExceptionWrapper&)
02692     {
02693         throw;
02694     }
02695     catch(const ::std::exception& __ex)
02696     {
02697         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02698     }
02699     catch(...)
02700     {
02701         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02702     }
02703 }
02704 
02705 ::Ice::Int
02706 IceDelegateD::Robots::ScorbotIce::getMovementTime(const ::Ice::Context* __context)
02707 {
02708     class _DirectI : public ::IceInternal::Direct
02709     {
02710     public:
02711 
02712         _DirectI(::Ice::Int& __result, const ::Ice::Current& __current) :
02713             ::IceInternal::Direct(__current),
02714             _result(__result)
02715         {
02716         }
02717 
02718         virtual ::Ice::DispatchStatus
02719         run(::Ice::Object* object)
02720         {
02721             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02722             if(!servant)
02723             {
02724                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02725             }
02726             _result = servant->getMovementTime(_current);
02727             return ::Ice::DispatchOK;
02728         }
02729 
02730     private:
02731 
02732         ::Ice::Int& _result;
02733     };
02734 
02735     ::Ice::Current __current;
02736     __initCurrent(__current, __Robots__ScorbotIce__getMovementTime_name, ::Ice::Normal, __context);
02737     ::Ice::Int __result;
02738     try
02739     {
02740         _DirectI __direct(__result, __current);
02741         try
02742         {
02743             __direct.servant()->__collocDispatch(__direct);
02744         }
02745         catch(...)
02746         {
02747             __direct.destroy();
02748             throw;
02749         }
02750         __direct.destroy();
02751     }
02752     catch(const ::Ice::SystemException&)
02753     {
02754         throw;
02755     }
02756     catch(const ::IceInternal::LocalExceptionWrapper&)
02757     {
02758         throw;
02759     }
02760     catch(const ::std::exception& __ex)
02761     {
02762         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02763     }
02764     catch(...)
02765     {
02766         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02767     }
02768     return __result;
02769 }
02770 
02771 void
02772 IceDelegateD::Robots::ScorbotIce::homeMotor(::Robots::JOINTS joint, ::Ice::Int LimitSeekSpeed, ::Ice::Int MSJumpSpeed, ::Ice::Float MSJumpDelay, ::Ice::Int MSSeekSpeed, bool MSStopCondition, bool checkMS, const ::Ice::Context* __context)
02773 {
02774     class _DirectI : public ::IceInternal::Direct
02775     {
02776     public:
02777 
02778         _DirectI(::Robots::JOINTS joint, ::Ice::Int LimitSeekSpeed, ::Ice::Int MSJumpSpeed, ::Ice::Float MSJumpDelay, ::Ice::Int MSSeekSpeed, bool MSStopCondition, bool checkMS, const ::Ice::Current& __current) :
02779             ::IceInternal::Direct(__current),
02780             _m_joint(joint),
02781             _m_LimitSeekSpeed(LimitSeekSpeed),
02782             _m_MSJumpSpeed(MSJumpSpeed),
02783             _m_MSJumpDelay(MSJumpDelay),
02784             _m_MSSeekSpeed(MSSeekSpeed),
02785             _m_MSStopCondition(MSStopCondition),
02786             _m_checkMS(checkMS)
02787         {
02788         }
02789 
02790         virtual ::Ice::DispatchStatus
02791         run(::Ice::Object* object)
02792         {
02793             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02794             if(!servant)
02795             {
02796                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02797             }
02798             servant->homeMotor(_m_joint, _m_LimitSeekSpeed, _m_MSJumpSpeed, _m_MSJumpDelay, _m_MSSeekSpeed, _m_MSStopCondition, _m_checkMS, _current);
02799             return ::Ice::DispatchOK;
02800         }
02801 
02802     private:
02803 
02804         ::Robots::JOINTS _m_joint;
02805         ::Ice::Int _m_LimitSeekSpeed;
02806         ::Ice::Int _m_MSJumpSpeed;
02807         ::Ice::Float _m_MSJumpDelay;
02808         ::Ice::Int _m_MSSeekSpeed;
02809         bool _m_MSStopCondition;
02810         bool _m_checkMS;
02811     };
02812 
02813     ::Ice::Current __current;
02814     __initCurrent(__current, __Robots__ScorbotIce__homeMotor_name, ::Ice::Normal, __context);
02815     try
02816     {
02817         _DirectI __direct(joint, LimitSeekSpeed, MSJumpSpeed, MSJumpDelay, MSSeekSpeed, MSStopCondition, checkMS, __current);
02818         try
02819         {
02820             __direct.servant()->__collocDispatch(__direct);
02821         }
02822         catch(...)
02823         {
02824             __direct.destroy();
02825             throw;
02826         }
02827         __direct.destroy();
02828     }
02829     catch(const ::Ice::SystemException&)
02830     {
02831         throw;
02832     }
02833     catch(const ::IceInternal::LocalExceptionWrapper&)
02834     {
02835         throw;
02836     }
02837     catch(const ::std::exception& __ex)
02838     {
02839         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02840     }
02841     catch(...)
02842     {
02843         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02844     }
02845 }
02846 
02847 void
02848 IceDelegateD::Robots::ScorbotIce::homeMotors(const ::Ice::Context* __context)
02849 {
02850     class _DirectI : public ::IceInternal::Direct
02851     {
02852     public:
02853 
02854         _DirectI(const ::Ice::Current& __current) :
02855             ::IceInternal::Direct(__current)
02856         {
02857         }
02858 
02859         virtual ::Ice::DispatchStatus
02860         run(::Ice::Object* object)
02861         {
02862             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02863             if(!servant)
02864             {
02865                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02866             }
02867             servant->homeMotors(_current);
02868             return ::Ice::DispatchOK;
02869         }
02870 
02871     private:
02872 
02873     };
02874 
02875     ::Ice::Current __current;
02876     __initCurrent(__current, __Robots__ScorbotIce__homeMotors_name, ::Ice::Normal, __context);
02877     try
02878     {
02879         _DirectI __direct(__current);
02880         try
02881         {
02882             __direct.servant()->__collocDispatch(__direct);
02883         }
02884         catch(...)
02885         {
02886             __direct.destroy();
02887             throw;
02888         }
02889         __direct.destroy();
02890     }
02891     catch(const ::Ice::SystemException&)
02892     {
02893         throw;
02894     }
02895     catch(const ::IceInternal::LocalExceptionWrapper&)
02896     {
02897         throw;
02898     }
02899     catch(const ::std::exception& __ex)
02900     {
02901         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02902     }
02903     catch(...)
02904     {
02905         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02906     }
02907 }
02908 
02909 ::Ice::Int
02910 IceDelegateD::Robots::ScorbotIce::getMicroSwitch(const ::Ice::Context* __context)
02911 {
02912     class _DirectI : public ::IceInternal::Direct
02913     {
02914     public:
02915 
02916         _DirectI(::Ice::Int& __result, const ::Ice::Current& __current) :
02917             ::IceInternal::Direct(__current),
02918             _result(__result)
02919         {
02920         }
02921 
02922         virtual ::Ice::DispatchStatus
02923         run(::Ice::Object* object)
02924         {
02925             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02926             if(!servant)
02927             {
02928                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02929             }
02930             _result = servant->getMicroSwitch(_current);
02931             return ::Ice::DispatchOK;
02932         }
02933 
02934     private:
02935 
02936         ::Ice::Int& _result;
02937     };
02938 
02939     ::Ice::Current __current;
02940     __initCurrent(__current, __Robots__ScorbotIce__getMicroSwitch_name, ::Ice::Normal, __context);
02941     ::Ice::Int __result;
02942     try
02943     {
02944         _DirectI __direct(__result, __current);
02945         try
02946         {
02947             __direct.servant()->__collocDispatch(__direct);
02948         }
02949         catch(...)
02950         {
02951             __direct.destroy();
02952             throw;
02953         }
02954         __direct.destroy();
02955     }
02956     catch(const ::Ice::SystemException&)
02957     {
02958         throw;
02959     }
02960     catch(const ::IceInternal::LocalExceptionWrapper&)
02961     {
02962         throw;
02963     }
02964     catch(const ::std::exception& __ex)
02965     {
02966         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
02967     }
02968     catch(...)
02969     {
02970         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
02971     }
02972     return __result;
02973 }
02974 
02975 ::Ice::Int
02976 IceDelegateD::Robots::ScorbotIce::getMicroSwitchMotor(::Robots::JOINTS m, const ::Ice::Context* __context)
02977 {
02978     class _DirectI : public ::IceInternal::Direct
02979     {
02980     public:
02981 
02982         _DirectI(::Ice::Int& __result, ::Robots::JOINTS m, const ::Ice::Current& __current) :
02983             ::IceInternal::Direct(__current),
02984             _result(__result),
02985             _m_m(m)
02986         {
02987         }
02988 
02989         virtual ::Ice::DispatchStatus
02990         run(::Ice::Object* object)
02991         {
02992             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
02993             if(!servant)
02994             {
02995                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
02996             }
02997             _result = servant->getMicroSwitchMotor(_m_m, _current);
02998             return ::Ice::DispatchOK;
02999         }
03000 
03001     private:
03002 
03003         ::Ice::Int& _result;
03004         ::Robots::JOINTS _m_m;
03005     };
03006 
03007     ::Ice::Current __current;
03008     __initCurrent(__current, __Robots__ScorbotIce__getMicroSwitchMotor_name, ::Ice::Normal, __context);
03009     ::Ice::Int __result;
03010     try
03011     {
03012         _DirectI __direct(__result, m, __current);
03013         try
03014         {
03015             __direct.servant()->__collocDispatch(__direct);
03016         }
03017         catch(...)
03018         {
03019             __direct.destroy();
03020             throw;
03021         }
03022         __direct.destroy();
03023     }
03024     catch(const ::Ice::SystemException&)
03025     {
03026         throw;
03027     }
03028     catch(const ::IceInternal::LocalExceptionWrapper&)
03029     {
03030         throw;
03031     }
03032     catch(const ::std::exception& __ex)
03033     {
03034         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03035     }
03036     catch(...)
03037     {
03038         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03039     }
03040     return __result;
03041 }
03042 
03043 bool
03044 IceDelegateD::Robots::ScorbotIce::setArmPos(const ::Robots::ArmPos& pos, const ::Ice::Context* __context)
03045 {
03046     class _DirectI : public ::IceInternal::Direct
03047     {
03048     public:
03049 
03050         _DirectI(bool& __result, const ::Robots::ArmPos& pos, const ::Ice::Current& __current) :
03051             ::IceInternal::Direct(__current),
03052             _result(__result),
03053             _m_pos(pos)
03054         {
03055         }
03056 
03057         virtual ::Ice::DispatchStatus
03058         run(::Ice::Object* object)
03059         {
03060             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03061             if(!servant)
03062             {
03063                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03064             }
03065             _result = servant->setArmPos(_m_pos, _current);
03066             return ::Ice::DispatchOK;
03067         }
03068 
03069     private:
03070 
03071         bool& _result;
03072         const ::Robots::ArmPos& _m_pos;
03073     };
03074 
03075     ::Ice::Current __current;
03076     __initCurrent(__current, __Robots__ScorbotIce__setArmPos_name, ::Ice::Normal, __context);
03077     bool __result;
03078     try
03079     {
03080         _DirectI __direct(__result, pos, __current);
03081         try
03082         {
03083             __direct.servant()->__collocDispatch(__direct);
03084         }
03085         catch(...)
03086         {
03087             __direct.destroy();
03088             throw;
03089         }
03090         __direct.destroy();
03091     }
03092     catch(const ::Ice::SystemException&)
03093     {
03094         throw;
03095     }
03096     catch(const ::IceInternal::LocalExceptionWrapper&)
03097     {
03098         throw;
03099     }
03100     catch(const ::std::exception& __ex)
03101     {
03102         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03103     }
03104     catch(...)
03105     {
03106         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03107     }
03108     return __result;
03109 }
03110 
03111 ::Robots::ArmPos
03112 IceDelegateD::Robots::ScorbotIce::getArmPos(const ::Ice::Context* __context)
03113 {
03114     class _DirectI : public ::IceInternal::Direct
03115     {
03116     public:
03117 
03118         _DirectI(::Robots::ArmPos& __result, const ::Ice::Current& __current) :
03119             ::IceInternal::Direct(__current),
03120             _result(__result)
03121         {
03122         }
03123 
03124         virtual ::Ice::DispatchStatus
03125         run(::Ice::Object* object)
03126         {
03127             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03128             if(!servant)
03129             {
03130                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03131             }
03132             _result = servant->getArmPos(_current);
03133             return ::Ice::DispatchOK;
03134         }
03135 
03136     private:
03137 
03138         ::Robots::ArmPos& _result;
03139     };
03140 
03141     ::Ice::Current __current;
03142     __initCurrent(__current, __Robots__ScorbotIce__getArmPos_name, ::Ice::Normal, __context);
03143     ::Robots::ArmPos __result;
03144     try
03145     {
03146         _DirectI __direct(__result, __current);
03147         try
03148         {
03149             __direct.servant()->__collocDispatch(__direct);
03150         }
03151         catch(...)
03152         {
03153             __direct.destroy();
03154             throw;
03155         }
03156         __direct.destroy();
03157     }
03158     catch(const ::Ice::SystemException&)
03159     {
03160         throw;
03161     }
03162     catch(const ::IceInternal::LocalExceptionWrapper&)
03163     {
03164         throw;
03165     }
03166     catch(const ::std::exception& __ex)
03167     {
03168         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03169     }
03170     catch(...)
03171     {
03172         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03173     }
03174     return __result;
03175 }
03176 
03177 void
03178 IceDelegateD::Robots::ScorbotIce::motorsOn(const ::Ice::Context* __context)
03179 {
03180     class _DirectI : public ::IceInternal::Direct
03181     {
03182     public:
03183 
03184         _DirectI(const ::Ice::Current& __current) :
03185             ::IceInternal::Direct(__current)
03186         {
03187         }
03188 
03189         virtual ::Ice::DispatchStatus
03190         run(::Ice::Object* object)
03191         {
03192             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03193             if(!servant)
03194             {
03195                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03196             }
03197             servant->motorsOn(_current);
03198             return ::Ice::DispatchOK;
03199         }
03200 
03201     private:
03202 
03203     };
03204 
03205     ::Ice::Current __current;
03206     __initCurrent(__current, __Robots__ScorbotIce__motorsOn_name, ::Ice::Normal, __context);
03207     try
03208     {
03209         _DirectI __direct(__current);
03210         try
03211         {
03212             __direct.servant()->__collocDispatch(__direct);
03213         }
03214         catch(...)
03215         {
03216             __direct.destroy();
03217             throw;
03218         }
03219         __direct.destroy();
03220     }
03221     catch(const ::Ice::SystemException&)
03222     {
03223         throw;
03224     }
03225     catch(const ::IceInternal::LocalExceptionWrapper&)
03226     {
03227         throw;
03228     }
03229     catch(const ::std::exception& __ex)
03230     {
03231         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03232     }
03233     catch(...)
03234     {
03235         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03236     }
03237 }
03238 
03239 void
03240 IceDelegateD::Robots::ScorbotIce::motorsOff(const ::Ice::Context* __context)
03241 {
03242     class _DirectI : public ::IceInternal::Direct
03243     {
03244     public:
03245 
03246         _DirectI(const ::Ice::Current& __current) :
03247             ::IceInternal::Direct(__current)
03248         {
03249         }
03250 
03251         virtual ::Ice::DispatchStatus
03252         run(::Ice::Object* object)
03253         {
03254             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03255             if(!servant)
03256             {
03257                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03258             }
03259             servant->motorsOff(_current);
03260             return ::Ice::DispatchOK;
03261         }
03262 
03263     private:
03264 
03265     };
03266 
03267     ::Ice::Current __current;
03268     __initCurrent(__current, __Robots__ScorbotIce__motorsOff_name, ::Ice::Normal, __context);
03269     try
03270     {
03271         _DirectI __direct(__current);
03272         try
03273         {
03274             __direct.servant()->__collocDispatch(__direct);
03275         }
03276         catch(...)
03277         {
03278             __direct.destroy();
03279             throw;
03280         }
03281         __direct.destroy();
03282     }
03283     catch(const ::Ice::SystemException&)
03284     {
03285         throw;
03286     }
03287     catch(const ::IceInternal::LocalExceptionWrapper&)
03288     {
03289         throw;
03290     }
03291     catch(const ::std::exception& __ex)
03292     {
03293         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03294     }
03295     catch(...)
03296     {
03297         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03298     }
03299 }
03300 
03301 void
03302 IceDelegateD::Robots::ScorbotIce::shutdown(const ::Ice::Context* __context)
03303 {
03304     class _DirectI : public ::IceInternal::Direct
03305     {
03306     public:
03307 
03308         _DirectI(const ::Ice::Current& __current) :
03309             ::IceInternal::Direct(__current)
03310         {
03311         }
03312 
03313         virtual ::Ice::DispatchStatus
03314         run(::Ice::Object* object)
03315         {
03316             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03317             if(!servant)
03318             {
03319                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03320             }
03321             servant->shutdown(_current);
03322             return ::Ice::DispatchOK;
03323         }
03324 
03325     private:
03326 
03327     };
03328 
03329     ::Ice::Current __current;
03330     __initCurrent(__current, __Robots__ScorbotIce__shutdown_name, ::Ice::Normal, __context);
03331     try
03332     {
03333         _DirectI __direct(__current);
03334         try
03335         {
03336             __direct.servant()->__collocDispatch(__direct);
03337         }
03338         catch(...)
03339         {
03340             __direct.destroy();
03341             throw;
03342         }
03343         __direct.destroy();
03344     }
03345     catch(const ::Ice::SystemException&)
03346     {
03347         throw;
03348     }
03349     catch(const ::IceInternal::LocalExceptionWrapper&)
03350     {
03351         throw;
03352     }
03353     catch(const ::std::exception& __ex)
03354     {
03355         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03356     }
03357     catch(...)
03358     {
03359         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03360     }
03361 }
03362 
03363 ::Ice::Double
03364 IceDelegateD::Robots::ScorbotIce::enc2ang(::Ice::Int encoderTicks, const ::Ice::Context* __context)
03365 {
03366     class _DirectI : public ::IceInternal::Direct
03367     {
03368     public:
03369 
03370         _DirectI(::Ice::Double& __result, ::Ice::Int encoderTicks, const ::Ice::Current& __current) :
03371             ::IceInternal::Direct(__current),
03372             _result(__result),
03373             _m_encoderTicks(encoderTicks)
03374         {
03375         }
03376 
03377         virtual ::Ice::DispatchStatus
03378         run(::Ice::Object* object)
03379         {
03380             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03381             if(!servant)
03382             {
03383                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03384             }
03385             _result = servant->enc2ang(_m_encoderTicks, _current);
03386             return ::Ice::DispatchOK;
03387         }
03388 
03389     private:
03390 
03391         ::Ice::Double& _result;
03392         ::Ice::Int _m_encoderTicks;
03393     };
03394 
03395     ::Ice::Current __current;
03396     __initCurrent(__current, __Robots__ScorbotIce__enc2ang_name, ::Ice::Normal, __context);
03397     ::Ice::Double __result;
03398     try
03399     {
03400         _DirectI __direct(__result, encoderTicks, __current);
03401         try
03402         {
03403             __direct.servant()->__collocDispatch(__direct);
03404         }
03405         catch(...)
03406         {
03407             __direct.destroy();
03408             throw;
03409         }
03410         __direct.destroy();
03411     }
03412     catch(const ::Ice::SystemException&)
03413     {
03414         throw;
03415     }
03416     catch(const ::IceInternal::LocalExceptionWrapper&)
03417     {
03418         throw;
03419     }
03420     catch(const ::std::exception& __ex)
03421     {
03422         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03423     }
03424     catch(...)
03425     {
03426         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03427     }
03428     return __result;
03429 }
03430 
03431 ::Ice::Int
03432 IceDelegateD::Robots::ScorbotIce::ang2enc(::Ice::Double degrees, const ::Ice::Context* __context)
03433 {
03434     class _DirectI : public ::IceInternal::Direct
03435     {
03436     public:
03437 
03438         _DirectI(::Ice::Int& __result, ::Ice::Double degrees, const ::Ice::Current& __current) :
03439             ::IceInternal::Direct(__current),
03440             _result(__result),
03441             _m_degrees(degrees)
03442         {
03443         }
03444 
03445         virtual ::Ice::DispatchStatus
03446         run(::Ice::Object* object)
03447         {
03448             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03449             if(!servant)
03450             {
03451                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03452             }
03453             _result = servant->ang2enc(_m_degrees, _current);
03454             return ::Ice::DispatchOK;
03455         }
03456 
03457     private:
03458 
03459         ::Ice::Int& _result;
03460         ::Ice::Double _m_degrees;
03461     };
03462 
03463     ::Ice::Current __current;
03464     __initCurrent(__current, __Robots__ScorbotIce__ang2enc_name, ::Ice::Normal, __context);
03465     ::Ice::Int __result;
03466     try
03467     {
03468         _DirectI __direct(__result, degrees, __current);
03469         try
03470         {
03471             __direct.servant()->__collocDispatch(__direct);
03472         }
03473         catch(...)
03474         {
03475             __direct.destroy();
03476             throw;
03477         }
03478         __direct.destroy();
03479     }
03480     catch(const ::Ice::SystemException&)
03481     {
03482         throw;
03483     }
03484     catch(const ::IceInternal::LocalExceptionWrapper&)
03485     {
03486         throw;
03487     }
03488     catch(const ::std::exception& __ex)
03489     {
03490         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03491     }
03492     catch(...)
03493     {
03494         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03495     }
03496     return __result;
03497 }
03498 
03499 ::Ice::Double
03500 IceDelegateD::Robots::ScorbotIce::enc2mm(::Ice::Int encoderTicks, const ::Ice::Context* __context)
03501 {
03502     class _DirectI : public ::IceInternal::Direct
03503     {
03504     public:
03505 
03506         _DirectI(::Ice::Double& __result, ::Ice::Int encoderTicks, const ::Ice::Current& __current) :
03507             ::IceInternal::Direct(__current),
03508             _result(__result),
03509             _m_encoderTicks(encoderTicks)
03510         {
03511         }
03512 
03513         virtual ::Ice::DispatchStatus
03514         run(::Ice::Object* object)
03515         {
03516             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03517             if(!servant)
03518             {
03519                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03520             }
03521             _result = servant->enc2mm(_m_encoderTicks, _current);
03522             return ::Ice::DispatchOK;
03523         }
03524 
03525     private:
03526 
03527         ::Ice::Double& _result;
03528         ::Ice::Int _m_encoderTicks;
03529     };
03530 
03531     ::Ice::Current __current;
03532     __initCurrent(__current, __Robots__ScorbotIce__enc2mm_name, ::Ice::Normal, __context);
03533     ::Ice::Double __result;
03534     try
03535     {
03536         _DirectI __direct(__result, encoderTicks, __current);
03537         try
03538         {
03539             __direct.servant()->__collocDispatch(__direct);
03540         }
03541         catch(...)
03542         {
03543             __direct.destroy();
03544             throw;
03545         }
03546         __direct.destroy();
03547     }
03548     catch(const ::Ice::SystemException&)
03549     {
03550         throw;
03551     }
03552     catch(const ::IceInternal::LocalExceptionWrapper&)
03553     {
03554         throw;
03555     }
03556     catch(const ::std::exception& __ex)
03557     {
03558         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03559     }
03560     catch(...)
03561     {
03562         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03563     }
03564     return __result;
03565 }
03566 
03567 ::Ice::Int
03568 IceDelegateD::Robots::ScorbotIce::mm2enc(::Ice::Double mm, const ::Ice::Context* __context)
03569 {
03570     class _DirectI : public ::IceInternal::Direct
03571     {
03572     public:
03573 
03574         _DirectI(::Ice::Int& __result, ::Ice::Double mm, const ::Ice::Current& __current) :
03575             ::IceInternal::Direct(__current),
03576             _result(__result),
03577             _m_mm(mm)
03578         {
03579         }
03580 
03581         virtual ::Ice::DispatchStatus
03582         run(::Ice::Object* object)
03583         {
03584             ::Robots::ScorbotIce* servant = dynamic_cast< ::Robots::ScorbotIce*>(object);
03585             if(!servant)
03586             {
03587                 throw ::Ice::OperationNotExistException(__FILE__, __LINE__, _current.id, _current.facet, _current.operation);
03588             }
03589             _result = servant->mm2enc(_m_mm, _current);
03590             return ::Ice::DispatchOK;
03591         }
03592 
03593     private:
03594 
03595         ::Ice::Int& _result;
03596         ::Ice::Double _m_mm;
03597     };
03598 
03599     ::Ice::Current __current;
03600     __initCurrent(__current, __Robots__ScorbotIce__mm2enc_name, ::Ice::Normal, __context);
03601     ::Ice::Int __result;
03602     try
03603     {
03604         _DirectI __direct(__result, mm, __current);
03605         try
03606         {
03607             __direct.servant()->__collocDispatch(__direct);
03608         }
03609         catch(...)
03610         {
03611             __direct.destroy();
03612             throw;
03613         }
03614         __direct.destroy();
03615     }
03616     catch(const ::Ice::SystemException&)
03617     {
03618         throw;
03619     }
03620     catch(const ::IceInternal::LocalExceptionWrapper&)
03621     {
03622         throw;
03623     }
03624     catch(const ::std::exception& __ex)
03625     {
03626         ::IceInternal::LocalExceptionWrapper::throwWrapper(__ex);
03627     }
03628     catch(...)
03629     {
03630         throw ::IceInternal::LocalExceptionWrapper(::Ice::UnknownException(__FILE__, __LINE__, "unknown c++ exception"), false);
03631     }
03632     return __result;
03633 }
03634 
03635 ::Ice::ObjectPtr
03636 Robots::ScorbotIce::ice_clone() const
03637 {
03638     throw ::Ice::CloneNotImplementedException(__FILE__, __LINE__);
03639     return 0; // to avoid a warning with some compilers
03640 }
03641 
03642 static const ::std::string __Robots__ScorbotIce_ids[2] =
03643 {
03644     "::Ice::Object",
03645     "::Robots::ScorbotIce"
03646 };
03647 
03648 bool
03649 Robots::ScorbotIce::ice_isA(const ::std::string& _s, const ::Ice::Current&) const
03650 {
03651     return ::std::binary_search(__Robots__ScorbotIce_ids, __Robots__ScorbotIce_ids + 2, _s);
03652 }
03653 
03654 ::std::vector< ::std::string>
03655 Robots::ScorbotIce::ice_ids(const ::Ice::Current&) const
03656 {
03657     return ::std::vector< ::std::string>(&__Robots__ScorbotIce_ids[0], &__Robots__ScorbotIce_ids[2]);
03658 }
03659 
03660 const ::std::string&
03661 Robots::ScorbotIce::ice_id(const ::Ice::Current&) const
03662 {
03663     return __Robots__ScorbotIce_ids[1];
03664 }
03665 
03666 const ::std::string&
03667 Robots::ScorbotIce::ice_staticId()
03668 {
03669     return __Robots__ScorbotIce_ids[1];
03670 }
03671 
03672 ::Ice::DispatchStatus
03673 Robots::ScorbotIce::___getIK(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03674 {
03675     __checkMode(::Ice::Normal, __current.mode);
03676     ::IceInternal::BasicStream* __is = __inS.is();
03677     __is->startReadEncaps();
03678     ::Ice::Float x;
03679     ::Ice::Float y;
03680     ::Ice::Float z;
03681     __is->read(x);
03682     __is->read(y);
03683     __is->read(z);
03684     __is->endReadEncaps();
03685     ::IceInternal::BasicStream* __os = __inS.os();
03686     ::Robots::ArmPos __ret = getIK(x, y, z, __current);
03687     __ret.__write(__os);
03688     return ::Ice::DispatchOK;
03689 }
03690 
03691 ::Ice::DispatchStatus
03692 Robots::ScorbotIce::___getEFpos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03693 {
03694     __checkMode(::Ice::Normal, __current.mode);
03695     __inS.is()->skipEmptyEncaps();
03696     ::IceInternal::BasicStream* __os = __inS.os();
03697     ::Ice::Float x;
03698     ::Ice::Float y;
03699     ::Ice::Float z;
03700     bool __ret = getEFpos(x, y, z, __current);
03701     __os->write(x);
03702     __os->write(y);
03703     __os->write(z);
03704     __os->write(__ret);
03705     return ::Ice::DispatchOK;
03706 }
03707 
03708 ::Ice::DispatchStatus
03709 Robots::ScorbotIce::___setEFPos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03710 {
03711     __checkMode(::Ice::Normal, __current.mode);
03712     ::IceInternal::BasicStream* __is = __inS.is();
03713     __is->startReadEncaps();
03714     ::Ice::Float x;
03715     ::Ice::Float y;
03716     ::Ice::Float z;
03717     __is->read(x);
03718     __is->read(y);
03719     __is->read(z);
03720     __is->endReadEncaps();
03721     ::IceInternal::BasicStream* __os = __inS.os();
03722     bool __ret = setEFPos(x, y, z, __current);
03723     __os->write(__ret);
03724     return ::Ice::DispatchOK;
03725 }
03726 
03727 ::Ice::DispatchStatus
03728 Robots::ScorbotIce::___setMotor(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03729 {
03730     __checkMode(::Ice::Normal, __current.mode);
03731     ::IceInternal::BasicStream* __is = __inS.is();
03732     __is->startReadEncaps();
03733     ::Robots::JOINTS joint;
03734     ::Ice::Int pwm;
03735     ::Robots::__read(__is, joint);
03736     __is->read(pwm);
03737     __is->endReadEncaps();
03738     ::IceInternal::BasicStream* __os = __inS.os();
03739     bool __ret = setMotor(joint, pwm, __current);
03740     __os->write(__ret);
03741     return ::Ice::DispatchOK;
03742 }
03743 
03744 ::Ice::DispatchStatus
03745 Robots::ScorbotIce::___getPWM(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03746 {
03747     __checkMode(::Ice::Normal, __current.mode);
03748     ::IceInternal::BasicStream* __is = __inS.is();
03749     __is->startReadEncaps();
03750     ::Robots::JOINTS j;
03751     ::Robots::__read(__is, j);
03752     __is->endReadEncaps();
03753     ::IceInternal::BasicStream* __os = __inS.os();
03754     ::Ice::Int __ret = getPWM(j, __current);
03755     __os->write(__ret);
03756     return ::Ice::DispatchOK;
03757 }
03758 
03759 ::Ice::DispatchStatus
03760 Robots::ScorbotIce::___setJointPos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03761 {
03762     __checkMode(::Ice::Normal, __current.mode);
03763     ::IceInternal::BasicStream* __is = __inS.is();
03764     __is->startReadEncaps();
03765     ::Robots::JOINTS joint;
03766     ::Ice::Int pos;
03767     ::Robots::__read(__is, joint);
03768     __is->read(pos);
03769     __is->endReadEncaps();
03770     ::IceInternal::BasicStream* __os = __inS.os();
03771     bool __ret = setJointPos(joint, pos, __current);
03772     __os->write(__ret);
03773     return ::Ice::DispatchOK;
03774 }
03775 
03776 ::Ice::DispatchStatus
03777 Robots::ScorbotIce::___getJointPos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03778 {
03779     __checkMode(::Ice::Normal, __current.mode);
03780     ::IceInternal::BasicStream* __is = __inS.is();
03781     __is->startReadEncaps();
03782     ::Robots::JOINTS joint;
03783     ::Robots::__read(__is, joint);
03784     __is->endReadEncaps();
03785     ::IceInternal::BasicStream* __os = __inS.os();
03786     ::Ice::Int __ret = getJointPos(joint, __current);
03787     __os->write(__ret);
03788     return ::Ice::DispatchOK;
03789 }
03790 
03791 ::Ice::DispatchStatus
03792 Robots::ScorbotIce::___getEncoderAng(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03793 {
03794     __checkMode(::Ice::Normal, __current.mode);
03795     ::IceInternal::BasicStream* __is = __inS.is();
03796     __is->startReadEncaps();
03797     ::Robots::JOINTS joint;
03798     ::Robots::__read(__is, joint);
03799     __is->endReadEncaps();
03800     ::IceInternal::BasicStream* __os = __inS.os();
03801     ::Ice::Float __ret = getEncoderAng(joint, __current);
03802     __os->write(__ret);
03803     return ::Ice::DispatchOK;
03804 }
03805 
03806 ::Ice::DispatchStatus
03807 Robots::ScorbotIce::___resetEncoders(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03808 {
03809     __checkMode(::Ice::Normal, __current.mode);
03810     __inS.is()->skipEmptyEncaps();
03811     resetEncoders(__current);
03812     return ::Ice::DispatchOK;
03813 }
03814 
03815 ::Ice::DispatchStatus
03816 Robots::ScorbotIce::___stopAllMotors(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03817 {
03818     __checkMode(::Ice::Normal, __current.mode);
03819     __inS.is()->skipEmptyEncaps();
03820     stopAllMotors(__current);
03821     return ::Ice::DispatchOK;
03822 }
03823 
03824 ::Ice::DispatchStatus
03825 Robots::ScorbotIce::___setSafety(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03826 {
03827     __checkMode(::Ice::Normal, __current.mode);
03828     ::IceInternal::BasicStream* __is = __inS.is();
03829     __is->startReadEncaps();
03830     bool val;
03831     __is->read(val);
03832     __is->endReadEncaps();
03833     setSafety(val, __current);
03834     return ::Ice::DispatchOK;
03835 }
03836 
03837 ::Ice::DispatchStatus
03838 Robots::ScorbotIce::___getMovementTime(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03839 {
03840     __checkMode(::Ice::Normal, __current.mode);
03841     __inS.is()->skipEmptyEncaps();
03842     ::IceInternal::BasicStream* __os = __inS.os();
03843     ::Ice::Int __ret = getMovementTime(__current);
03844     __os->write(__ret);
03845     return ::Ice::DispatchOK;
03846 }
03847 
03848 ::Ice::DispatchStatus
03849 Robots::ScorbotIce::___homeMotor(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03850 {
03851     __checkMode(::Ice::Normal, __current.mode);
03852     ::IceInternal::BasicStream* __is = __inS.is();
03853     __is->startReadEncaps();
03854     ::Robots::JOINTS joint;
03855     ::Ice::Int LimitSeekSpeed;
03856     ::Ice::Int MSJumpSpeed;
03857     ::Ice::Float MSJumpDelay;
03858     ::Ice::Int MSSeekSpeed;
03859     bool MSStopCondition;
03860     bool checkMS;
03861     ::Robots::__read(__is, joint);
03862     __is->read(LimitSeekSpeed);
03863     __is->read(MSJumpSpeed);
03864     __is->read(MSJumpDelay);
03865     __is->read(MSSeekSpeed);
03866     __is->read(MSStopCondition);
03867     __is->read(checkMS);
03868     __is->endReadEncaps();
03869     homeMotor(joint, LimitSeekSpeed, MSJumpSpeed, MSJumpDelay, MSSeekSpeed, MSStopCondition, checkMS, __current);
03870     return ::Ice::DispatchOK;
03871 }
03872 
03873 ::Ice::DispatchStatus
03874 Robots::ScorbotIce::___homeMotors(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03875 {
03876     __checkMode(::Ice::Normal, __current.mode);
03877     __inS.is()->skipEmptyEncaps();
03878     homeMotors(__current);
03879     return ::Ice::DispatchOK;
03880 }
03881 
03882 ::Ice::DispatchStatus
03883 Robots::ScorbotIce::___getMicroSwitch(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03884 {
03885     __checkMode(::Ice::Normal, __current.mode);
03886     __inS.is()->skipEmptyEncaps();
03887     ::IceInternal::BasicStream* __os = __inS.os();
03888     ::Ice::Int __ret = getMicroSwitch(__current);
03889     __os->write(__ret);
03890     return ::Ice::DispatchOK;
03891 }
03892 
03893 ::Ice::DispatchStatus
03894 Robots::ScorbotIce::___getMicroSwitchMotor(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03895 {
03896     __checkMode(::Ice::Normal, __current.mode);
03897     ::IceInternal::BasicStream* __is = __inS.is();
03898     __is->startReadEncaps();
03899     ::Robots::JOINTS m;
03900     ::Robots::__read(__is, m);
03901     __is->endReadEncaps();
03902     ::IceInternal::BasicStream* __os = __inS.os();
03903     ::Ice::Int __ret = getMicroSwitchMotor(m, __current);
03904     __os->write(__ret);
03905     return ::Ice::DispatchOK;
03906 }
03907 
03908 ::Ice::DispatchStatus
03909 Robots::ScorbotIce::___setArmPos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03910 {
03911     __checkMode(::Ice::Normal, __current.mode);
03912     ::IceInternal::BasicStream* __is = __inS.is();
03913     __is->startReadEncaps();
03914     ::Robots::ArmPos pos;
03915     pos.__read(__is);
03916     __is->endReadEncaps();
03917     ::IceInternal::BasicStream* __os = __inS.os();
03918     bool __ret = setArmPos(pos, __current);
03919     __os->write(__ret);
03920     return ::Ice::DispatchOK;
03921 }
03922 
03923 ::Ice::DispatchStatus
03924 Robots::ScorbotIce::___getArmPos(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03925 {
03926     __checkMode(::Ice::Normal, __current.mode);
03927     __inS.is()->skipEmptyEncaps();
03928     ::IceInternal::BasicStream* __os = __inS.os();
03929     ::Robots::ArmPos __ret = getArmPos(__current);
03930     __ret.__write(__os);
03931     return ::Ice::DispatchOK;
03932 }
03933 
03934 ::Ice::DispatchStatus
03935 Robots::ScorbotIce::___motorsOn(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03936 {
03937     __checkMode(::Ice::Normal, __current.mode);
03938     __inS.is()->skipEmptyEncaps();
03939     motorsOn(__current);
03940     return ::Ice::DispatchOK;
03941 }
03942 
03943 ::Ice::DispatchStatus
03944 Robots::ScorbotIce::___motorsOff(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03945 {
03946     __checkMode(::Ice::Normal, __current.mode);
03947     __inS.is()->skipEmptyEncaps();
03948     motorsOff(__current);
03949     return ::Ice::DispatchOK;
03950 }
03951 
03952 ::Ice::DispatchStatus
03953 Robots::ScorbotIce::___shutdown(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03954 {
03955     __checkMode(::Ice::Normal, __current.mode);
03956     __inS.is()->skipEmptyEncaps();
03957     shutdown(__current);
03958     return ::Ice::DispatchOK;
03959 }
03960 
03961 ::Ice::DispatchStatus
03962 Robots::ScorbotIce::___enc2ang(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03963 {
03964     __checkMode(::Ice::Normal, __current.mode);
03965     ::IceInternal::BasicStream* __is = __inS.is();
03966     __is->startReadEncaps();
03967     ::Ice::Int encoderTicks;
03968     __is->read(encoderTicks);
03969     __is->endReadEncaps();
03970     ::IceInternal::BasicStream* __os = __inS.os();
03971     ::Ice::Double __ret = enc2ang(encoderTicks, __current);
03972     __os->write(__ret);
03973     return ::Ice::DispatchOK;
03974 }
03975 
03976 ::Ice::DispatchStatus
03977 Robots::ScorbotIce::___ang2enc(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03978 {
03979     __checkMode(::Ice::Normal, __current.mode);
03980     ::IceInternal::BasicStream* __is = __inS.is();
03981     __is->startReadEncaps();
03982     ::Ice::Double degrees;
03983     __is->read(degrees);
03984     __is->endReadEncaps();
03985     ::IceInternal::BasicStream* __os = __inS.os();
03986     ::Ice::Int __ret = ang2enc(degrees, __current);
03987     __os->write(__ret);
03988     return ::Ice::DispatchOK;
03989 }
03990 
03991 ::Ice::DispatchStatus
03992 Robots::ScorbotIce::___enc2mm(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
03993 {
03994     __checkMode(::Ice::Normal, __current.mode);
03995     ::IceInternal::BasicStream* __is = __inS.is();
03996     __is->startReadEncaps();
03997     ::Ice::Int encoderTicks;
03998     __is->read(encoderTicks);
03999     __is->endReadEncaps();
04000     ::IceInternal::BasicStream* __os = __inS.os();
04001     ::Ice::Double __ret = enc2mm(encoderTicks, __current);
04002     __os->write(__ret);
04003     return ::Ice::DispatchOK;
04004 }
04005 
04006 ::Ice::DispatchStatus
04007 Robots::ScorbotIce::___mm2enc(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)
04008 {
04009     __checkMode(::Ice::Normal, __current.mode);
04010     ::IceInternal::BasicStream* __is = __inS.is();
04011     __is->startReadEncaps();
04012     ::Ice::Double mm;
04013     __is->read(mm);
04014     __is->endReadEncaps();
04015     ::IceInternal::BasicStream* __os = __inS.os();
04016     ::Ice::Int __ret = mm2enc(mm, __current);
04017     __os->write(__ret);
04018     return ::Ice::DispatchOK;
04019 }
04020 
04021 static ::std::string __Robots__ScorbotIce_all[] =
04022 {
04023     "ang2enc",
04024     "enc2ang",
04025     "enc2mm",
04026     "getArmPos",
04027     "getEFpos",
04028     "getEncoderAng",
04029     "getIK",
04030     "getJointPos",
04031     "getMicroSwitch",
04032     "getMicroSwitchMotor",
04033     "getMovementTime",
04034     "getPWM",
04035     "homeMotor",
04036     "homeMotors",
04037     "ice_id",
04038     "ice_ids",
04039     "ice_isA",
04040     "ice_ping",
04041     "mm2enc",
04042     "motorsOff",
04043     "motorsOn",
04044     "resetEncoders",
04045     "setArmPos",
04046     "setEFPos",
04047     "setJointPos",
04048     "setMotor",
04049     "setSafety",
04050     "shutdown",
04051     "stopAllMotors"
04052 };
04053 
04054 ::Ice::DispatchStatus
04055 Robots::ScorbotIce::__dispatch(::IceInternal::Incoming& in, const ::Ice::Current& current)
04056 {
04057     ::std::pair< ::std::string*, ::std::string*> r = ::std::equal_range(__Robots__ScorbotIce_all, __Robots__ScorbotIce_all + 29, current.operation);
04058     if(r.first == r.second)
04059     {
04060         throw ::Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
04061     }
04062 
04063     switch(r.first - __Robots__ScorbotIce_all)
04064     {
04065         case 0:
04066         {
04067             return ___ang2enc(in, current);
04068         }
04069         case 1:
04070         {
04071             return ___enc2ang(in, current);
04072         }
04073         case 2:
04074         {
04075             return ___enc2mm(in, current);
04076         }
04077         case 3:
04078         {
04079             return ___getArmPos(in, current);
04080         }
04081         case 4:
04082         {
04083             return ___getEFpos(in, current);
04084         }
04085         case 5:
04086         {
04087             return ___getEncoderAng(in, current);
04088         }
04089         case 6:
04090         {
04091             return ___getIK(in, current);
04092         }
04093         case 7:
04094         {
04095             return ___getJointPos(in, current);
04096         }
04097         case 8:
04098         {
04099             return ___getMicroSwitch(in, current);
04100         }
04101         case 9:
04102         {
04103             return ___getMicroSwitchMotor(in, current);
04104         }
04105         case 10:
04106         {
04107             return ___getMovementTime(in, current);
04108         }
04109         case 11:
04110         {
04111             return ___getPWM(in, current);
04112         }
04113         case 12:
04114         {
04115             return ___homeMotor(in, current);
04116         }
04117         case 13:
04118         {
04119             return ___homeMotors(in, current);
04120         }
04121         case 14:
04122         {
04123             return ___ice_id(in, current);
04124         }
04125         case 15:
04126         {
04127             return ___ice_ids(in, current);
04128         }
04129         case 16:
04130         {
04131             return ___ice_isA(in, current);
04132         }
04133         case 17:
04134         {
04135             return ___ice_ping(in, current);
04136         }
04137         case 18:
04138         {
04139             return ___mm2enc(in, current);
04140         }
04141         case 19:
04142         {
04143             return ___motorsOff(in, current);
04144         }
04145         case 20:
04146         {
04147             return ___motorsOn(in, current);
04148         }
04149         case 21:
04150         {
04151             return ___resetEncoders(in, current);
04152         }
04153         case 22:
04154         {
04155             return ___setArmPos(in, current);
04156         }
04157         case 23:
04158         {
04159             return ___setEFPos(in, current);
04160         }
04161         case 24:
04162         {
04163             return ___setJointPos(in, current);
04164         }
04165         case 25:
04166         {
04167             return ___setMotor(in, current);
04168         }
04169         case 26:
04170         {
04171             return ___setSafety(in, current);
04172         }
04173         case 27:
04174         {
04175             return ___shutdown(in, current);
04176         }
04177         case 28:
04178         {
04179             return ___stopAllMotors(in, current);
04180         }
04181     }
04182 
04183     assert(false);
04184     throw ::Ice::OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
04185 }
04186 
04187 void
04188 Robots::ScorbotIce::__write(::IceInternal::BasicStream* __os) const
04189 {
04190     __os->writeTypeId(ice_staticId());
04191     __os->startWriteSlice();
04192     __os->endWriteSlice();
04193 #if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug
04194     Object::__write(__os);
04195 #else
04196     ::Ice::Object::__write(__os);
04197 #endif
04198 }
04199 
04200 void
04201 Robots::ScorbotIce::__read(::IceInternal::BasicStream* __is, bool __rid)
04202 {
04203     if(__rid)
04204     {
04205         ::std::string myId;
04206         __is->readTypeId(myId);
04207     }
04208     __is->startReadSlice();
04209     __is->endReadSlice();
04210 #if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug
04211     Object::__read(__is, true);
04212 #else
04213     ::Ice::Object::__read(__is, true);
04214 #endif
04215 }
04216 
04217 void
04218 Robots::ScorbotIce::__write(const ::Ice::OutputStreamPtr&) const
04219 {
04220     Ice::MarshalException ex(__FILE__, __LINE__);
04221     ex.reason = "type Robots::ScorbotIce was not generated with stream support";
04222     throw ex;
04223 }
04224 
04225 void
04226 Robots::ScorbotIce::__read(const ::Ice::InputStreamPtr&, bool)
04227 {
04228     Ice::MarshalException ex(__FILE__, __LINE__);
04229     ex.reason = "type Robots::ScorbotIce was not generated with stream support";
04230     throw ex;
04231 }
04232 
04233 void
04234 Robots::__patch__ScorbotIcePtr(void* __addr, ::Ice::ObjectPtr& v)
04235 {
04236     ::Robots::ScorbotIcePtr* p = static_cast< ::Robots::ScorbotIcePtr*>(__addr);
04237     assert(p);
04238     *p = ::Robots::ScorbotIcePtr::dynamicCast(v);
04239     if(v && !*p)
04240     {
04241         IceInternal::Ex::throwUOE(::Robots::ScorbotIce::ice_staticId(), v->ice_id());
04242     }
04243 }
04244 
04245 bool
04246 Robots::operator==(const ::Robots::ScorbotIce& l, const ::Robots::ScorbotIce& r)
04247 {
04248     return static_cast<const ::Ice::Object&>(l) == static_cast<const ::Ice::Object&>(r);
04249 }
04250 
04251 bool
04252 Robots::operator<(const ::Robots::ScorbotIce& l, const ::Robots::ScorbotIce& r)
04253 {
04254     return static_cast<const ::Ice::Object&>(l) < static_cast<const ::Ice::Object&>(r);
04255 }
Generated on Sun May 8 08:05:01 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3