libdap++  Updated for version 3.12.0
libdap::XDRStreamUnMarshaller Class Reference

unmarshaller that knows how to unmarshall/deserialize dap objects using XDR from a file More...

#include <XDRStreamUnMarshaller.h>

Inheritance diagram for libdap::XDRStreamUnMarshaller:
Inheritance graph
Collaboration diagram for libdap::XDRStreamUnMarshaller:
Collaboration graph

Public Member Functions

virtual void dump (ostream &strm) const
 dump the contents of this object to the specified ostream More...
 
virtual void get_byte (dods_byte &val)
 
virtual void get_float32 (dods_float32 &val)
 
virtual void get_float64 (dods_float64 &val)
 
virtual void get_int (int &val)
 
virtual void get_int16 (dods_int16 &val)
 
virtual void get_int32 (dods_int32 &val)
 
virtual void get_opaque (char *val, unsigned int len)
 
virtual void get_str (string &val)
 
virtual void get_uint16 (dods_uint16 &val)
 
virtual void get_uint32 (dods_uint32 &val)
 
virtual void get_url (string &val)
 
virtual void get_vector (char **val, unsigned int &num, Vector &vec)
 
virtual void get_vector (char **val, unsigned int &num, int width, Vector &vec)
 
virtual void get_vector (char **val, unsigned int &num, int width, Type type)
 
 XDRStreamUnMarshaller (istream &in)
 
virtual ~XDRStreamUnMarshaller ()
 

Detailed Description

Definition at line 52 of file XDRStreamUnMarshaller.h.

Constructor & Destructor Documentation

libdap::XDRStreamUnMarshaller::XDRStreamUnMarshaller ( istream &  in)

Definition at line 53 of file XDRStreamUnMarshaller.cc.

References libdap::XDR_DAP_BUFF_SIZE.

libdap::XDRStreamUnMarshaller::~XDRStreamUnMarshaller ( )
virtual

Definition at line 85 of file XDRStreamUnMarshaller.cc.

Member Function Documentation

void libdap::XDRStreamUnMarshaller::dump ( ostream &  strm) const
virtual

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

The inline function below can be used to dump the contents of an OPeNDAOObj object. For example, the object Animal is derived from DapObj. A user could do the following:

Animal *a = new dog( "Sparky" ) ; cout << a << endl ;

And the dump method for dog could display the name passed into the constructor, the (this) pointer of the object, etc...

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

Implements libdap::UnMarshaller.

Definition at line 334 of file XDRStreamUnMarshaller.cc.

References libdap::DapIndent::LMarg().

Here is the call graph for this function:

void libdap::XDRStreamUnMarshaller::get_byte ( dods_byte val)
virtual

Implements libdap::UnMarshaller.

Definition at line 91 of file XDRStreamUnMarshaller.cc.

References DBG2.

void libdap::XDRStreamUnMarshaller::get_float32 ( dods_float32 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 133 of file XDRStreamUnMarshaller.cc.

void libdap::XDRStreamUnMarshaller::get_float64 ( dods_float64 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 142 of file XDRStreamUnMarshaller.cc.

void libdap::XDRStreamUnMarshaller::get_int ( int &  val)
virtual

Implements libdap::UnMarshaller.

Definition at line 238 of file XDRStreamUnMarshaller.cc.

References DBG.

Referenced by get_str(), and get_vector().

void libdap::XDRStreamUnMarshaller::get_int16 ( dods_int16 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 115 of file XDRStreamUnMarshaller.cc.

References XDR_INT16.

void libdap::XDRStreamUnMarshaller::get_int32 ( dods_int32 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 124 of file XDRStreamUnMarshaller.cc.

References XDR_INT32.

void libdap::XDRStreamUnMarshaller::get_opaque ( char *  val,
unsigned int  len 
)
virtual

Implements libdap::UnMarshaller.

Definition at line 223 of file XDRStreamUnMarshaller.cc.

References libdap::XDR_DAP_BUFF_SIZE.

void libdap::XDRStreamUnMarshaller::get_str ( string &  val)
virtual

Implements libdap::UnMarshaller.

Definition at line 169 of file XDRStreamUnMarshaller.cc.

References DBG, get_int(), libdap::max_str_len, and libdap::XDR_DAP_BUFF_SIZE.

Referenced by get_url().

Here is the call graph for this function:

void libdap::XDRStreamUnMarshaller::get_uint16 ( dods_uint16 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 151 of file XDRStreamUnMarshaller.cc.

References XDR_UINT16.

void libdap::XDRStreamUnMarshaller::get_uint32 ( dods_uint32 val)
virtual

Implements libdap::UnMarshaller.

Definition at line 160 of file XDRStreamUnMarshaller.cc.

References XDR_UINT32.

void libdap::XDRStreamUnMarshaller::get_url ( string &  val)
virtual

Implements libdap::UnMarshaller.

Definition at line 218 of file XDRStreamUnMarshaller.cc.

References get_str().

Here is the call graph for this function:

void libdap::XDRStreamUnMarshaller::get_vector ( char **  val,
unsigned int &  num,
Vector vec 
)
virtual

Implements libdap::UnMarshaller.

Definition at line 249 of file XDRStreamUnMarshaller.cc.

References DBG, DBG2, libdap::DODS_MAX_ARRAY, get_int(), and libdap::XDR_DAP_BUFF_SIZE.

Referenced by get_vector().

Here is the call graph for this function:

void libdap::XDRStreamUnMarshaller::get_vector ( char **  val,
unsigned int &  num,
int  width,
Vector vec 
)
virtual

Implements libdap::UnMarshaller.

Definition at line 289 of file XDRStreamUnMarshaller.cc.

References get_vector(), libdap::BaseType::type(), and libdap::Vector::var().

Here is the call graph for this function:

void libdap::XDRStreamUnMarshaller::get_vector ( char **  val,
unsigned int &  num,
int  width,
Type  type 
)
virtual

Definition at line 294 of file XDRStreamUnMarshaller.cc.

References DBG, libdap::DODS_MAX_ARRAY, get_int(), libdap::XDRUtils::xdr_coder(), and libdap::XDR_DAP_BUFF_SIZE.

Here is the call graph for this function:


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