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

#include "BatteryWatcher.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_BatteryAlert = CORBA::TypeCode::PR_interface_tc("IDL:BatteryAlert:1.0", "BatteryAlert", &_0RL_tcTrack);

static void _0RL_BatteryAlert_marshal_fn(cdrStream& _s, void* _v)
{
  omniObjRef* _o = (omniObjRef*)_v;
  omniObjRef::_marshal(_o, _s);
}
static void _0RL_BatteryAlert_unmarshal_fn(cdrStream& _s, void*& _v)
{
  omniObjRef* _o = omniObjRef::_unMarshal(BatteryAlert::_PD_repoId, _s);
  _v = _o;
}
static void _0RL_BatteryAlert_destructor_fn(void* _v)
{
  omniObjRef* _o = (omniObjRef*)_v;
  if (_o)
    omni::releaseObjRef(_o);
}

void operator<<=(::CORBA::Any& _a, BatteryAlert_ptr _o)
{
  BatteryAlert_ptr _no = BatteryAlert::_duplicate(_o);
  _a.PR_insert(_tc_BatteryAlert,
               _0RL_BatteryAlert_marshal_fn,
               _0RL_BatteryAlert_destructor_fn,
               _no->_PR_getobj());
}
void operator<<=(::CORBA::Any& _a, BatteryAlert_ptr* _op)
{
  _a.PR_insert(_tc_BatteryAlert,
               _0RL_BatteryAlert_marshal_fn,
               _0RL_BatteryAlert_destructor_fn,
               (*_op)->_PR_getobj());
  *_op = BatteryAlert::_nil();
}

::CORBA::Boolean operator>>=(const ::CORBA::Any& _a, BatteryAlert_ptr& _o)
{
  void* _v;
  if (_a.PR_extract(_tc_BatteryAlert,
                    _0RL_BatteryAlert_unmarshal_fn,
                    _0RL_BatteryAlert_marshal_fn,
                    _0RL_BatteryAlert_destructor_fn,
                    _v)) {
    omniObjRef* _r = (omniObjRef*)_v;
    if (_r)
      _o = (BatteryAlert_ptr)_r->_ptrToObjRef(BatteryAlert::_PD_repoId);
    else
      _o = BatteryAlert::_nil();
    return 1;
  }
  return 0;
}

