Inheritance diagram for code::DataEncoder:
Example usage: create notification mechanism (once) SmartPtr<IndexRecordNotifier> lb = IndexRecordNotifier::createDefaultNotifier(lbname); write data and notify (each time) DataEncoder::writeData( data, outputDir, *lb ); DataEncoder::writeData( data, outputDir, desired_subtype, *lb );
Public Member Functions | |
virtual | ~DataEncoder () |
Static Public Member Functions | |
static std::string | writeData (const DataType &dt, const std::string &outputDir, std::vector< Index::Record > &records) |
Chooses the correct data encoder for the particular data type, writes out the product, and appends the records to the given vector. | |
static std::string | writeData (const DataType &dt, const std::string &outputDir, const std::string &subtype, std::vector< Index::Record > &records) |
Chooses the correct data encoder for the particular data type, writes out the product, and appends the records to the given vector. | |
static std::string | writeData (const DataType &dt, const std::string &outputDir, IndexRecordNotifier ¬ifier) |
Chooses the correct data encoder for the particular data type, writes out the product, and notifies about the resulting record(s). | |
static std::string | writeData (const DataType &dt, const std::string &outputDir, const std::string &subtype, IndexRecordNotifier ¬ifier) |
Chooses the correct data encoder for the particular data type, writes out the product, and notifies about the resulting record(s). | |
static SmartPtr< DataFormatSettings > | getSetting (const std::string &datatype) |
Protected Member Functions | |
virtual std::string | encode (const code::DataType &dt, std::vector< Index::Record > &records)=0 |
Write out this product and append the Index::Record(s) for it into the resulting vector. | |
virtual std::string | encode (const code::DataType &dt, const std::string &subtype, std::vector< Index::Record > &records)=0 |
Write out this product and append the Index::Record(s) for it (but use the specified subtype string) into the resulting vector. | |
virtual void | applySettings (const std::map< std::string, std::string > &settings) |
Forward any extra settings specific to encoder from XML file. | |
virtual SmartPtr< DataEncoder > | createDataEncoder (const std::string &outputDir, bool compress, bool subdirs) const =0 |
Create an encoder to write to this directory with these settings. | |
Classes | |
struct | DataFormatSettings |
virtual code::DataEncoder::~DataEncoder | ( | ) | [inline, virtual] |
virtual void code::DataEncoder::applySettings | ( | const std::map< std::string, std::string > & | settings | ) | [inline, protected, virtual] |
Forward any extra settings specific to encoder from XML file.
Reimplemented in code::NetcdfDataEncoder.
virtual SmartPtr<DataEncoder> code::DataEncoder::createDataEncoder | ( | const std::string & | outputDir, | |
bool | compress, | |||
bool | subdirs | |||
) | const [protected, pure virtual] |
Create an encoder to write to this directory with these settings.
Implemented in code::AwipsNetcdfDataEncoder, code::NetcdfDataEncoder, and code::XMLDataEncoder.
virtual std::string code::DataEncoder::encode | ( | const code::DataType & | dt, | |
const std::string & | subtype, | |||
std::vector< Index::Record > & | records | |||
) | [protected, pure virtual] |
Write out this product and append the Index::Record(s) for it (but use the specified subtype string) into the resulting vector.
No record will be appended if there was a problem.
Implemented in code::AwipsNetcdfDataEncoder, code::NetcdfDataEncoder, and code::XMLDataEncoder.
virtual std::string code::DataEncoder::encode | ( | const code::DataType & | dt, | |
std::vector< Index::Record > & | records | |||
) | [protected, pure virtual] |
Write out this product and append the Index::Record(s) for it into the resulting vector.
No record will be appended if there was a problem.
Implemented in code::AwipsNetcdfDataEncoder, code::NetcdfDataEncoder, and code::XMLDataEncoder.
static SmartPtr<DataFormatSettings> code::DataEncoder::getSetting | ( | const std::string & | datatype | ) | [static] |
static std::string code::DataEncoder::writeData | ( | const DataType & | dt, | |
const std::string & | outputDir, | |||
const std::string & | subtype, | |||
IndexRecordNotifier & | notifier | |||
) | [static] |
Chooses the correct data encoder for the particular data type, writes out the product, and notifies about the resulting record(s).
static std::string code::DataEncoder::writeData | ( | const DataType & | dt, | |
const std::string & | outputDir, | |||
IndexRecordNotifier & | notifier | |||
) | [static] |
Chooses the correct data encoder for the particular data type, writes out the product, and notifies about the resulting record(s).
static std::string code::DataEncoder::writeData | ( | const DataType & | dt, | |
const std::string & | outputDir, | |||
const std::string & | subtype, | |||
std::vector< Index::Record > & | records | |||
) | [static] |
Chooses the correct data encoder for the particular data type, writes out the product, and appends the records to the given vector.
The records all have the specified sub-type.
static std::string code::DataEncoder::writeData | ( | const DataType & | dt, | |
const std::string & | outputDir, | |||
std::vector< Index::Record > & | records | |||
) | [static] |
Chooses the correct data encoder for the particular data type, writes out the product, and appends the records to the given vector.