UFO
|
Iterator over the names and values of primitive variables held in a Variables object. More...
#include <PrimitiveVariables.h>
Classes | |
struct | BeginTag |
struct | EndTag |
Public Types | |
typedef ptrdiff_t | difference_type |
typedef PrimitiveVariable | value_type |
typedef PrimitiveVariable | reference |
typedef ArrowProxy< PrimitiveVariable > | pointer |
typedef std::forward_iterator_tag | iterator_category |
Public Member Functions | |
PrimitiveVariablesIterator (const Variables &variables, const ObsFilterData &data, BeginTag) | |
Create an iterator pointing to the first primitive variable in variables . More... | |
PrimitiveVariablesIterator (const Variables &variables, const ObsFilterData &data, EndTag) | |
Create an iterator pointing past the range of primitive variables in variables . More... | |
PrimitiveVariable | operator* () const |
Dereference the iterator, returning a proxy object whose methods such as name(), group() and values() can be called to get access to the name, group and values of the primitive variable pointed to by the iterator. More... | |
ArrowProxy< PrimitiveVariable > | operator-> () const |
PrimitiveVariablesIterator & | operator++ () |
bool | operator== (const PrimitiveVariablesIterator &other) const |
bool | operator!= (const PrimitiveVariablesIterator &other) const |
Private Member Functions | |
void | loadCurrentVariable () |
Private Attributes | |
const Variables & | variables_ |
const ObsFilterData & | data_ |
size_t | variableIndex_ |
size_t | channelIndex_ |
std::unique_ptr< ioda::ObsDataVector< float > > | vector_ |
Iterator over the names and values of primitive variables held in a Variables object.
Note: this iterator exists to support range-based for loops, but it doesn't have a copy constructor (it would need to be very costly – requiring a copy of the ObsDataVector stored in the iterator), so it can't be passed to STL algorithms that take iterators by value.
Definition at line 66 of file src/ufo/utils/PrimitiveVariables.h.
typedef ptrdiff_t ufo::PrimitiveVariablesIterator::difference_type |
Definition at line 68 of file src/ufo/utils/PrimitiveVariables.h.
typedef std::forward_iterator_tag ufo::PrimitiveVariablesIterator::iterator_category |
Definition at line 72 of file src/ufo/utils/PrimitiveVariables.h.
Definition at line 71 of file src/ufo/utils/PrimitiveVariables.h.
Definition at line 70 of file src/ufo/utils/PrimitiveVariables.h.
Definition at line 69 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Create an iterator pointing to the first primitive variable in variables
.
Definition at line 78 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Create an iterator pointing past the range of primitive variables in variables
.
Definition at line 85 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 14 of file PrimitiveVariables.cc.
|
inline |
Definition at line 119 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Dereference the iterator, returning a proxy object whose methods such as name(), group() and values() can be called to get access to the name, group and values of the primitive variable pointed to by the iterator.
Definition at line 92 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Definition at line 100 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Definition at line 96 of file src/ufo/utils/PrimitiveVariables.h.
|
inline |
Definition at line 112 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 130 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 128 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 129 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 127 of file src/ufo/utils/PrimitiveVariables.h.
|
private |
Definition at line 131 of file src/ufo/utils/PrimitiveVariables.h.