libdap  Updated for version 3.17.0
libdap::XDRStreamMarshaller Class Reference

Marshaller that knows how serialize dap data objects to a C++ iostream using XDR. More...

#include <XDRStreamMarshaller.h>

Inheritance diagram for libdap::XDRStreamMarshaller:

List of all members.

Public Member Functions

virtual void dump (ostream &strm) const
 dump the contents of this object to the specified ostream
virtual void put_byte (dods_byte val)
virtual void put_float32 (dods_float32 val)
virtual void put_float64 (dods_float64 val)
virtual void put_int (int val)
virtual void put_int16 (dods_int16 val)
virtual void put_int32 (dods_int32 val)
virtual void put_opaque (char *val, unsigned int len)
virtual void put_str (const string &val)
virtual void put_uint16 (dods_uint16 val)
virtual void put_uint32 (dods_uint32 val)
virtual void put_url (const string &val)
virtual void put_vector (char *val, int num, Vector &vec)
virtual void put_vector (char *val, int num, int width, Vector &vec)
virtual void put_vector_end ()
virtual void put_vector_part (char *val, unsigned int num, int width, Type type)
virtual void put_vector_start (int num)
 XDRStreamMarshaller (ostream &out)

Friends

class MarshallerTest
class MarshallerThread

Detailed Description

Marshaller that knows how serialize dap data objects to a C++ iostream using XDR.

Definition at line 54 of file XDRStreamMarshaller.h.


Constructor & Destructor Documentation

libdap::XDRStreamMarshaller::XDRStreamMarshaller ( ostream &  out)

Build an instance of XDRStreamMarshaller. Bind the C++ stream out to this instance. If the checksum parameter is true, initialize a checksum buffer and enable the use of the reset_checksum() and get_checksum() methods.

Parameters:
outWrite to this stream object.
checksumIf true, compute checksums. False by default
write_dataIf true, write data values. True by default

Definition at line 77 of file XDRStreamMarshaller.cc.


Member Function Documentation

void libdap::XDRStreamMarshaller::dump ( ostream &  strm) const [virtual]

dump the contents of this object to the specified ostream

This method is implemented by all derived classes to dump their contents, in other words, any state they might have, private variables, etc...

Parameters:
strmC++ i/o stream to dump the object to

Implements libdap::Marshaller.

Definition at line 616 of file XDRStreamMarshaller.cc.

Close a vector when its values are written using put_vector_part().

See also:
put_vector_start()
put_vector_part()

Reimplemented from libdap::Marshaller.

Definition at line 367 of file XDRStreamMarshaller.cc.

void libdap::XDRStreamMarshaller::put_vector_part ( char *  val,
unsigned int  num,
int  width,
Type  type 
) [virtual]

Write num values for an Array/Vector.

Parameters:
valThe values to write
numthe number of values to write
widthThe width of the values
typeThe DAP2 type of the values.
See also:
put_vector_start()
put_vector_end()

Reimplemented from libdap::Marshaller.

Definition at line 514 of file XDRStreamMarshaller.cc.

void libdap::XDRStreamMarshaller::put_vector_start ( int  num) [virtual]

Prepare to send a single array/vector using a series of 'put' calls.

Parameters:
numThe number of elements in the Array/Vector
See also:
put_vector_part()
put_vector_end()

Reimplemented from libdap::Marshaller.

Definition at line 353 of file XDRStreamMarshaller.cc.


The documentation for this class was generated from the following files: