|
virtual void | end_xml_declaration (libdap::XMLWriter *writer) |
|
virtual bool | increment_state (vector< int > *state, const vector< int > &shape) |
|
virtual void | print_xml_data (libdap::XMLWriter *writer, bool show_type) |
|
virtual BaseType * | ptr_duplicate () |
|
virtual void | start_xml_declaration (libdap::XMLWriter *writer, const char *element=0) |
|
| XDInt32 (const string &n) |
|
| XDInt32 (Int32 *bt) |
|
|
libdap::BaseType * | d_redirect |
|
Definition at line 39 of file XDInt32.h.
◆ increment_state()
bool XDOutput::increment_state |
( |
vector< int > * |
state, |
|
|
const vector< int > & |
shape |
|
) |
| |
|
virtualinherited |
Increment #state# to the next value given #shape#. This method uses simple modulo arithmetic to provide a way to iterate over all combinations of dimensions of an Array or Grid. The vector #shape# holds the maximum sizes of each of N dimensions. The vector #state# holds the current index values of those N dimensions. Calling this method increments #state# to the next dimension, varying the right-most fastest.
To print DODS Array and Grid objects according to the DAP 2.0 specification, #state# and #shape# should be vectors of length N-1 for an object of dimension N.
For example, if shape holds 10, 20 then when state holds 0, 20 calling this method will increment state to 1, 0. For this example, calling the method with state equal to 10, 20 will reset state to 0, 0 and the return value will be false.
- Parameters
-
state | A pointer to the current state vector, a value-result parameter |
share | A reference to a vector of the dimension sizes. |
- Returns
- True if there are more states, false if not.
Definition at line 124 of file XDOutput.cc.
The documentation for this class was generated from the following files: