// This file is generated by omniidl (C++ backend) - omniORB_4_1. Do not edit.

#include "Rmp.hh"

OMNI_USING_NAMESPACE(omni)

static const char* _0RL_dyn_library_version = omniORB_4_1_dyn;

static ::CORBA::TypeCode::_Tracker _0RL_tcTrack(__FILE__);

static CORBA::PR_structMember _0RL_structmember_RTC_mTime[] = {
  {"sec", CORBA::TypeCode::PR_ulong_tc()},
  {"nsec", CORBA::TypeCode::PR_ulong_tc()}
};

#ifdef _0RL_tc_RTC_mTime
#  undef _0RL_tc_RTC_mTime
#endif
static CORBA::TypeCode_ptr _0RL_tc_RTC_mTime = CORBA::TypeCode::PR_struct_tc("IDL:RTC/Time:1.0", "Time", _0RL_structmember_RTC_mTime, 2, &_0RL_tcTrack);

static CORBA::PR_structMember _0RL_structmember_RTC_mTimedVelocity[] = {
  {"tm", _0RL_tc_RTC_mTime},
  {"id", CORBA::TypeCode::PR_sequence_tc(0, CORBA::TypeCode::PR_long_tc(), &_0RL_tcTrack)},
  {"vx", CORBA::TypeCode::PR_double_tc()},
  {"vy", CORBA::TypeCode::PR_double_tc()},
  {"w", CORBA::TypeCode::PR_double_tc()},
  {"error", CORBA::TypeCode::PR_sequence_tc(0, CORBA::TypeCode::PR_double_tc(), &_0RL_tcTrack)}
};

#ifdef _0RL_tc_RTC_mTimedVelocity
#  undef _0RL_tc_RTC_mTimedVelocity
#endif
static CORBA::TypeCode_ptr _0RL_tc_RTC_mTimedVelocity = CORBA::TypeCode::PR_struct_tc("IDL:RTC/TimedVelocity:1.0", "TimedVelocity", _0RL_structmember_RTC_mTimedVelocity, 6, &_0RL_tcTrack);


#if defined(HAS_Cplusplus_Namespace) && defined(_MSC_VER)
// MSVC++ does not give the constant external linkage otherwise.
namespace RTC { 
  const ::CORBA::TypeCode_ptr _tc_TimedVelocity = _0RL_tc_RTC_mTimedVelocity;
} 
#else
const ::CORBA::TypeCode_ptr RTC::_tc_TimedVelocity = _0RL_tc_RTC_mTimedVelocity;
#endif



static CORBA::PR_structMember _0RL_structmember_RTC_mTimedPosition[] = {
  {"tm", _0RL_tc_RTC_mTime},
  {"id", CORBA::TypeCode::PR_sequence_tc(0, CORBA::TypeCode::PR_long_tc(), &_0RL_tcTrack)},
  {"x", CORBA::TypeCode::PR_double_tc()},
  {"y", CORBA::TypeCode::PR_double_tc()},
  {"theta", CORBA::TypeCode::PR_double_tc()},
  {"error", CORBA::TypeCode::PR_sequence_tc(0, CORBA::TypeCode::PR_double_tc(), &_0RL_tcTrack)}
};

#ifdef _0RL_tc_RTC_mTimedPosition
#  undef _0RL_tc_RTC_mTimedPosition
#endif
static CORBA::TypeCode_ptr _0RL_tc_RTC_mTimedPosition = CORBA::TypeCode::PR_struct_tc("IDL:RTC/TimedPosition:1.0", "TimedPosition", _0RL_structmember_RTC_mTimedPosition, 6, &_0RL_tcTrack);


#if defined(HAS_Cplusplus_Namespace) && defined(_MSC_VER)
// MSVC++ does not give the constant external linkage otherwise.
namespace RTC { 
  const ::CORBA::TypeCode_ptr _tc_TimedPosition = _0RL_tc_RTC_mTimedPosition;
} 
#else
const ::CORBA::TypeCode_ptr RTC::_tc_TimedPosition = _0RL_tc_RTC_mTimedPosition;
#endif


static void _0RL_RTC_mTimedVelocity_marshal_fn(cdrStream& _s, void* _v)
{
  RTC::TimedVelocity* _p = (RTC::TimedVelocity*)_v;
  *_p >>= _s;
}
static void _0RL_RTC_mTimedVelocity_unmarshal_fn(cdrStream& _s, void*& _v)
{
  RTC::TimedVelocity* _p = new RTC::TimedVelocity;
  *_p <<= _s;
  _v = _p;
}
static void _0RL_RTC_mTimedVelocity_destructor_fn(void* _v)
{
  RTC::TimedVelocity* _p = (RTC::TimedVelocity*)_v;
  delete _p;
}

void operator<<=(::CORBA::Any& _a, const RTC::TimedVelocity& _s)
{
  RTC::TimedVelocity* _p = new RTC::TimedVelocity(_s);
  _a.PR_insert(_0RL_tc_RTC_mTimedVelocity,
               _0RL_RTC_mTimedVelocity_marshal_fn,
               _0RL_RTC_mTimedVelocity_destructor_fn,
               _p);
}
void operator<<=(::CORBA::Any& _a, RTC::TimedVelocity* _sp)
{
  _a.PR_insert(_0RL_tc_RTC_mTimedVelocity,
               _0RL_RTC_mTimedVelocity_marshal_fn,
               _0RL_RTC_mTimedVelocity_destructor_fn,
               _sp);
}

::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, RTC::TimedVelocity*& _sp)
{
  return _a >>= (const RTC::TimedVelocity*&) _sp;
}
::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, const RTC::TimedVelocity*& _sp)
{
  void* _v;
  if (_a.PR_extract(_0RL_tc_RTC_mTimedVelocity,
                    _0RL_RTC_mTimedVelocity_unmarshal_fn,
                    _0RL_RTC_mTimedVelocity_marshal_fn,
                    _0RL_RTC_mTimedVelocity_destructor_fn,
                    _v)) {
    _sp = (const RTC::TimedVelocity*)_v;
    return 1;
  }
  return 0;
}

static void _0RL_RTC_mTimedPosition_marshal_fn(cdrStream& _s, void* _v)
{
  RTC::TimedPosition* _p = (RTC::TimedPosition*)_v;
  *_p >>= _s;
}
static void _0RL_RTC_mTimedPosition_unmarshal_fn(cdrStream& _s, void*& _v)
{
  RTC::TimedPosition* _p = new RTC::TimedPosition;
  *_p <<= _s;
  _v = _p;
}
static void _0RL_RTC_mTimedPosition_destructor_fn(void* _v)
{
  RTC::TimedPosition* _p = (RTC::TimedPosition*)_v;
  delete _p;
}

void operator<<=(::CORBA::Any& _a, const RTC::TimedPosition& _s)
{
  RTC::TimedPosition* _p = new RTC::TimedPosition(_s);
  _a.PR_insert(_0RL_tc_RTC_mTimedPosition,
               _0RL_RTC_mTimedPosition_marshal_fn,
               _0RL_RTC_mTimedPosition_destructor_fn,
               _p);
}
void operator<<=(::CORBA::Any& _a, RTC::TimedPosition* _sp)
{
  _a.PR_insert(_0RL_tc_RTC_mTimedPosition,
               _0RL_RTC_mTimedPosition_marshal_fn,
               _0RL_RTC_mTimedPosition_destructor_fn,
               _sp);
}

::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, RTC::TimedPosition*& _sp)
{
  return _a >>= (const RTC::TimedPosition*&) _sp;
}
::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, const RTC::TimedPosition*& _sp)
{
  void* _v;
  if (_a.PR_extract(_0RL_tc_RTC_mTimedPosition,
                    _0RL_RTC_mTimedPosition_unmarshal_fn,
                    _0RL_RTC_mTimedPosition_marshal_fn,
                    _0RL_RTC_mTimedPosition_destructor_fn,
                    _v)) {
    _sp = (const RTC::TimedPosition*)_v;
    return 1;
  }
  return 0;
}

