#ifndef ENHANCE_H #define ENHANCE_H #include #include #include "model/processor/IProcessStrategy.h" #include "utils/OpenCLHelper.h" typedef struct Enhance_t { cl_int filterWidth; cl_int filterHeight; cl_int width; cl_int height; }Enhance_t; class Enhance : public IProcessStrategy { Q_OBJECT public: Q_INVOKABLE Enhance(const Context context, const QString kernelPath, const QObject *parent); virtual void cpuProcess(ScenGenOutput_t parameters) override; virtual void finalize() override; private: KernelFunctor _kernelFunctor; virtual Image* processKernel(Image *frames, Buffer* scratchPad) override; Enhance_t _kernelParameters; bool _run; Buffer* _filter; }; #endif // ENHANCE_H