You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
806 B
37 lines
806 B
#ifndef CRI_H
|
|
#define CRI_H
|
|
|
|
#include <QObject>
|
|
#include <QMetaType>
|
|
|
|
#include "model/processor/IProcessStrategy.h"
|
|
#include "utils/OpenCLHelper.h"
|
|
|
|
#define CRI_MAX_BUFFER_SIZE 11
|
|
|
|
|
|
typedef struct Cri_t
|
|
{
|
|
cl_int criFilterMode;
|
|
cl_int frameCntr;
|
|
cl_int scenariFrameNo;
|
|
}Cri_t;
|
|
|
|
|
|
class Cri : public IProcessStrategy
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
Q_INVOKABLE Cri(const Context context, const QString kernelPath, const QObject *parent);
|
|
virtual void cpuProcess(ScenGenOutput_t parameters) override;
|
|
virtual void finalize() override;
|
|
|
|
private:
|
|
KernelFunctor<Image2DArray, Image2D, Cri_t> _kernelFunctor;
|
|
virtual Image* processKernel(Image *frames, Buffer* scratchPad) override;
|
|
Cri_t _kernelParameters;
|
|
Image2D* _criBuffer[CRI_MAX_BUFFER_SIZE];
|
|
//
|
|
int counter = 0;
|
|
};
|
|
#endif // CRI_H
|
|
|