![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Base::DataWriter front-end that automatically selects a concrete handler from Base::DataIOManager based on the output file name or an explicitly supplied format identifier. More...
#include <MultiFormatDataWriter.hpp>
Inheritance diagram for CDPL::Util::MultiFormatDataWriter< DataType >:Public Types | |
| typedef std::shared_ptr< MultiFormatDataWriter > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated MultiFormatDataWriter instances. More... | |
Public Types inherited from CDPL::Base::DataWriter< DataType > | |
| typedef std::shared_ptr< DataWriter > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated DataWriter instances. More... | |
| typedef DataType | DataType |
| The type of the written data objects. More... | |
Public Types inherited from CDPL::Base::DataIOBase | |
| typedef std::function< void(const DataIOBase &, double)> | IOCallbackFunction |
| A functor class used to wrap I/O callback target functions. More... | |
Public Types inherited from CDPL::Base::ControlParameterContainer | |
| typedef ParameterMap::value_type | ParameterEntry |
| A Base::LookupKey / Base::Any pair used to store the control-parameter values and associated keys. More... | |
| typedef ParameterMap::const_iterator | ConstParameterIterator |
| A constant iterator used to iterate over the control-parameter entries. More... | |
| typedef std::function< void(const LookupKey &, const Any &)> | ParameterChangedCallbackFunction |
| A functor class that wraps callback target functions which get invoked when the value of a control-parameter has changed. More... | |
| typedef std::function< void(const LookupKey &)> | ParameterRemovedCallbackFunction |
| A functor class that wraps callback target functions which get invoked when a control-parameter entry has been removed. More... | |
| typedef std::function< void()> | ParentChangedCallbackFunction |
| A functor class that wraps callback target functions which get invoked when the parent container has been changed or was detached. More... | |
Public Member Functions | |
| MultiFormatDataWriter (const std::string &file_name, std::ios_base::openmode mode=std::ios_base::in|std::ios_base::out|std::ios_base::trunc|std::ios_base::binary) | |
Constructs a MultiFormatDataWriter that opens file_name and deduces the output format from its name. More... | |
| MultiFormatDataWriter (const std::string &file_name, const std::string &fmt, std::ios_base::openmode mode=std::ios_base::in|std::ios_base::out|std::ios_base::trunc|std::ios_base::binary) | |
Constructs a MultiFormatDataWriter that opens file_name and uses the output handler matching the file-extension/format name fmt. More... | |
| MultiFormatDataWriter (const std::string &file_name, const Base::DataFormat &fmt, std::ios_base::openmode mode=std::ios_base::in|std::ios_base::out|std::ios_base::trunc|std::ios_base::binary) | |
Constructs a MultiFormatDataWriter that opens file_name and uses the output handler matching the Base::DataFormat fmt. More... | |
| MultiFormatDataWriter (std::iostream &ios, const std::string &fmt) | |
Constructs a MultiFormatDataWriter that wraps ios and uses the output handler matching the file-extension/format name fmt. More... | |
| MultiFormatDataWriter (std::iostream &ios, const Base::DataFormat &fmt) | |
Constructs a MultiFormatDataWriter that wraps ios and uses the output handler matching the Base::DataFormat fmt. More... | |
| MultiFormatDataWriter (const MultiFormatDataWriter &)=delete | |
| MultiFormatDataWriter & | operator= (const MultiFormatDataWriter &)=delete |
| const Base::DataFormat & | getDataFormat () const |
| Returns the data format actually used by the wrapped output handler. More... | |
| MultiFormatDataWriter & | write (const DataType &obj) |
| Writes obj via the wrapped writer. More... | |
| void | close () |
| Closes the wrapped writer (and the underlying file stream if owned). More... | |
| operator const void * () const | |
| Tells whether the writer is in a good (writable) state. More... | |
| bool | operator! () const |
| Tells whether the writer is in a bad (non-writable) state. More... | |
Public Member Functions inherited from CDPL::Base::DataIOBase | |
| std::size_t | registerIOCallback (const IOCallbackFunction &func) |
| Registers an I/O callback target function. More... | |
| void | unregisterIOCallback (std::size_t id) |
| Unregisters the I/O callback function specified by id. More... | |
| void | invokeIOCallbacks (double progress) const |
Invokes all registered I/O callback functions with the argument *this. More... | |
| void | clearIOCallbacks () |
| Clears all registered I/O callback functions. More... | |
Public Member Functions inherited from CDPL::Base::ControlParameterContainer | |
| std::size_t | getNumParameters () const |
| Returns the number of container entries. More... | |
| template<typename T > | |
| void | setParameter (const LookupKey &key, T &&val) |
| Sets the value of the control-parameter specified by key to val. More... | |
| const Any & | getParameter (const LookupKey &key, bool throw_=false, bool local=false) const |
| Returns the value of the control-parameter specified by key. More... | |
| template<typename T > | |
| const T & | getParameter (const LookupKey &key, bool local=false) const |
Returns the value of the control-parameter specified by key as a const reference to an object of type T. More... | |
| template<typename T > | |
| const T & | getParameterOrDefault (const LookupKey &key, const T &def_val, bool local=false) const |
Returns the value of the control-parameter specified by key as a const reference to an object of type T, or the default value def_val if a stored value does not exist. More... | |
| bool | removeParameter (const LookupKey &key) |
| Removes the entry for the control-parameter specified by key. More... | |
| void | clearParameters () |
| Erases all container entries. More... | |
| bool | isParameterSet (const LookupKey &key, bool local=false) const |
| Tells whether or not a value has been assigned to the control-parameter specified by key. More... | |
| void | addParameters (const ControlParameterContainer &cntnr) |
Adds the control-parameter value entries in the ControlParameterContainer instance cntnr. More... | |
| void | copyParameters (const ControlParameterContainer &cntnr) |
| Replaces the current set of properties by a copy of the entries in cntnr. More... | |
| ConstParameterIterator | getParametersBegin () const |
| Returns a constant iterator pointing to the beginning of the entries. More... | |
| ConstParameterIterator | getParametersEnd () const |
| Returns a constant iterator pointing to the end of the entries. More... | |
| ConstParameterIterator | begin () const |
| Returns a constant iterator pointing to the beginning of the entries. More... | |
| ConstParameterIterator | end () const |
| Returns a constant iterator pointing to the end of the entries. More... | |
| void | setParent (const ControlParameterContainer *cntnr) |
| Sets or removes the parent control-parameter container used to resolve requests for missing entries. More... | |
| const ControlParameterContainer * | getParent () const |
| Returns a pointer to the parent control-parameter container. More... | |
| std::size_t | registerParameterChangedCallback (const ParameterChangedCallbackFunction &func) |
| Registers a callback target function that gets invoked when the value of a control-parameter has changed. More... | |
| void | unregisterParameterChangedCallback (std::size_t id) |
| Unregisters the callback specified by id. More... | |
| std::size_t | registerParameterRemovedCallback (const ParameterRemovedCallbackFunction &func) |
| Registers a callback target function that gets invoked when a control-parameter entry has been removed. More... | |
| void | unregisterParameterRemovedCallback (std::size_t id) |
| Unregisters the callback specified by id. More... | |
| std::size_t | registerParentChangedCallback (const ParentChangedCallbackFunction &func) |
| Registers a callback target function that gets invoked when the parent container has been changed or was detached. More... | |
| void | unregisterParentChangedCallback (std::size_t id) |
| Unregisters the callback specified by id. More... | |
| const ControlParameterContainer & | getParameters () const |
Returns a const reference to itself. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CDPL::Base::DataWriter< DataType > | |
| DataWriter & | operator= (const DataWriter &writer) |
| Assignment operator. More... | |
Protected Member Functions inherited from CDPL::Base::DataIOBase | |
| DataIOBase () | |
| Default constructor. More... | |
| DataIOBase (const DataIOBase &io_base) | |
| Copy constructor. More... | |
| ~DataIOBase () | |
| Destructor. More... | |
| DataIOBase & | operator= (const DataIOBase &io_base) |
| Assignment operator. More... | |
Protected Member Functions inherited from CDPL::Base::ControlParameterContainer | |
| ControlParameterContainer () | |
Constructs an empty ControlParameterContainer instance. More... | |
| ControlParameterContainer (const ControlParameterContainer &cntnr) | |
Constructs a copy of the ControlParameterContainer instance cntnr. More... | |
| virtual | ~ControlParameterContainer () |
| Destructor. More... | |
| ControlParameterContainer & | operator= (const ControlParameterContainer &cntnr) |
| Assignment operator. More... | |
Base::DataWriter front-end that automatically selects a concrete handler from Base::DataIOManager based on the output file name or an explicitly supplied format identifier.
| DataType | The data type to write. |
| typedef std::shared_ptr<MultiFormatDataWriter> CDPL::Util::MultiFormatDataWriter< DataType >::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated MultiFormatDataWriter instances.
| CDPL::Util::MultiFormatDataWriter< DataType >::MultiFormatDataWriter | ( | const std::string & | file_name, |
| std::ios_base::openmode | mode = std::ios_base::in | std::ios_base::out | std::ios_base::trunc | std::ios_base::binary |
||
| ) |
Constructs a MultiFormatDataWriter that opens file_name and deduces the output format from its name.
| file_name | The output-file name. |
| mode | The open mode of the underlying file stream. |
| Base::IOError | if no matching output handler was found. |
| CDPL::Util::MultiFormatDataWriter< DataType >::MultiFormatDataWriter | ( | const std::string & | file_name, |
| const std::string & | fmt, | ||
| std::ios_base::openmode | mode = std::ios_base::in | std::ios_base::out | std::ios_base::trunc | std::ios_base::binary |
||
| ) |
Constructs a MultiFormatDataWriter that opens file_name and uses the output handler matching the file-extension/format name fmt.
| file_name | The output-file name. |
| fmt | A file-extension or format name resolvable via Base::DataIOManager. |
| mode | The open mode of the underlying file stream. |
| Base::IOError | if no matching output handler was found. |
| CDPL::Util::MultiFormatDataWriter< DataType >::MultiFormatDataWriter | ( | const std::string & | file_name, |
| const Base::DataFormat & | fmt, | ||
| std::ios_base::openmode | mode = std::ios_base::in | std::ios_base::out | std::ios_base::trunc | std::ios_base::binary |
||
| ) |
Constructs a MultiFormatDataWriter that opens file_name and uses the output handler matching the Base::DataFormat fmt.
| file_name | The output-file name. |
| fmt | The output format identifier. |
| mode | The open mode of the underlying file stream. |
| Base::IOError | if no matching output handler was found. |
| CDPL::Util::MultiFormatDataWriter< DataType >::MultiFormatDataWriter | ( | std::iostream & | ios, |
| const std::string & | fmt | ||
| ) |
Constructs a MultiFormatDataWriter that wraps ios and uses the output handler matching the file-extension/format name fmt.
| ios | The output stream to wrap. |
| fmt | A file-extension or format name resolvable via Base::DataIOManager. |
| Base::IOError | if no matching output handler was found. |
| CDPL::Util::MultiFormatDataWriter< DataType >::MultiFormatDataWriter | ( | std::iostream & | ios, |
| const Base::DataFormat & | fmt | ||
| ) |
Constructs a MultiFormatDataWriter that wraps ios and uses the output handler matching the Base::DataFormat fmt.
| ios | The output stream to wrap. |
| fmt | The output format identifier. |
| Base::IOError | if no matching output handler was found. |
|
delete |
|
delete |
| const CDPL::Base::DataFormat & CDPL::Util::MultiFormatDataWriter< DataType >::getDataFormat |
Returns the data format actually used by the wrapped output handler.
const reference to the resolved Base::DataFormat.
|
virtual |
Writes obj via the wrapped writer.
| obj | The object to write. |
Implements CDPL::Base::DataWriter< DataType >.
|
virtual |
Closes the wrapped writer (and the underlying file stream if owned).
Reimplemented from CDPL::Base::DataWriter< DataType >.
|
virtual |
Tells whether the writer is in a good (writable) state.
nullptr pointer if the writer is in a good state, and nullptr otherwise. Implements CDPL::Base::DataWriter< DataType >.
|
virtual |
Tells whether the writer is in a bad (non-writable) state.
true if the writer is in a bad state, and false otherwise. Implements CDPL::Base::DataWriter< DataType >.