unmarshaller that knows how to unmarshall/deserialize dap objects using XDR from a file
#include <XDRFileUnMarshaller.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) |
XDRFileUnMarshaller (FILE *out) | |
virtual | ~XDRFileUnMarshaller () |
Definition at line 45 of file XDRFileUnMarshaller.h.
libdap::XDRFileUnMarshaller::XDRFileUnMarshaller | ( | FILE * | out | ) |
Definition at line 41 of file XDRFileUnMarshaller.cc.
References new_xdrstdio().
libdap::XDRFileUnMarshaller::~XDRFileUnMarshaller | ( | ) | [virtual] |
Definition at line 69 of file XDRFileUnMarshaller.cc.
References delete_xdrstdio().
void libdap::XDRFileUnMarshaller::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 189 of file XDRFileUnMarshaller.cc.
References libdap::DapIndent::LMarg().
void libdap::XDRFileUnMarshaller::get_byte | ( | dods_byte & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 75 of file XDRFileUnMarshaller.cc.
void libdap::XDRFileUnMarshaller::get_float32 | ( | dods_float32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 103 of file XDRFileUnMarshaller.cc.
void libdap::XDRFileUnMarshaller::get_float64 | ( | dods_float64 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 110 of file XDRFileUnMarshaller.cc.
void libdap::XDRFileUnMarshaller::get_int | ( | int & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 163 of file XDRFileUnMarshaller.cc.
void libdap::XDRFileUnMarshaller::get_int16 | ( | dods_int16 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 82 of file XDRFileUnMarshaller.cc.
References XDR_INT16.
void libdap::XDRFileUnMarshaller::get_int32 | ( | dods_int32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 89 of file XDRFileUnMarshaller.cc.
References XDR_INT32.
void libdap::XDRFileUnMarshaller::get_opaque | ( | char * | val, | |
unsigned int | len | |||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 157 of file XDRFileUnMarshaller.cc.
void libdap::XDRFileUnMarshaller::get_str | ( | string & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 138 of file XDRFileUnMarshaller.cc.
References libdap::max_str_len.
Referenced by get_url().
void libdap::XDRFileUnMarshaller::get_uint16 | ( | dods_uint16 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 117 of file XDRFileUnMarshaller.cc.
References XDR_UINT16.
void libdap::XDRFileUnMarshaller::get_uint32 | ( | dods_uint32 & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 124 of file XDRFileUnMarshaller.cc.
References XDR_UINT32.
void libdap::XDRFileUnMarshaller::get_url | ( | string & | val | ) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 151 of file XDRFileUnMarshaller.cc.
References get_str().
void libdap::XDRFileUnMarshaller::get_vector | ( | char ** | val, | |
unsigned int & | num, | |||
int | width, | |||
Vector & | vec | |||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 177 of file XDRFileUnMarshaller.cc.
References libdap::DODS_MAX_ARRAY, libdap::BaseType::type(), libdap::Vector::var(), and libdap::XDRUtils::xdr_coder().
void libdap::XDRFileUnMarshaller::get_vector | ( | char ** | val, | |
unsigned int & | num, | |||
Vector & | vec | |||
) | [virtual] |
Implements libdap::UnMarshaller.
Definition at line 170 of file XDRFileUnMarshaller.cc.
References libdap::DODS_MAX_ARRAY.