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

#include "sound.hh"

OMNI_USING_NAMESPACE(omni)

static const char* _0RL_dyn_library_version = omniORB_4_1_dyn;

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

const CORBA::TypeCode_ptr _tc_PlaySound = CORBA::TypeCode::PR_interface_tc("IDL:PlaySound:1.0", "PlaySound", &_0RL_tcTrack);

static void _0RL_PlaySound_marshal_fn(cdrStream& _s, void* _v)
{
  omniObjRef* _o = (omniObjRef*)_v;
  omniObjRef::_marshal(_o, _s);
}
static void _0RL_PlaySound_unmarshal_fn(cdrStream& _s, void*& _v)
{
  omniObjRef* _o = omniObjRef::_unMarshal(PlaySound::_PD_repoId, _s);
  _v = _o;
}
static void _0RL_PlaySound_destructor_fn(void* _v)
{
  omniObjRef* _o = (omniObjRef*)_v;
  if (_o)
    omni::releaseObjRef(_o);
}

void operator<<=(::CORBA::Any& _a, PlaySound_ptr _o)
{
  PlaySound_ptr _no = PlaySound::_duplicate(_o);
  _a.PR_insert(_tc_PlaySound,
               _0RL_PlaySound_marshal_fn,
               _0RL_PlaySound_destructor_fn,
               _no->_PR_getobj());
}
void operator<<=(::CORBA::Any& _a, PlaySound_ptr* _op)
{
  _a.PR_insert(_tc_PlaySound,
               _0RL_PlaySound_marshal_fn,
               _0RL_PlaySound_destructor_fn,
               (*_op)->_PR_getobj());
  *_op = PlaySound::_nil();
}

::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, PlaySound_ptr& _o)
{
  void* _v;
  if (_a.PR_extract(_tc_PlaySound,
                    _0RL_PlaySound_unmarshal_fn,
                    _0RL_PlaySound_marshal_fn,
                    _0RL_PlaySound_destructor_fn,
                    _v)) {
    omniObjRef* _r = (omniObjRef*)_v;
    if (_r)
      _o = (PlaySound_ptr)_r->_ptrToObjRef(PlaySound::_PD_repoId);
    else
      _o = PlaySound::_nil();
    return 1;
  }
  return 0;
}

