| 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/BaseLongMatrix.h
Go to the documentation of this file.

    00001
    00034 #ifndef BASELONGMATRIXDATA_H
    00035 #define  BASELONGMATRIXDATA_H
    00036
    00037
    00038 #include <MatrixClasses/BaseMatrix.h>
    00039
    00040 #include <Utils/DimensionSizes.h>
    00041
    00042
    00043 using namespace std;
    00044
    00050 class TBaseLongMatrix : public TBaseMatrix{
    00051 public:
    00053     TBaseLongMatrix(): TBaseMatrix(),  pTotalElementCount(0), pTotalAllocatedElementCount(0),
    00054                            pDimensionSizes(), pDataRowSize(0), p2DDataSliceSize (0),  pMatrixData (NULL)
    00055     {};
    00056
    00057
    00059     inline struct TDimensionSizes GetDimensionSizes() const {
    00060         return pDimensionSizes;
    00061     }
    00062
    00064     virtual size_t GetTotalElementCount() const {
    00065         return pTotalElementCount;
    00066     };
    00067
    00069     virtual size_t GetTotalAllocatedElementCount() const {
    00070         return pTotalAllocatedElementCount;
    00071     };
    00072
    00074     virtual ~TBaseLongMatrix(){};
    00075
    00076
    00078     virtual void ZeroMatrix();
    00079
    00081     virtual long* GetRawData() {return pMatrixData;}
    00082
    00083 protected:
    00085     size_t pTotalElementCount;
    00087     size_t pTotalAllocatedElementCount;
    00088
    00090     struct TDimensionSizes pDimensionSizes;
    00091
    00093     size_t pDataRowSize;
    00095     size_t p2DDataSliceSize;
    00096
    00098     long* pMatrixData;
    00099
    00100
    00102     virtual void AllocateMemory();
    00103
    00105     virtual void FreeMemory() ;
    00106
    00108     TBaseLongMatrix(const TBaseLongMatrix& src);
    00110     TBaseLongMatrix & operator =(const TBaseLongMatrix& src);
    00111
    00112
    00113 private:
    00114
    00115 };// end of TBaseLongMatrix
    00116 //------------------------------------------------------------------------------
    00117
    00118 #endif   /* TBASEINTDATA_H */
    00119

All Classes Files Functions Variables Typedefs Enumerations