// // Copyright © 2023 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "NeonTensorHandle.hpp" #include namespace armnn { std::shared_ptr NeonTensorHandle::DecorateTensorHandle(const TensorInfo &tensorInfo) { auto* parent = const_cast(this); auto decorated = std::make_shared(parent, tensorInfo); m_Decorated.emplace_back(decorated); return decorated; } NeonTensorDecorator::NeonTensorDecorator() : m_Original(nullptr), m_TensorInfo() { } NeonTensorDecorator::NeonTensorDecorator(arm_compute::ITensor *parent, const TensorInfo& tensorInfo) : m_Original(nullptr), m_TensorInfo() { m_TensorInfo = armcomputetensorutils::BuildArmComputeTensorInfo(tensorInfo); m_Original = parent; } arm_compute::ITensorInfo* NeonTensorDecorator::info() const { return &m_TensorInfo; } arm_compute::ITensorInfo* NeonTensorDecorator::info() { return &m_TensorInfo; } uint8_t* NeonTensorDecorator::buffer() const { return m_Original->buffer(); } }