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

#ifndef __CORBA_H_EXTERNAL_GUARD__
#include <omniORB4/CORBA.h>
#endif

#ifndef  USE_stub_in_nt_dll
# define USE_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif
#ifndef  USE_core_stub_in_nt_dll
# define USE_core_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif
#ifndef  USE_dyn_stub_in_nt_dll
# define USE_dyn_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif






#ifdef USE_stub_in_nt_dll
# ifndef USE_core_stub_in_nt_dll
#  define USE_core_stub_in_nt_dll
# endif
# ifndef USE_dyn_stub_in_nt_dll
#  define USE_dyn_stub_in_nt_dll
# endif
#endif

#ifdef _core_attr
# error "A local CPP macro _core_attr has already been defined."
#else
# ifdef  USE_core_stub_in_nt_dll
#  define _core_attr _OMNIORB_NTDLL_IMPORT
# else
#  define _core_attr
# endif
#endif

#ifdef _dyn_attr
# error "A local CPP macro _dyn_attr has already been defined."
#else
# ifdef  USE_dyn_stub_in_nt_dll
#  define _dyn_attr _OMNIORB_NTDLL_IMPORT
# else
#  define _dyn_attr
# endif
#endif



#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_128__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_128__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_128;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_256__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_256__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_256;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_32__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_32__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_32;
#endif

#if !defined(___tc_string_128__) && !defined(DISABLE_Unnamed_Bounded_String_TC)
#define ___tc_string_128__
_CORBA_GLOBAL_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_string_128;
#endif



_CORBA_MODULE UDASCamera

_CORBA_MODULE_BEG

  class ErrorInfo : public ::CORBA::UserException {
  public:
    
    ::CORBA::String_member Info;

  

    inline ErrorInfo() {
      pd_insertToAnyFn    = insertToAnyFn;
      pd_insertToAnyFnNCP = insertToAnyFnNCP;
    }
    ErrorInfo(const ErrorInfo&);
    ErrorInfo(const char* i_Info);
    ErrorInfo& operator=(const ErrorInfo&);
    virtual ~ErrorInfo();
    virtual void _raise() const;
    static ErrorInfo* _downcast(::CORBA::Exception*);
    static const ErrorInfo* _downcast(const ::CORBA::Exception*);
    static inline ErrorInfo* _narrow(::CORBA::Exception* _e) {
      return _downcast(_e);
    }
    
    void operator>>=(cdrStream&) const ;
    void operator<<=(cdrStream&) ;

    static _core_attr insertExceptionToAny    insertToAnyFn;
    static _core_attr insertExceptionToAnyNCP insertToAnyFnNCP;

    virtual ::CORBA::Exception* _NP_duplicate() const;

    static _core_attr const char* _PD_repoId;
    static _core_attr const char* _PD_typeId;

  private:
    virtual const char* _NP_typeId() const;
    virtual const char* _NP_repoId(int*) const;
    virtual void _NP_marshal(cdrStream&) const;
  };

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_ErrorInfo;

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_Image;

  class Image_var;

  class Image : public _CORBA_Unbounded_Sequence_w_FixSizeElement< ::CORBA::UShort, 2, 2 >  {
  public:
    typedef Image_var _var_type;
    inline Image() {}
    inline Image(const Image& _s)
      : _CORBA_Unbounded_Sequence_w_FixSizeElement< ::CORBA::UShort, 2, 2 > (_s) {}

    inline Image(_CORBA_ULong _max)
      : _CORBA_Unbounded_Sequence_w_FixSizeElement< ::CORBA::UShort, 2, 2 > (_max) {}
    inline Image(_CORBA_ULong _max, _CORBA_ULong _len, ::CORBA::UShort* _val, _CORBA_Boolean _rel=0)
      : _CORBA_Unbounded_Sequence_w_FixSizeElement< ::CORBA::UShort, 2, 2 > (_max, _len, _val, _rel) {}

  

    inline Image& operator = (const Image& _s) {
      _CORBA_Unbounded_Sequence_w_FixSizeElement< ::CORBA::UShort, 2, 2 > ::operator=(_s);
      return *this;
    }
  };

  class Image_out;

  class Image_var {
  public:
    inline Image_var() : _pd_seq(0) {}
    inline Image_var(Image* _s) : _pd_seq(_s) {}
    inline Image_var(const Image_var& _s) {
      if( _s._pd_seq )  _pd_seq = new Image(*_s._pd_seq);
      else              _pd_seq = 0;
    }
    inline ~Image_var() { if( _pd_seq )  delete _pd_seq; }
      
    inline Image_var& operator = (Image* _s) {
      if( _pd_seq )  delete _pd_seq;
      _pd_seq = _s;
      return *this;
    }
    inline Image_var& operator = (const Image_var& _s) {
      if( _s._pd_seq ) {
        if( !_pd_seq )  _pd_seq = new Image;
        *_pd_seq = *_s._pd_seq;
      } else if( _pd_seq ) {
        delete _pd_seq;
        _pd_seq = 0;
      }
      return *this;
    }
    inline ::CORBA::UShort& operator [] (_CORBA_ULong _s) {
      return (*_pd_seq)[_s];
    }

  

    inline Image* operator -> () { return _pd_seq; }
    inline const Image* operator -> () const { return _pd_seq; }
#if defined(__GNUG__)
    inline operator Image& () const { return *_pd_seq; }
#else
    inline operator const Image& () const { return *_pd_seq; }
    inline operator Image& () { return *_pd_seq; }
#endif
      
    inline const Image& in() const { return *_pd_seq; }
    inline Image&       inout()    { return *_pd_seq; }
    inline Image*&      out() {
      if( _pd_seq ) { delete _pd_seq; _pd_seq = 0; }
      return _pd_seq;
    }
    inline Image* _retn() { Image* tmp = _pd_seq; _pd_seq = 0; return tmp; }
      
    friend class Image_out;
    
  private:
    Image* _pd_seq;
  };

  class Image_out {
  public:
    inline Image_out(Image*& _s) : _data(_s) { _data = 0; }
    inline Image_out(Image_var& _s)
      : _data(_s._pd_seq) { _s = (Image*) 0; }
    inline Image_out(const Image_out& _s) : _data(_s._data) {}
    inline Image_out& operator = (const Image_out& _s) {
      _data = _s._data;
      return *this;
    }
    inline Image_out& operator = (Image* _s) {
      _data = _s;
      return *this;
    }
    inline operator Image*&()  { return _data; }
    inline Image*& ptr()       { return _data; }
    inline Image* operator->() { return _data; }

    inline ::CORBA::UShort& operator [] (_CORBA_ULong _i) {
      return (*_data)[_i];
    }

  

    Image*& _data;

  private:
    Image_out();
    Image_out& operator=(const Image_var&);
  };

  struct GrabData {
    typedef _CORBA_ConstrType_Variable_Var<GrabData> _var_type;

    
    Image GrabImage;

    ::CORBA::Float integration_time;

    ::CORBA::UShort x;

    ::CORBA::UShort y;

  

    void operator>>= (cdrStream &) const;
    void operator<<= (cdrStream &);
  };

  typedef GrabData::_var_type GrabData_var;

  typedef _CORBA_ConstrType_Variable_OUT_arg< GrabData,GrabData_var > GrabData_out;

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_GrabData;

  struct MeritData {
    typedef _CORBA_ConstrType_Fix_Var<MeritData> _var_type;

    
    ::CORBA::Double integration_time;

    ::CORBA::Double merit;

    ::CORBA::Double max;

    ::CORBA::Double sum;

  

    void operator>>= (cdrStream &) const;
    void operator<<= (cdrStream &);
  };

  typedef MeritData::_var_type MeritData_var;

  typedef MeritData& MeritData_out;

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_MeritData;

  struct RunProgress {
    typedef _CORBA_ConstrType_Fix_Var<RunProgress> _var_type;

    
    ::CORBA::ULong run_no;

    ::CORBA::UShort readout_pc;

    ::CORBA::UShort process_pc;

    ::CORBA::UShort archive_pc;

  

    void operator>>= (cdrStream &) const;
    void operator<<= (cdrStream &);
  };

  typedef RunProgress::_var_type RunProgress_var;

  typedef RunProgress& RunProgress_out;

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_RunProgress;

  struct CameraStatus {
    typedef _CORBA_ConstrType_Variable_Var<CameraStatus> _var_type;

    
    ::CORBA::UShort N_CLEARREADS;

    ::CORBA::String_member CAMERA_NAME;

    ::CORBA::String_member INSTRUMENT_NAME;

    ::CORBA::String_member TELESCOPE_NAME;

    ::CORBA::String_member HOST_NAME;

    ::CORBA::String_member CLOCKS_ACTIVITY;

    ::CORBA::String_member SHUTTER_STATE;

    ::CORBA::Double T_DEMAND;

    ::CORBA::Double T_ELAPSED;

    ::CORBA::Double T_EXPOSED;

    ::CORBA::String_member T_START;

    ::CORBA::String_member T_OPEN;

    ::CORBA::String_member T_READ;

    RunProgress RUN_0;

    RunProgress RUN_1;

    ::CORBA::UShort N_CYCLES;

    ::CORBA::UShort ITH_CYCLE;

    ::CORBA::String_member OBSDATA;

    ::CORBA::String_member OBS_FILE;

    ::CORBA::UShort DEMAND_TEMP;

    ::CORBA::Double ACTUAL_TEMP;

    ::CORBA::Double CCDTEMP1;

    ::CORBA::Double CCDTEMP2;

    ::CORBA::Double CCDPRESSURE;

    ::CORBA::Double CCDFLOWRATE;

    ::CORBA::UShort CCDPELTIER;

    ::CORBA::String_member STOREMODE_NAME;

    ::CORBA::UShort RMODE_NREADS;

    ::CORBA::UShort RMODE_NMNDRS;

    ::CORBA::String_member RMODE_NAME;

    ::CORBA::String_member RO_SECTION;

    ::CORBA::String_member RO_SPEED;

    ::CORBA::UShort X_BINNING;

    ::CORBA::UShort Y_BINNING;

    ::CORBA::String_member WINDOW_1;

    ::CORBA::String_member WINDOW_2;

    ::CORBA::String_member WINDOW_3;

    ::CORBA::String_member WINDOW_4;

  

    void operator>>= (cdrStream &) const;
    void operator<<= (cdrStream &);
  };

  typedef CameraStatus::_var_type CameraStatus_var;

  typedef _CORBA_ConstrType_Variable_OUT_arg< CameraStatus,CameraStatus_var > CameraStatus_out;

  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_CameraStatus;

#ifndef __UDASCamera_mCamera__
#define __UDASCamera_mCamera__

  class Camera;
  class _objref_Camera;
  class _impl_Camera;
  
  typedef _objref_Camera* Camera_ptr;
  typedef Camera_ptr CameraRef;

  class Camera_Helper {
  public:
    typedef Camera_ptr _ptr_type;

    static _ptr_type _nil();
    static _CORBA_Boolean is_nil(_ptr_type);
    static void release(_ptr_type);
    static void duplicate(_ptr_type);
    static void marshalObjRef(_ptr_type, cdrStream&);
    static _ptr_type unmarshalObjRef(cdrStream&);
  };

  typedef _CORBA_ObjRef_Var<_objref_Camera, Camera_Helper> Camera_var;
  typedef _CORBA_ObjRef_OUT_arg<_objref_Camera,Camera_Helper > Camera_out;

#endif

  // interface Camera
  class Camera {
  public:
    // Declarations for this interface type.
    typedef Camera_ptr _ptr_type;
    typedef Camera_var _var_type;

    static _ptr_type _duplicate(_ptr_type);
    static _ptr_type _narrow(::CORBA::Object_ptr);
    static _ptr_type _unchecked_narrow(::CORBA::Object_ptr);
    
    static _ptr_type _nil();

    static inline void _marshalObjRef(_ptr_type, cdrStream&);

    static inline _ptr_type _unmarshalObjRef(cdrStream& s) {
      omniObjRef* o = omniObjRef::_unMarshal(_PD_repoId,s);
      if (o)
        return (_ptr_type) o->_ptrToObjRef(_PD_repoId);
      else
        return _nil();
    }

    static _core_attr const char* _PD_repoId;

    // Other IDL defined within this scope.
    
  };

  class _objref_Camera :
    public virtual ::CORBA::Object,
    public virtual omniObjRef
  {
  public:
    void abort();
    void archive(::CORBA::UShort run_rank, const char* instrument_name, const char* archive, ::CORBA::UShort scratch_file_no);
    void bin(::CORBA::UShort x_binning, ::CORBA::UShort y_binning);
    void cds(::CORBA::UShort n_ro, ::CORBA::Double t_demand, ::CORBA::Double t_preflash, const char* int_type);
    void clear();
    void clearread();
    void exit();
    GrabData* grab(::CORBA::Double integration_time, ::CORBA::UShort x1, ::CORBA::UShort y1, ::CORBA::UShort x2, ::CORBA::UShort y2, ::CORBA::UShort offset);
    GrabData* fgrab(::CORBA::Double integration_time, ::CORBA::Boolean do_clear);
    void finish();
    void idle();
    void integrate(const char* int_type, ::CORBA::Double t_demand);
    MeritData merit(::CORBA::Double integration_time, ::CORBA::UShort x1, ::CORBA::UShort y1, ::CORBA::UShort x2, ::CORBA::UShort y2, ::CORBA::UShort offset, ::CORBA::UShort xignore, ::CORBA::UShort yignore);
    void multiread(const char* int_type, ::CORBA::Double integration_time, ::CORBA::ULong numReads);
    void obsdata(const char* directory);
    void open();
    void park();
    void ping();
    void preflash(::CORBA::Double preflash_time);
    void process(::CORBA::UShort run_rank, const char* proc_key);
    void readout(::CORBA::UShort coadd_code, ::CORBA::UShort n_ro);
    void reset();
    void retime(::CORBA::Double t_demand);
    void rmode(const char* rmode_name, ::CORBA::UShort rmode_nreads, ::CORBA::UShort rmode_nmndrs);
    void rspeed(const char* speed_name);
    ::CORBA::ULong run(const char* run_type);
    void rur(::CORBA::UShort n_ro, const char* rur_tdemand, ::CORBA::Double preflash_time, const char* int_type);
    void setClearReads(::CORBA::UShort n_clearreads);
    void setTotalCycles(::CORBA::Long totalCycles);
    void setCurrentCycle(::CORBA::Long currentCycle);
    void shut();
    void shutdown();
    void storemode(const char* storemode_name);
    void window(::CORBA::UShort win_no, const char* win_spec);
    CameraStatus* getStatus(::CORBA::Boolean waitOnChange);
    char* getObservationFile();
    char* Version();
    CameraStatus* STATUS();

    inline _objref_Camera()  { _PR_setobj(0); }  // nil
    _objref_Camera(omniIOR*, omniIdentity*);

  protected:
    virtual ~_objref_Camera();

    
  private:
    virtual void* _ptrToObjRef(const char*);

    _objref_Camera(const _objref_Camera&);
    _objref_Camera& operator = (const _objref_Camera&);
    // not implemented

    friend class Camera;
  };

  class _pof_Camera : public _OMNI_NS(proxyObjectFactory) {
  public:
    inline _pof_Camera() : _OMNI_NS(proxyObjectFactory)(Camera::_PD_repoId) {}
    virtual ~_pof_Camera();

    virtual omniObjRef* newObjRef(omniIOR*,omniIdentity*);
    virtual _CORBA_Boolean is_a(const char*) const;
  };

  class _impl_Camera :
    public virtual omniServant
  {
  public:
    virtual ~_impl_Camera();

    virtual void abort() = 0;
    virtual void archive(::CORBA::UShort run_rank, const char* instrument_name, const char* archive, ::CORBA::UShort scratch_file_no) = 0;
    virtual void bin(::CORBA::UShort x_binning, ::CORBA::UShort y_binning) = 0;
    virtual void cds(::CORBA::UShort n_ro, ::CORBA::Double t_demand, ::CORBA::Double t_preflash, const char* int_type) = 0;
    virtual void clear() = 0;
    virtual void clearread() = 0;
    virtual void exit() = 0;
    virtual GrabData* grab(::CORBA::Double integration_time, ::CORBA::UShort x1, ::CORBA::UShort y1, ::CORBA::UShort x2, ::CORBA::UShort y2, ::CORBA::UShort offset) = 0;
    virtual GrabData* fgrab(::CORBA::Double integration_time, ::CORBA::Boolean do_clear) = 0;
    virtual void finish() = 0;
    virtual void idle() = 0;
    virtual void integrate(const char* int_type, ::CORBA::Double t_demand) = 0;
    virtual MeritData merit(::CORBA::Double integration_time, ::CORBA::UShort x1, ::CORBA::UShort y1, ::CORBA::UShort x2, ::CORBA::UShort y2, ::CORBA::UShort offset, ::CORBA::UShort xignore, ::CORBA::UShort yignore) = 0;
    virtual void multiread(const char* int_type, ::CORBA::Double integration_time, ::CORBA::ULong numReads) = 0;
    virtual void obsdata(const char* directory) = 0;
    virtual void open() = 0;
    virtual void park() = 0;
    virtual void ping() = 0;
    virtual void preflash(::CORBA::Double preflash_time) = 0;
    virtual void process(::CORBA::UShort run_rank, const char* proc_key) = 0;
    virtual void readout(::CORBA::UShort coadd_code, ::CORBA::UShort n_ro) = 0;
    virtual void reset() = 0;
    virtual void retime(::CORBA::Double t_demand) = 0;
    virtual void rmode(const char* rmode_name, ::CORBA::UShort rmode_nreads, ::CORBA::UShort rmode_nmndrs) = 0;
    virtual void rspeed(const char* speed_name) = 0;
    virtual ::CORBA::ULong run(const char* run_type) = 0;
    virtual void rur(::CORBA::UShort n_ro, const char* rur_tdemand, ::CORBA::Double preflash_time, const char* int_type) = 0;
    virtual void setClearReads(::CORBA::UShort n_clearreads) = 0;
    virtual void setTotalCycles(::CORBA::Long totalCycles) = 0;
    virtual void setCurrentCycle(::CORBA::Long currentCycle) = 0;
    virtual void shut() = 0;
    virtual void shutdown() = 0;
    virtual void storemode(const char* storemode_name) = 0;
    virtual void window(::CORBA::UShort win_no, const char* win_spec) = 0;
    virtual CameraStatus* getStatus(::CORBA::Boolean waitOnChange) = 0;
    virtual char* getObservationFile() = 0;
    virtual char* Version() = 0;
    virtual CameraStatus* STATUS() = 0;
    
  public:  // Really protected, workaround for xlC
    virtual _CORBA_Boolean _dispatch(omniCallHandle&);

  private:
    virtual void* _ptrToInterface(const char*);
    virtual const char* _mostDerivedRepoId();
    
  };


  _CORBA_MODULE_VAR _dyn_attr const ::CORBA::TypeCode_ptr _tc_Camera;

_CORBA_MODULE_END



_CORBA_MODULE POA_UDASCamera
_CORBA_MODULE_BEG

  class Camera :
    public virtual UDASCamera::_impl_Camera,
    public virtual ::PortableServer::ServantBase
  {
  public:
    virtual ~Camera();

    inline ::UDASCamera::Camera_ptr _this() {
      return (::UDASCamera::Camera_ptr) _do_this(::UDASCamera::Camera::_PD_repoId);
    }
  };

_CORBA_MODULE_END



_CORBA_MODULE OBV_UDASCamera
_CORBA_MODULE_BEG

_CORBA_MODULE_END





#undef _core_attr
#undef _dyn_attr

void operator<<=(::CORBA::Any& _a, const UDASCamera::ErrorInfo& _s);
void operator<<=(::CORBA::Any& _a, const UDASCamera::ErrorInfo* _sp);
_CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::ErrorInfo*& _sp);

void operator<<=(::CORBA::Any& _a, const UDASCamera::Image& _s);
void operator<<=(::CORBA::Any& _a, UDASCamera::Image* _sp);
_CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::Image*& _sp);
_CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::Image*& _sp);

extern void operator<<=(::CORBA::Any& _a, const UDASCamera::GrabData& _s);
extern void operator<<=(::CORBA::Any& _a, UDASCamera::GrabData* _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::GrabData*& _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::GrabData*& _sp);

extern void operator<<=(::CORBA::Any& _a, const UDASCamera::MeritData& _s);
extern void operator<<=(::CORBA::Any& _a, UDASCamera::MeritData* _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::MeritData*& _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::MeritData*& _sp);

extern void operator<<=(::CORBA::Any& _a, const UDASCamera::RunProgress& _s);
extern void operator<<=(::CORBA::Any& _a, UDASCamera::RunProgress* _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::RunProgress*& _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::RunProgress*& _sp);

extern void operator<<=(::CORBA::Any& _a, const UDASCamera::CameraStatus& _s);
extern void operator<<=(::CORBA::Any& _a, UDASCamera::CameraStatus* _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::CameraStatus*& _sp);
extern _CORBA_Boolean operator>>=(const ::CORBA::Any& _a, const UDASCamera::CameraStatus*& _sp);

void operator<<=(::CORBA::Any& _a, UDASCamera::Camera_ptr _s);
void operator<<=(::CORBA::Any& _a, UDASCamera::Camera_ptr* _s);
_CORBA_Boolean operator>>=(const ::CORBA::Any& _a, UDASCamera::Camera_ptr& _s);



inline void
UDASCamera::Camera::_marshalObjRef(::UDASCamera::Camera_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}




#ifdef   USE_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
# undef  USE_stub_in_nt_dll
# undef  USE_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif
#ifdef   USE_core_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
# undef  USE_core_stub_in_nt_dll
# undef  USE_core_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif
#ifdef   USE_dyn_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
# undef  USE_dyn_stub_in_nt_dll
# undef  USE_dyn_stub_in_nt_dll_NOT_DEFINED_udas__camera__corba
#endif

#endif  // __udas__camera__corba_hh__

