00001 #ifndef QBLASDATABUFFER_H
00002 #define QBLASDATABUFFER_H
00003
00004 #ifndef DOXYGEN_IGNORE_THIS
00005 #include <QSharedData>
00006
00007 class QBlasDataBuffer: public QSharedData
00008 {
00009 public:
00010 QBlasDataBuffer(const int size): QSharedData(), dataSize(size), data(new double[dataSize])
00011 { }
00012
00013 QBlasDataBuffer(const QBlasDataBuffer &tensorData): QSharedData(),
00014 dataSize(tensorData.dataSize), data(new double[100*dataSize])
00015 { cblas_dcopy(dataSize, tensorData.getReadData(), 1, getWriteData(), 1); }
00016
00017 ~QBlasDataBuffer()
00018 { delete data; }
00019
00020 const double *getReadData() const { return data; }
00021 double *getWriteData() { return data; }
00022
00023 private:
00024 int dataSize;
00025 double *data;
00026 };
00027 #endif
00028 #endif