32 #ifndef COMPLEX_MATRIX_H 33 #define COMPLEX_MATRIX_H 90 const size_t compressionLevel);
154 const size_t z)
const size_t mRowSize
Size of a 1D row in X dimension.
virtual ~ComplexMatrix()
Destructor.
FloatComplex & operator[](const size_t &index)
Operator [].
const FloatComplex & operator[](const size_t &index) const
Operator [], constant version.
The header file containing the class for real matrices.
std::complex< float > FloatComplex
Datatype for complex single precision numbers.
float * mData
Raw matrix data.
virtual void writeData(Hdf5File &file, MatrixName &matrixName, const size_t compressionLevel)
Write data into HDF5 file.
Class wrapping the HDF5 routines.
The class for complex matrices.
void initDimensions(const DimensionSizes &dimensionSizes)
Initialize dimension sizes.
const std::string MatrixName
Datatype for matrix names.
Structure with 4D dimension sizes (3 in space and 1 in time).
virtual FloatComplex * getComplexData()
Get raw complex data out of the class (for direct kernel access).
The header file containing the structure with 3D dimension sizes.
virtual const FloatComplex * getComplexData() const
Get raw complex data out of the class (for direct kernel access).
virtual void readData(Hdf5File &file, MatrixName &matrixName)
Read matrix from HDF5 file.
The header file containing the base class for single precisions floating point numbers (floats)...
const FloatComplex & GetElementFrom3D(const size_t x, const size_t y, const size_t z) const
Get element from 3D matrix, constant version.
size_t mSlabSize
Size of a XY slab.
ComplexMatrix()=delete
Default constructor not allowed.
ComplexMatrix & operator=(const ComplexMatrix &)
Operator= is not allowed.
FloatComplex & GetElementFrom3D(const size_t x, const size_t y, const size_t z)
Get element from 3D matrix.
Abstract base class for float based matrices defining basic interface. Higher dimensional matrices st...