libdap++
Updated for version 3.13.1
|
marshaller that knows how to marshal/serialize dap data objects to a C++ iostream using XDR More...
#include <XDRStreamMarshaller.h>
Public Member Functions | |
virtual void | dump (ostream &strm) const |
dump the contents of this object to the specified ostream More... | |
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 (char *val, unsigned int num, int width, Type type) |
XDRStreamMarshaller (ostream &out) | |
virtual | ~XDRStreamMarshaller () |
Definition at line 56 of file XDRStreamMarshaller.h.
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.
out | Write to this stream object. |
checksum | If true, compute checksums. False by default |
write_data | If true, write data values. True by default |
Definition at line 63 of file XDRStreamMarshaller.cc.
References libdap::XDR_DAP_BUFF_SIZE.
|
virtual |
Definition at line 101 of file XDRStreamMarshaller.cc.
|
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 531 of file XDRStreamMarshaller.cc.
References libdap::DapIndent::LMarg().
|
virtual |
Implements libdap::Marshaller.
Definition at line 184 of file XDRStreamMarshaller.cc.
References DBG.
|
virtual |
Implements libdap::Marshaller.
Definition at line 249 of file XDRStreamMarshaller.cc.
|
virtual |
Implements libdap::Marshaller.
Definition at line 270 of file XDRStreamMarshaller.cc.
|
virtual |
Implements libdap::Marshaller.
Definition at line 407 of file XDRStreamMarshaller.cc.
Referenced by put_vector().
|
virtual |
Implements libdap::Marshaller.
Definition at line 207 of file XDRStreamMarshaller.cc.
References XDR_INT16.
|
virtual |
Implements libdap::Marshaller.
Definition at line 228 of file XDRStreamMarshaller.cc.
References XDR_INT32.
|
virtual |
Implements libdap::Marshaller.
Definition at line 383 of file XDRStreamMarshaller.cc.
References libdap::XDR_DAP_BUFF_SIZE.
|
virtual |
Implements libdap::Marshaller.
Definition at line 333 of file XDRStreamMarshaller.cc.
Referenced by put_url().
|
virtual |
Implements libdap::Marshaller.
Definition at line 291 of file XDRStreamMarshaller.cc.
References XDR_UINT16.
|
virtual |
Implements libdap::Marshaller.
Definition at line 312 of file XDRStreamMarshaller.cc.
References XDR_UINT32.
|
virtual |
Implements libdap::Marshaller.
Definition at line 378 of file XDRStreamMarshaller.cc.
References put_str().
|
virtual |
Implements libdap::Marshaller.
Definition at line 428 of file XDRStreamMarshaller.cc.
References put_int().
Referenced by put_vector().
|
virtual |
Implements libdap::Marshaller.
Definition at line 471 of file XDRStreamMarshaller.cc.
References put_vector(), libdap::BaseType::type(), and libdap::Vector::var().
|
virtual |
Definition at line 477 of file XDRStreamMarshaller.cc.
References put_int(), and libdap::XDRUtils::xdr_coder().