IODA Bundle
|
#include <WriterDispatchingIterator.h>
Public Member Functions | |
WriterDispatchingIterator (OWNER &owner, int maxOpenFiles, bool append=false) | |
~WriterDispatchingIterator () | |
int | open () |
double * | data () |
double & | data (size_t i) |
int | setColumn (size_t index, std::string name, api::ColumnType type) |
int | setBitfieldColumn (size_t index, std::string name, api::ColumnType type, eckit::sql::BitfieldDef b) |
void | missingValue (size_t i, double) |
template<typename T > | |
unsigned long | pass1 (T &, const T &) |
template<typename T > | |
void | verify (T &, const T &) |
unsigned long | gatherStats (const double *values, unsigned long count) |
int | close () |
api::ColumnType | columnType (size_t index) |
const std::string & | columnName (size_t index) const |
const std::string & | codecName (size_t index) const |
double | columnMissingValue (size_t index) |
const core::MetaData & | columns () const |
const core::MetaData & | columns (const core::MetaData &md) |
OWNER & | owner () |
void | property (std::string key, std::string value) |
std::string | property (std::string) |
std::vector< eckit::PathName > | outputFiles () |
TemplateParameters & | templateParameters () |
size_t | rowDataSizeDoubles () const |
size_t | dataOffset (size_t i) const |
The offset of a given column in the doubles[] data array. More... | |
void | writeHeader () |
int | writeRow (const double *values, unsigned long count) |
unsigned long | pass1 (T &it, const T &end) |
void | verify (T &it, const T &end) |
Protected Member Functions | |
bool | next () |
WRITE_ITERATOR & | dispatch (const double *values, unsigned long count) |
Find iterator data should be dispatched to. More... | |
int | dispatchIndex (const double *values, unsigned long count) |
int | createIterator (const Values &dispatchedValues, const std::string &fileName) |
std::string | generateFileName (const double *values, unsigned long count) |
Protected Attributes | |
OWNER & | owner_ |
Writer< WRITE_ITERATOR > | iteratorsOwner_ |
core::MetaData | columns_ |
double * | lastValues_ |
double * | nextRow_ |
size_t * | columnOffsets_ |
unsigned long long | nrows_ |
std::string | outputFileTemplate_ |
core::Properties | properties_ |
std::vector< int > | dispatchedIndexes_ |
Values2IteratorIndex | values2iteratorIndex_ |
std::vector< unsigned long long > | lastDispatch_ |
std::vector< std::string > | iteratorIndex2fileName_ |
Values | lastDispatchedValues_ |
int | lastIndex_ |
bool | initialized_ |
bool | append_ |
Private Types | |
typedef std::vector< double > | Values |
typedef std::map< Values, int > | Values2IteratorIndex |
typedef std::vector< WRITE_ITERATOR * > | Iterators |
Private Member Functions | |
WriterDispatchingIterator (const WriterDispatchingIterator &) | |
WriterDispatchingIterator & | operator= (const WriterDispatchingIterator &) |
void | parseTemplateParameters () |
Private Attributes | |
int | refCount_ |
Iterators | iterators_ |
std::vector< eckit::PathName > | files_ |
TemplateParameters | templateParameters_ |
int | maxOpenFiles_ |
std::map< std::string, int > | filesCreated_ |
Friends | |
class | IteratorProxy< WriterDispatchingIterator< WRITE_ITERATOR, DispatchingWriter >, DispatchingWriter > |
Definition at line 36 of file WriterDispatchingIterator.h.
|
private |
Definition at line 40 of file WriterDispatchingIterator.h.
|
private |
Definition at line 38 of file WriterDispatchingIterator.h.
|
private |
Definition at line 39 of file WriterDispatchingIterator.h.
odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::WriterDispatchingIterator | ( | OWNER & | owner, |
int | maxOpenFiles, | ||
bool | append = false |
||
) |
Definition at line 47 of file WriterDispatchingIterator.cc.
odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::~WriterDispatchingIterator |
Definition at line 255 of file WriterDispatchingIterator.cc.
|
private |
int odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::close |
Definition at line 547 of file WriterDispatchingIterator.cc.
const std::string& odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::codecName | ( | size_t | index | ) | const |
double odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::columnMissingValue | ( | size_t | index | ) |
const std::string& odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::columnName | ( | size_t | index | ) | const |
|
inline |
Definition at line 66 of file WriterDispatchingIterator.h.
const MetaData & odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::columns | ( | const core::MetaData & | md | ) |
Definition at line 407 of file WriterDispatchingIterator.cc.
api::ColumnType odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::columnType | ( | size_t | index | ) |
|
protected |
Definition at line 167 of file WriterDispatchingIterator.cc.
double * odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::data |
Definition at line 322 of file WriterDispatchingIterator.cc.
double & odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::data | ( | size_t | i | ) |
Definition at line 325 of file WriterDispatchingIterator.cc.
|
inline |
The offset of a given column in the doubles[] data array.
Definition at line 81 of file WriterDispatchingIterator.h.
|
protected |
Find iterator data should be dispatched to.
Definition at line 140 of file WriterDispatchingIterator.cc.
|
protected |
Definition at line 146 of file WriterDispatchingIterator.cc.
unsigned long odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::gatherStats | ( | const double * | values, |
unsigned long | count | ||
) |
Definition at line 266 of file WriterDispatchingIterator.cc.
|
protected |
Definition at line 100 of file WriterDispatchingIterator.cc.
void odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::missingValue | ( | size_t | i, |
double | missingValue | ||
) |
Definition at line 414 of file WriterDispatchingIterator.cc.
|
protected |
Definition at line 299 of file WriterDispatchingIterator.cc.
int odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::open |
Definition at line 356 of file WriterDispatchingIterator.cc.
|
private |
std::vector< eckit::PathName > odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::outputFiles |
Definition at line 246 of file WriterDispatchingIterator.cc.
|
inline |
Definition at line 69 of file WriterDispatchingIterator.h.
|
private |
Definition at line 305 of file WriterDispatchingIterator.cc.
unsigned long odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::pass1 | ( | T & | , |
const T & | |||
) |
unsigned long odc::WriterDispatchingIterator< WriterBufferingIterator, DispatchingWriter >::pass1 | ( | T & | it, |
const T & | end | ||
) |
Definition at line 425 of file WriterDispatchingIterator.cc.
void odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::property | ( | std::string | key, |
std::string | value | ||
) |
Definition at line 537 of file WriterDispatchingIterator.cc.
std::string odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::property | ( | std::string | key | ) |
Definition at line 544 of file WriterDispatchingIterator.cc.
size_t odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::rowDataSizeDoubles |
Definition at line 330 of file WriterDispatchingIterator.cc.
int odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::setBitfieldColumn | ( | size_t | index, |
std::string | name, | ||
api::ColumnType | type, | ||
eckit::sql::BitfieldDef | b | ||
) |
Definition at line 86 of file WriterDispatchingIterator.cc.
int odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::setColumn | ( | size_t | index, |
std::string | name, | ||
api::ColumnType | type | ||
) |
Definition at line 74 of file WriterDispatchingIterator.cc.
|
inline |
Definition at line 76 of file WriterDispatchingIterator.h.
void odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::verify | ( | T & | , |
const T & | |||
) |
void odc::WriterDispatchingIterator< WriterBufferingIterator, DispatchingWriter >::verify | ( | T & | it, |
const T & | end | ||
) |
Definition at line 471 of file WriterDispatchingIterator.cc.
void odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::writeHeader |
Definition at line 272 of file WriterDispatchingIterator.cc.
int odc::WriterDispatchingIterator< WRITE_ITERATOR, OWNER >::writeRow | ( | const double * | values, |
unsigned long | count | ||
) |
Definition at line 341 of file WriterDispatchingIterator.cc.
|
friend |
Definition at line 134 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 117 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 103 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 100 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 109 of file WriterDispatchingIterator.h.
|
private |
Definition at line 129 of file WriterDispatchingIterator.h.
|
private |
Definition at line 134 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 116 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 112 of file WriterDispatchingIterator.h.
|
private |
Definition at line 128 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 99 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 111 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 114 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 115 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 101 of file WriterDispatchingIterator.h.
|
private |
Definition at line 132 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 102 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 104 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 105 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 98 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 107 of file WriterDispatchingIterator.h.
|
private |
Definition at line 126 of file WriterDispatchingIterator.h.
|
private |
Definition at line 131 of file WriterDispatchingIterator.h.
|
protected |
Definition at line 110 of file WriterDispatchingIterator.h.