libdap++ Updated for version 3.8.2
|
unmarshaller that knows how to unmarshall/deserialize dap objects using XDR from a file
#include <XDRStreamUnMarshaller.h>
Public Member Functions | |
virtual void | dump (ostream &strm) const |
dump the contents of this object to the specified ostream | |
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, int width, Vector &vec) |
virtual void | get_vector (char **val, unsigned int &num, Vector &vec) |
XDRStreamUnMarshaller (istream &in) | |
virtual | ~XDRStreamUnMarshaller () |
Definition at line 52 of file XDRStreamUnMarshaller.h.
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.
References delete_xdrstdio().
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...
strm | C++ i/o stream to dump the object to |
Implements libdap::UnMarshaller.
Definition at line 339 of file XDRStreamUnMarshaller.cc.
References libdap::DapIndent::LMarg().
void libdap::XDRStreamUnMarshaller::get_byte | ( | dods_byte & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 93 of file XDRStreamUnMarshaller.cc.
References DBG2.
void libdap::XDRStreamUnMarshaller::get_float32 | ( | dods_float32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 140 of file XDRStreamUnMarshaller.cc.
void libdap::XDRStreamUnMarshaller::get_float64 | ( | dods_float64 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 150 of file XDRStreamUnMarshaller.cc.
void libdap::XDRStreamUnMarshaller::get_int | ( | int & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 244 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 120 of file XDRStreamUnMarshaller.cc.
References XDR_INT16.
void libdap::XDRStreamUnMarshaller::get_int32 | ( | dods_int32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 130 of file XDRStreamUnMarshaller.cc.
References XDR_INT32.
void libdap::XDRStreamUnMarshaller::get_opaque | ( | char * | val, |
unsigned int | len | ||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 228 of file XDRStreamUnMarshaller.cc.
References libdap::XDR_DAP_BUFF_SIZE.
void libdap::XDRStreamUnMarshaller::get_str | ( | string & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 180 of file XDRStreamUnMarshaller.cc.
References DBG, delete_xdrstdio(), get_int(), libdap::max_str_len, and libdap::XDR_DAP_BUFF_SIZE.
Referenced by get_url().
void libdap::XDRStreamUnMarshaller::get_uint16 | ( | dods_uint16 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 160 of file XDRStreamUnMarshaller.cc.
References XDR_UINT16.
void libdap::XDRStreamUnMarshaller::get_uint32 | ( | dods_uint32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 170 of file XDRStreamUnMarshaller.cc.
References XDR_UINT32.
void libdap::XDRStreamUnMarshaller::get_url | ( | string & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 222 of file XDRStreamUnMarshaller.cc.
References get_str().
void libdap::XDRStreamUnMarshaller::get_vector | ( | char ** | val, |
unsigned int & | num, | ||
int | width, | ||
Vector & | vec | ||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 295 of file XDRStreamUnMarshaller.cc.
References DBG, DBG2, delete_xdrstdio(), libdap::DODS_MAX_ARRAY, get_int(), libdap::BaseType::type(), libdap::Vector::var(), libdap::XDRUtils::xdr_coder(), and libdap::XDR_DAP_BUFF_SIZE.
void libdap::XDRStreamUnMarshaller::get_vector | ( | char ** | val, |
unsigned int & | num, | ||
Vector & | vec | ||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 256 of file XDRStreamUnMarshaller.cc.
References DBG, DBG2, delete_xdrstdio(), libdap::DODS_MAX_ARRAY, get_int(), and libdap::XDR_DAP_BUFF_SIZE.