| kspaceFirstOrder3D-OMP 1.0 The C++ implementation of the k-wave toolbox for the time-domain simulation of acoustic wave fields in 3D

- Main Page
- Classes
- Files

- File List
- File Members

MatrixClasses/LongMatrix.h
Go to the documentation of this file.

    00001
    00031 #ifndef LONGMATRIXDATA_H
    00032 #define  LONGMATRIXDATA_H
    00033
    00034
    00035 #include <MatrixClasses/BaseLongMatrix.h>
    00036
    00037 #include <Utils/DimensionSizes.h>
    00038
    00043 class TLongMatrix : public TBaseLongMatrix{
    00044 public:
    00045
    00047     TLongMatrix(struct TDimensionSizes DimensionSizes);
    00048
    00050     virtual ~TLongMatrix() { FreeMemory(); };
    00051
    00053     virtual void ReadDataFromHDF5File(THDF5_File & HDF5_File, const char * MatrixName);
    00055     virtual void WriteDataToHDF5File(THDF5_File & HDF5_File, const char * MatrixName, const int CompressionLevel);
    00056
    00062     long& operator [](const size_t& index) {
    00063         return pMatrixData[index];
    00064     };
    00065
    00066
    00074     inline long&  GetElementFrom3D(const size_t X, const size_t Y, const size_t Z){
    00075         return pMatrixData[Z * p2DDataSliceSize + Y * pDataRowSize +  X];
    00076     };
    00077
    00078
    00079
    00081     void RecomputeIndices();
    00082
    00083
    00084
    00085 protected:
    00087     TLongMatrix()  : TBaseLongMatrix() {};
    00088
    00090     TLongMatrix(const TLongMatrix& src);
    00091
    00093     TLongMatrix& operator = (const TLongMatrix& src);
    00094
    00095 private:
    00096
    00097
    00098 };// end of TLongMatrixData
    00099 //------------------------------------------------------------------------------
    00100 #endif   /* LONGMATRIXDATA_H */
    00101

All Classes Files Functions Variables Typedefs Enumerations