![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Composite Base::DataReader that aggregates several underlying readers and presents their records as one contiguous record stream. More...
#include <CompoundDataReader.hpp>
Inheritance diagram for CDPL::Util::CompoundDataReader< DataType >:Public Types | |
| typedef std::shared_ptr< CompoundDataReader > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated CompoundDataReader instances. More... | |
| typedef Base::DataReader< DataType > | ReaderType |
| Type of the underlying Base::DataReader specialization. More... | |
| typedef ReaderType::SharedPointer | ReaderPointer |
| Shared-pointer type for the underlying readers. More... | |
Public Types inherited from CDPL::Base::DataReader< DataType > | |
| typedef DataType | DataType |
| The type of the read data objects. More... | |
| typedef std::shared_ptr< DataReader > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated DataReader instances. 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 | |
| CompoundDataReader () | |
Constructs an empty CompoundDataReader instance. More... | |
| ~CompoundDataReader () | |
| Destructor. More... | |
| CompoundDataReader (const CompoundDataReader &)=delete | |
| CompoundDataReader & | operator= (const CompoundDataReader &)=delete |
| void | addReader (const ReaderPointer &reader) |
| Appends reader to the list of underlying readers. More... | |
| void | removeReader (std::size_t idx) |
| Removes the reader at index idx from the list of underlying readers. More... | |
| std::size_t | getNumReaders () |
| Returns the number of underlying readers. More... | |
| void | clear () |
| Removes all underlying readers. More... | |
| std::size_t | getReaderIDForRecordIndex (std::size_t idx) const |
| Returns the index of the underlying reader that owns the global record index idx. More... | |
| const ReaderPointer & | getReader (std::size_t idx) const |
| Returns the underlying reader at index idx. More... | |
| CompoundDataReader & | read (DataType &obj, bool overwrite=true) |
| Reads the next record into obj. More... | |
| CompoundDataReader & | read (std::size_t idx, DataType &obj, bool overwrite=true) |
| Reads the record at the global index idx into obj. More... | |
| CompoundDataReader & | skip () |
| Skips the next record. More... | |
| bool | hasMoreData () |
| Tells whether more records are available. More... | |
| std::size_t | getRecordIndex () const |
| Returns the current global record index. More... | |
| void | setRecordIndex (std::size_t idx) |
| Sets the current global record index. More... | |
| std::size_t | getNumRecords () |
| Returns the total number of records across all underlying readers. More... | |
| operator const void * () const | |
| Tells whether the reader is in a good (readable) state. More... | |
| bool | operator! () const |
| Tells whether the reader is in a bad (non-readable) state. More... | |
Public Member Functions inherited from CDPL::Base::DataReader< DataType > | |
| virtual void | close () |
| Performs a reader specific shutdown operation (if required). 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::DataReader< DataType > | |
| DataReader & | operator= (const DataReader &reader) |
| 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... | |
Composite Base::DataReader that aggregates several underlying readers and presents their records as one contiguous record stream.
| DataType | The data type read by the contained Base::DataReader instances. |
| typedef std::shared_ptr<CompoundDataReader> CDPL::Util::CompoundDataReader< DataType >::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated CompoundDataReader instances.
| typedef Base::DataReader<DataType> CDPL::Util::CompoundDataReader< DataType >::ReaderType |
Type of the underlying Base::DataReader specialization.
| typedef ReaderType::SharedPointer CDPL::Util::CompoundDataReader< DataType >::ReaderPointer |
Shared-pointer type for the underlying readers.
| CDPL::Util::CompoundDataReader< DataType >::CompoundDataReader |
Constructs an empty CompoundDataReader instance.
| CDPL::Util::CompoundDataReader< DataType >::~CompoundDataReader |
Destructor.
|
delete |
|
delete |
| void CDPL::Util::CompoundDataReader< DataType >::addReader | ( | const ReaderPointer & | reader | ) |
Appends reader to the list of underlying readers.
| reader | The reader to add. |
| void CDPL::Util::CompoundDataReader< DataType >::removeReader | ( | std::size_t | idx | ) |
Removes the reader at index idx from the list of underlying readers.
| idx | The zero-based reader index. |
| Base::IndexError | if the number of readers is zero or idx is not in the range [0, getNumReaders() - 1]. |
| std::size_t CDPL::Util::CompoundDataReader< DataType >::getNumReaders |
Returns the number of underlying readers.
| void CDPL::Util::CompoundDataReader< DataType >::clear |
Removes all underlying readers.
| std::size_t CDPL::Util::CompoundDataReader< DataType >::getReaderIDForRecordIndex | ( | std::size_t | idx | ) | const |
Returns the index of the underlying reader that owns the global record index idx.
| idx | The zero-based global record index. |
| const CDPL::Util::CompoundDataReader< DataType >::ReaderPointer & CDPL::Util::CompoundDataReader< DataType >::getReader | ( | std::size_t | idx | ) | const |
Returns the underlying reader at index idx.
| idx | The zero-based reader index. |
const reference to the reader shared pointer. | Base::IndexError | if the number of readers is zero or idx is not in the range [0, getNumReaders() - 1]. |
|
virtual |
Reads the next record into obj.
| obj | The output object. |
| overwrite | If true, the output object is cleared before the record is copied into it. |
Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Reads the record at the global index idx into obj.
| idx | The zero-based global record index. |
| obj | The output object. |
| overwrite | If true, the output object is cleared before the record is copied into it. |
| Base::IndexError | if the number of records is zero or idx is not in the range [0, getNumRecords() - 1]. |
Implements CDPL::Base::DataReader< DataType >.
|
virtual |
|
virtual |
Tells whether more records are available.
true if at least one more record is available, and false otherwise. Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Returns the current global record index.
Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Sets the current global record index.
| idx | The new zero-based global record index (may equal getNumRecords() to position past the last record). |
| Base::IndexError | if idx is strictly greater than getNumRecords(). |
Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Returns the total number of records across all underlying readers.
Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Tells whether the reader is in a good (readable) state.
nullptr pointer if the reader is in a good state, and nullptr otherwise. Implements CDPL::Base::DataReader< DataType >.
|
virtual |
Tells whether the reader is in a bad (non-readable) state.
true if the reader is in a bad state, and false otherwise. Implements CDPL::Base::DataReader< DataType >.