XDRStreamMarshaller.h

Go to the documentation of this file.
00001 // XDRStreamMarshaller.h
00002 
00003 #ifndef I_XDRStreamMarshaller_h
00004 #define I_XDRStreamMarshaller_h 1
00005 
00006 #include <iostream>
00007 
00008 using std::ostream ;
00009 using std::cout ;
00010 
00011 #include "Marshaller.h"
00012 #include "XDRUtils.h"
00013 
00014 class XDRStreamMarshaller : public Marshaller
00015 {
00016 private:
00017     static char *               _buf ;
00018     XDR *                       _sink ;
00019     ostream &                   _out ;
00020                                 XDRStreamMarshaller()
00021                                     : _sink( 0 ), _out( cout ) {} ;
00022 public:
00023                                 XDRStreamMarshaller( ostream &out ) ;
00024     virtual                     ~XDRStreamMarshaller() ;
00025 
00026     virtual void                put_byte( dods_byte val ) ;
00027 
00028     virtual void                put_int16( dods_int16 val ) ;
00029     virtual void                put_int32( dods_int32 val ) ;
00030 
00031     virtual void                put_float32( dods_float32 val ) ;
00032     virtual void                put_float64( dods_float64 val ) ;
00033 
00034     virtual void                put_uint16( dods_uint16 val ) ;
00035     virtual void                put_uint32( dods_uint32 val ) ;
00036 
00037     virtual void                put_str( const string &val ) ;
00038     virtual void                put_url( const string &val ) ;
00039 
00040     virtual void                put_opaque( char *val, unsigned int len ) ;
00041     virtual void                put_int( int val ) ;
00042 
00043     virtual void                put_vector( char *val, int num,
00044                                             Vector &vec ) ;
00045     virtual void                put_vector( char *val, int num, int width,
00046                                             Vector &vec ) ;
00047 
00048     virtual void                dump(ostream &strm) const ;
00049 } ;
00050 
00051 #endif // I_XDRStreamMarshaller_h
00052 

Generated on Wed Nov 14 03:15:44 2007 for libdap++ by  doxygen 1.5.1