libdap::XDRFileMarshaller Class Reference

marshaller that knows how to marshall/serialize dap data objects to a file using XDR More...

`#include <XDRFileMarshaller.h>`

Inheritance diagram for libdap::XDRFileMarshaller:

## 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)
virtual void | put_vector_end ()
virtual void | put_vector_part (char *, unsigned int, int, Type)
virtual void | put_vector_start (int)
| XDRFileMarshaller (FILE *out)

## Detailed Description

marshaller that knows how to marshall/serialize dap data objects to a file using XDR

Definition at line 48 of file XDRFileMarshaller.h.

## Constructor & Destructor Documentation

## XDRFileMarshaller()

libdap::XDRFileMarshaller::XDRFileMarshaller | ( | FILE * | out | ) |

Definition at line 57 of file XDRFileMarshaller.cc.

## ~XDRFileMarshaller()

libdap::XDRFileMarshaller::~XDRFileMarshaller | ( |  | ) |

virtual

Definition at line 79 of file XDRFileMarshaller.cc.

## Member Function Documentation

## dump()

void libdap::XDRFileMarshaller::dump | ( | ostream & | strm | ) | const

virtual

dump the contents of this object to the specified ostream

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

Parameters

  strm | C++ i/o stream to dump the object to

Implements libdap::Marshaller.

Definition at line 164 of file XDRFileMarshaller.cc.

## put_byte()

void libdap::XDRFileMarshaller::put_byte | ( | dods_byte | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 81 of file XDRFileMarshaller.cc.

## put_float32()

void libdap::XDRFileMarshaller::put_float32 | ( | dods_float32 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 99 of file XDRFileMarshaller.cc.

## put_float64()

void libdap::XDRFileMarshaller::put_float64 | ( | dods_float64 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 105 of file XDRFileMarshaller.cc.

## put_int()

void libdap::XDRFileMarshaller::put_int | ( | int | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 135 of file XDRFileMarshaller.cc.

## put_int16()

void libdap::XDRFileMarshaller::put_int16 | ( | dods_int16 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 87 of file XDRFileMarshaller.cc.

## put_int32()

void libdap::XDRFileMarshaller::put_int32 | ( | dods_int32 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 93 of file XDRFileMarshaller.cc.

## put_opaque()

void libdap::XDRFileMarshaller::put_opaque | ( | char * | val,
|  | unsigned int | len )

virtual

Implements libdap::Marshaller.

Definition at line 130 of file XDRFileMarshaller.cc.

## put_str()

void libdap::XDRFileMarshaller::put_str | ( | const string & | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 121 of file XDRFileMarshaller.cc.

## put_uint16()

void libdap::XDRFileMarshaller::put_uint16 | ( | dods_uint16 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 111 of file XDRFileMarshaller.cc.

## put_uint32()

void libdap::XDRFileMarshaller::put_uint32 | ( | dods_uint32 | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 116 of file XDRFileMarshaller.cc.

## put_url()

void libdap::XDRFileMarshaller::put_url | ( | const string & | val | ) |

virtual

Implements libdap::Marshaller.

Definition at line 128 of file XDRFileMarshaller.cc.

## put_vector() [1/2]

void libdap::XDRFileMarshaller::put_vector | ( | char * | val,
|  | int | num,
|  | int | width,
|  | Vector & | vec )

virtual

Implements libdap::Marshaller.

Definition at line 151 of file XDRFileMarshaller.cc.

## put_vector() [2/2]

void libdap::XDRFileMarshaller::put_vector | ( | char * | val,
|  | int | num,
|  | Vector & | vec )

virtual

Implements libdap::Marshaller.

Definition at line 140 of file XDRFileMarshaller.cc.

## put_vector_end()

virtual void libdap::Marshaller::put_vector_end | ( |  | ) |

inline virtual inherited

Close a vector written using put_vector_part()

Reimplemented in libdap::D4StreamMarshaller, and libdap::XDRStreamMarshaller.

Definition at line 96 of file Marshaller.h.

## put_vector_part()

virtual void libdap::Marshaller::put_vector_part | ( | char * | ,
|  | unsigned int | ,
|  | int | ,
|  | Type | )

inline virtual inherited

Write one part of a vector's contents.

Parameters

  val | Pointer to the part's values
  num | The number of values in this part
  width | The number of bytes per value
  type | The DAP2 data type for each value

Reimplemented in libdap::D4StreamMarshaller, and libdap::XDRStreamMarshaller.

Definition at line 89 of file Marshaller.h.

## put_vector_start()

virtual void libdap::Marshaller::put_vector_start | ( | int |  | ) |

inline virtual inherited

Write the prefix bytes for a vector and reset the state/counter for a vector/array that will be written using put_vector_part() and put_vector_end().

Parameters

  num | The number of elements to write

Reimplemented in libdap::D4StreamMarshaller, and libdap::XDRStreamMarshaller.

Definition at line 79 of file Marshaller.h.

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

- XDRFileMarshaller.h
- XDRFileMarshaller.cc