86   complexDims.
nx = 2 * complexDims.
nx;
    98                               const size_t compressionLevel)
   102   complexDims.
nx = 2 * complexDims.
nx;
   140   mSize = dimensionSizes.
nx * dimensionSizes.
ny * dimensionSizes.
nz;
 size_t mRowSize
Size of a 1D row in X dimension. 
 
virtual ~ComplexMatrix()
Destructor. 
 
virtual void allocateMemory()
Aligned memory allocation (both on CPU and GPU). 
 
hid_t getRootGroup() const
Get handle to the root group of the file. 
 
size_t nz
Number of elements in the z direction. 
 
The matrix is defined on complex domain. 
 
ErrorMessage kErrFmtMatrixNotComplex
Matrix class error message. 
 
void writeMatrixDomainType(const hid_t parentGroup, MatrixName &datasetName, const MatrixDomainType &matrixDomainType)
Write matrix data type into the dataset at a specified place in the file tree. 
 
void closeDataset(const hid_t dataset)
Close dataset. 
 
float * mData
Raw matrix data. 
 
DimensionSizes mDimensionSizes
Dimension sizes. 
 
void writeMatrixDataType(const hid_t parentGroup, MatrixName &datasetName, const MatrixDataType &matrixDataType)
Write matrix data type into the dataset at a specified place in the file tree. 
 
virtual void writeData(Hdf5File &file, MatrixName &matrixName, const size_t compressionLevel)
Write data into HDF5 file. 
 
The header file containing a class responsible for printing out info and error messages (stdout...
 
Class wrapping the HDF5 routines. 
 
void initDimensions(const DimensionSizes &dimensionSizes)
Initialize dimension sizes. 
 
static std::string formatMessage(const std::string &format, Args ... args)
C++-11 replacement for sprintf that works with std::string instead of char*. 
 
void writeHyperSlab(const hid_t dataset, const DimensionSizes &position, const DimensionSizes &size, const T *data)
Write a hyperslab into the dataset. 
 
const std::string MatrixName
Datatype for matrix names. 
 
Structure with 4D dimension sizes (3 in space and 1 in time). 
 
The matrix is stored in floating point 32b wide format. 
 
MatrixDataType readMatrixDataType(const hid_t parentGroup, MatrixName &datasetName)
Read matrix data type from the dataset at a specified place in the file tree. 
 
The header file with the class for complex matrices. 
 
size_t ny
Number of elements in the y direction. 
 
virtual void freeMemory()
Memory allocation (both on CPU and GPU). 
 
virtual void readData(Hdf5File &file, MatrixName &matrixName)
Read matrix from HDF5 file. 
 
size_t mSize
Total number of used elements. 
 
void readCompleteDataset(const hid_t parentGroup, MatrixName &datasetName, const DimensionSizes &dimensionSizes, T *data)
Read data from the dataset at a specified place in the file tree. 
 
size_t nx
Number of elements in the x direction. 
 
size_t mSlabSize
Size of a XY slab. 
 
ComplexMatrix()=delete
Default constructor not allowed. 
 
hid_t createDataset(const hid_t parentGroup, MatrixName &datasetName, const DimensionSizes &dimensionSizes, const DimensionSizes &chunkSizes, const MatrixDataType matrixDataType, const size_t compressionLevel)
Create a float HDF5 dataset at a specified place in the file tree (3D/4D). 
 
MatrixDomainType readMatrixDomainType(const hid_t parentGroup, MatrixName &datasetName)
Read matrix dataset domain type at a specified place in the file tree. 
 
ErrorMessage kErrFmtMatrixNotFloat
Matrix class error message. 
 
size_t mCapacity
Total number of allocated elements (in terms of floats). 
 
Abstract base class for float based matrices defining basic interface. Higher dimensional matrices st...