swh:1:snp:e6d42e6731ce66e3c09de07ac49964c03139e990
Raw File
Tip revision: 99932db9e71d31a76425d68eef7d5859523ca0e4 authored by Konrad Werys on 04 November 2019, 09:33:32 UTC
doc: changes in the documentation
Tip revision: 99932db
OxTestImage.h
/*!
 * \file OxTestImage.h
 * \author Konrad Werys
 * \date 2018/07/30
 */

#ifndef Tomato_OXTESTImage_H
#define Tomato_OXTESTImage_H

#include "OxTestData.h"


namespace Ox {

    template< typename MeasureType >
    class TestImage {

    public:

        TestImage(int nCols, int nRows, std::vector <std::string> filesPaths, std::vector<int> invTimesOrder);
        TestImage(int nCols, int nRows, std::vector <std::string> filesPaths);
        virtual ~TestImage();

        int init(int nCols, int nRows, std::vector <std::string> filesPaths, std::vector<int> invTimesOrder);

        virtual MeasureType *getInvTimesPtr() ;
        virtual std::vector<MeasureType> getInvTimes() const;

        virtual MeasureType *getImageMagPtr() const;
        virtual MeasureType *getImagePhaPtr() const;
        virtual MeasureType *getImageResultsMolliPtr() const;
        virtual MeasureType *getImageResultsShmolliPtr() const;

        virtual int getNCols() const { return _nCols; }
        virtual int getNRows() const { return _nRows; }
        virtual int getNSamples() const { return _nSamples; }

    protected:

        int _nCols;
        int _nRows;
        int _nSamples;

        std::vector<MeasureType> _invTimes;
        std::vector<int> _invTimesOrder;

        MeasureType *_imageMag; // nRows * nCols * nSamples, address [iRow][iCol][iSam] iSample * (nRows*nCols) + iCol * nRows + iRow
        MeasureType *_imagePha; // nRows * nCols * nSamples, address [iRow][iCol][iSam] iSample * (nRows*nCols) + iCol * nRows + iRow

        MeasureType *_imageResultsMolli; // nCols * nRows * 3
        MeasureType *_imageResultsShmolli; // nCols * nRows * 3

    };
} // namespace Ox

#include "OxTestImage.hxx"

#endif //Tomato_OXTESTImage_H
back to top