// // ScaleBufExecution.hpp // MNN // // Created by MNN on 2019/01/31. // Copyright © 2018, Alibaba Group Holding Limited // #ifndef MNN_OPENCL_BUFFER_CLOSED #ifndef ScaleBufExecution_hpp #define ScaleBufExecution_hpp #include "backend/opencl/execution/image/CommonExecution.hpp" namespace MNN { namespace OpenCL { class ScaleBufExecution : public CommonExecution { public: ScaleBufExecution(const std::vector &inputs, const MNN::Op *op, Backend *backend); virtual ~ScaleBufExecution(); virtual ErrorCode onEncode(const std::vector &inputs, const std::vector &outputs) override; private: std::shared_ptr mScale; std::shared_ptr mBias; uint32_t mMaxWorkGroupSize; std::vector mGlobalWorkSize{1, 1, 1}; std::vector mLocalWorkSize{1, 1, 1}; OpenCLBackend *mOpenCLBackend; bool mHasBias = false; std::set mBuildOptions; }; } // namespace OpenCL } // namespace MNN #endif /* ScaleBufExecution_hpp */ #endif /* MNN_OPENCL_BUFFER_CLOSED */