aimsdata
5.0.5
Neuroimaging data handling
|
Low-level "small item" reader, used by higher-level file readers. More...
#include <aims/io/itemR.h>
Public Member Functions | |
virtual | ~ItemReader () |
virtual void | read (std::istream &is, T &item) const |
virtual void | read (std::istream &is, T *pitem, size_t n) const =0 |
void | read (const std::string &istring, T &item) const |
void | read (const std::string &istring, T *pitem, size_t n) const |
virtual ItemReader< T > * | reader (const std::string &openmode="binar", bool bswap=false) const =0 |
Low-level "small item" reader, used by higher-level file readers.
It can read either a single item, or an array of them. This template class is inherited by specific item readers, esp. by the DefaultItemReader classes.
This new version differs from the one in Aims 2.7 and before in several aspects:
As a result the new ItemReader is a lot faster than in Aims 2.7 since it doesn't have to check the reading mode and switch to different operating modes at each specific read.
As a counterpart, you now generally have to allocate two readers: one to use the correct item variant, and another one to switch on the reading-mode specific ItemReader:
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in aims::DefaultBSwapItemReader< AimsVector< T, D > >, aims::DefaultItemReader< AimsVector< T, D > >, aims::DefaultBSwapItemReader< T >, aims::DefaultBSwapItemReader< DtiTensor >, aims::DefaultAsciiItemReader< std::vector< T > >, aims::DefaultBSwapItemReader< SparseMatrix >, aims::DefaultBSwapItemReader< Trieder >, aims::DefaultBSwapItemReader< Tensor >, aims::DefaultBSwapItemReader< std::list< T > >, aims::DefaultAsciiItemReader< T >, aims::DefaultAsciiItemReader< DtiTensor >, aims::DefaultAsciiItemReader< SparseMatrix >, aims::DefaultAsciiItemReader< Trieder >, aims::DefaultAsciiItemReader< Tensor >, aims::DefaultBSwapItemReader< std::vector< T > >, aims::DefaultAsciiItemReader< std::list< T > >, aims::DefaultItemReader< T >, aims::DefaultItemReader< DtiTensor >, aims::DefaultItemReader< SparseMatrix >, aims::DefaultItemReader< Trieder >, aims::DefaultItemReader< Tensor >, aims::DefaultItemReader< std::list< T > >, and aims::DefaultItemReader< std::vector< T > >.
Definition at line 103 of file itemR.h.
Referenced by aims::BckMapReader< T >::read(), aims::GenesisReader< T >::read(), aims::TexReader< T >::read(), aims::MeshReader< D, T >::read(), aims::DefaultItemReader< T >::read(), aims::FdfReader< T >::read(), aims::ImasVolFormat< T >::read(), aims::DefaultAsciiItemReader< T >::read(), aims::SpmReader< T >::read(), aims::DefaultBSwapItemReader< T >::read(), aims::DefaultItemReader< AimsVector< T, D > >::read(), and aims::DefaultBSwapItemReader< AimsVector< T, D > >::read().
|
pure virtual |
Implemented in aims::DefaultBSwapItemReader< AimsVector< T, D > >, aims::DefaultItemReader< AimsVector< T, D > >, aims::DefaultBSwapItemReader< T >, aims::DefaultAsciiItemReader< std::vector< T > >, aims::DefaultBSwapItemReader< AimsBucketItem< T > >, aims::DefaultAsciiItemReader< T >, aims::DefaultAsciiItemReader< AimsBucketItem< T > >, aims::DefaultBSwapItemReader< std::vector< T > >, aims::DefaultItemReader< T >, aims::DefaultItemReader< AimsBucketItem< T > >, aims::DefaultItemReader< DtiTensor >, aims::DefaultItemReader< SparseMatrix >, aims::DefaultItemReader< Trieder >, aims::DefaultItemReader< Tensor >, aims::DefaultItemReader< std::list< T > >, and aims::DefaultItemReader< std::vector< T > >.
|
inline |
|
inline |
|
pure virtual |
Implemented in aims::DefaultItemReader< AimsVector< T, D > >, aims::DefaultItemReader< T >, aims::DefaultItemReader< AimsBucketItem< T > >, aims::DefaultItemReader< DtiTensor >, aims::DefaultItemReader< SparseMatrix >, aims::DefaultItemReader< Trieder >, aims::DefaultItemReader< Tensor >, aims::DefaultItemReader< std::list< T > >, and aims::DefaultItemReader< std::vector< T > >.