1 // 2 // VulkanResize.hpp 3 // MNN 4 // 5 // Created by MNN on 2019/01/31. 6 // Copyright © 2018, Alibaba Group Holding Limited 7 // 8 9 #ifndef VulkanResize_hpp 10 #define VulkanResize_hpp 11 #include "VulkanBasicExecution.hpp" 12 13 namespace MNN { 14 class VulkanResize : public VulkanBasicExecution { 15 public: 16 VulkanResize(Backend* bn, float xScale, float yScale, int resizeType=2); 17 virtual ~VulkanResize(); 18 ErrorCode encodeImpl(Tensor* input, Tensor* output, const float* transform, 19 const VulkanCommandPool::Buffer* cmdBuffer); 20 21 private: 22 float mXScale; 23 float mYScale; 24 std::shared_ptr<VulkanBuffer> mParamBuffer; 25 const VulkanPipeline* mVulkanResizePipeline; 26 std::shared_ptr<VulkanPipeline::DescriptorSet> mDescriptorSet; 27 }; 28 } // namespace MNN 29 #endif 30