// // VulkanScale.hpp // MNN // // Created by MNN on 2019/01/31. // Copyright © 2018, Alibaba Group Holding Limited // #ifndef VulkanScale_hpp #define VulkanScale_hpp #include #include "VulkanBasicExecution.hpp" namespace MNN { class VulkanScale : public VulkanBasicExecution { public: VulkanScale(const Op* op, Backend* bn, Tensor * output); virtual ~VulkanScale(); ErrorCode onEncode(const std::vector& inputs, const std::vector& outputs, const VulkanCommandPool::Buffer* cmdBuffer) override; private: std::shared_ptr mScaleParam; const VulkanPipeline* mScalePipeline; std::shared_ptr mDescriptorSet; std::shared_ptr mScaleBuffer; std::shared_ptr mBiasBuffer; const VulkanSampler* mSampler; }; } // namespace MNN #endif /* VulkanScale_hpp */