28 #ifndef I_DAP4StreamMarshaller_h
29 #define I_DAP4StreamMarshaller_h 1
33 #include <openssl/evp.h>
71 bool d_checksum_ctx_valid;
77 throw InternalErr( __FILE__, __LINE__,
"not implemented." ) ;
80 throw InternalErr( __FILE__, __LINE__,
"not implemented." ) ;
82 DAP4StreamMarshaller & operator=(
const DAP4StreamMarshaller &) {
83 throw InternalErr( __FILE__, __LINE__,
"not implemented." ) ;
86 void m_serialize_reals(
char *val,
unsigned int num,
int width,
Type type);
87 void m_compute_checksum();
90 DAP4StreamMarshaller(ostream &out,
bool write_data =
true);
119 virtual void put_str(
const string &val);
120 virtual void put_url(
const string &val);
122 virtual void put_opaque(
char *val,
unsigned int len);
127 throw InternalErr(__FILE__, __LINE__,
"Not Implemented; use put_length_prefix.");
135 virtual void put_vector(
char *val,
unsigned int num);
136 virtual void put_vector(
char *val,
unsigned int num,
int width,
Type type);
142 throw InternalErr(__FILE__, __LINE__,
"Not Implemented; use put_length_prefix.");
145 throw InternalErr(__FILE__, __LINE__,
"Not Implemented; use put_length_prefix.");
149 virtual void dump(ostream &strm)
const;
154 #endif // I_DAP4StreamMarshaller_h
virtual void put_uint16(dods_uint16 val)
static const unsigned int c_md5_length
virtual bool checksums() const
virtual void put_vector(char *, int, int, Vector &)
Holds a one-dimensional collection of DAP2 data types.
virtual void put_varying_vector(char *val, unsigned int num)
virtual void put_float64(dods_float64 val)
virtual void put_float32(dods_float32 val)
virtual void put_int(int)
virtual void put_vector(char *val, unsigned int num)
virtual void dump(ostream &strm) const
dump the contents of this object to the specified ostream
virtual void put_opaque(char *val, unsigned int len)
Type
Identifies the data type.
virtual string get_endian() const
A class for software fault reporting.
virtual void put_int32(dods_int32 val)
virtual void checksum_update(const void *data, unsigned long len)
virtual void put_int16(dods_int16 val)
virtual void put_int8(dods_int8 val)
virtual void put_byte(dods_byte val)
virtual void put_url(const string &val)
virtual void put_uint64(dods_uint64 val)
virtual ~DAP4StreamMarshaller()
virtual void put_uint32(dods_uint32 val)
abstract base class used to marshal/serialize dap data objects
virtual void put_vector(char *, int, Vector &)
virtual void put_str(const string &val)
virtual void reset_checksum()
virtual void put_int64(dods_int64 val)
Marshaller that knows how to marshal/serialize dap data objects to a C++ iostream using DAP4's receiv...
virtual void put_length_prefix(dods_uint64 val)
virtual string get_checksum()