6 changed files with 46 additions and 2 deletions
@ -0,0 +1,35 @@ |
|||||
|
#ifndef CRI_H |
||||
|
#define CRI_H |
||||
|
|
||||
|
#include <QObject> |
||||
|
#include <QMetaType> |
||||
|
|
||||
|
#include "model/processor/IProcessStrategy.h" |
||||
|
#include "utils/OpenCLHelper.h" |
||||
|
|
||||
|
#define CRI_MAX_BUFFER_SIZE 16 |
||||
|
|
||||
|
|
||||
|
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]; |
||||
|
}; |
||||
|
#endif // CRI_H
|
Loading…
Reference in new issue