libdap++ Updated for version 3.8.2
|
marshaller that knows how to marshall/serialize dap data objects to a file using XDR
#include <XDRFileMarshaller.h>
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, int width, Vector &vec) |
virtual void | put_vector (char *val, int num, Vector &vec) |
XDRFileMarshaller (FILE *out) | |
virtual | ~XDRFileMarshaller () |
Definition at line 45 of file XDRFileMarshaller.h.
builddir build BUILD libdap XDRFileMarshaller cc libdap::XDRFileMarshaller::XDRFileMarshaller | ( | FILE * | out | ) |
Definition at line 55 of file XDRFileMarshaller.cc.
References new_xdrstdio().
libdap::XDRFileMarshaller::~XDRFileMarshaller | ( | ) | [virtual] |
Definition at line 83 of file XDRFileMarshaller.cc.
References delete_xdrstdio().
void libdap::XDRFileMarshaller::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::Marshaller.
Definition at line 203 of file XDRFileMarshaller.cc.
References libdap::DapIndent::LMarg().
void libdap::XDRFileMarshaller::put_byte | ( | dods_byte | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 89 of file XDRFileMarshaller.cc.
void libdap::XDRFileMarshaller::put_float32 | ( | dods_float32 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 110 of file XDRFileMarshaller.cc.
void libdap::XDRFileMarshaller::put_float64 | ( | dods_float64 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 117 of file XDRFileMarshaller.cc.
void libdap::XDRFileMarshaller::put_int | ( | int | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 160 of file XDRFileMarshaller.cc.
Referenced by put_vector().
void libdap::XDRFileMarshaller::put_int16 | ( | dods_int16 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 96 of file XDRFileMarshaller.cc.
References XDR_INT16.
void libdap::XDRFileMarshaller::put_int32 | ( | dods_int32 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 103 of file XDRFileMarshaller.cc.
References XDR_INT32.
void libdap::XDRFileMarshaller::put_opaque | ( | char * | val, |
unsigned int | len | ||
) | [virtual] |
Implements libdap::Marshaller.
Definition at line 153 of file XDRFileMarshaller.cc.
void libdap::XDRFileMarshaller::put_str | ( | const string & | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 138 of file XDRFileMarshaller.cc.
References libdap::max_str_len.
Referenced by put_url().
void libdap::XDRFileMarshaller::put_uint16 | ( | dods_uint16 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 124 of file XDRFileMarshaller.cc.
References XDR_UINT16.
void libdap::XDRFileMarshaller::put_uint32 | ( | dods_uint32 | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 131 of file XDRFileMarshaller.cc.
References XDR_UINT32.
void libdap::XDRFileMarshaller::put_url | ( | const string & | val | ) | [virtual] |
Implements libdap::Marshaller.
Definition at line 147 of file XDRFileMarshaller.cc.
References put_str().
void libdap::XDRFileMarshaller::put_vector | ( | char * | val, |
int | num, | ||
int | width, | ||
Vector & | vec | ||
) | [virtual] |
Implements libdap::Marshaller.
Definition at line 184 of file XDRFileMarshaller.cc.
References libdap::DODS_MAX_ARRAY, put_int(), libdap::BaseType::type(), libdap::Vector::var(), and libdap::XDRUtils::xdr_coder().
void libdap::XDRFileMarshaller::put_vector | ( | char * | val, |
int | num, | ||
Vector & | vec | ||
) | [virtual] |
Implements libdap::Marshaller.
Definition at line 167 of file XDRFileMarshaller.cc.
References libdap::DODS_MAX_ARRAY, and put_int().