33 #ifndef I_XDRStreamMarshaller_h
34 #define I_XDRStreamMarshaller_h 1
38 #include <openssl/md5.h>
47 #include <openssl/md5.h>
49 unsigned char *MD5(
const unsigned char *d,
unsigned long n,
52 int MD5_Init(MD5_CTX *c);
53 int MD5_Update(MD5_CTX *c,
const void *data,
55 int MD5_Final(
unsigned char *md, MD5_CTX *c);
75 bool _checksum_ctx_valid ;
101 virtual void put_str(
const string &val ) ;
102 virtual void put_url(
const string &val ) ;
104 virtual void put_opaque(
char *val,
unsigned int len ) ;
105 virtual void put_int(
int val ) ;
110 virtual void dump(ostream &strm)
const ;
115 #endif // I_XDRStreamMarshaller_h
virtual ~XDRStreamMarshaller()
virtual void dump(ostream &strm) const
dump the contents of this object to the specified ostream
Holds a one-dimensional collection of DAP2 data types.
virtual void put_int16(dods_int16 val)
virtual void reset_checksum()
virtual void put_uint16(dods_uint16 val)
virtual void put_float64(dods_float64 val)
virtual void put_byte(dods_byte val)
virtual string get_checksum()
virtual void put_int(int val)
virtual void put_float32(dods_float32 val)
virtual void put_opaque(char *val, unsigned int len)
virtual void put_str(const string &val)
virtual void checksum_update(const void *data, unsigned long len)
abstract base class used to marshal/serialize dap data objects
virtual void put_vector(char *val, int num, Vector &vec)
virtual void put_int32(dods_int32 val)
marshaller that knows how to marshal/serialize dap data objects to a C++ iostream using XDR ...
virtual void put_uint32(dods_uint32 val)
virtual void put_url(const string &val)