// // Copyright © 2017 Arm Ltd. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include #include #include // Utility tenmplate to convert a collection of values to the correct type template > std::vector ConvertToDataType(const std::vector& input, const armnn::TensorInfo& inputTensorInfo) { std::vector output(input.size()); auto outputTensorInfo = inputTensorInfo; outputTensorInfo.SetDataType(ArmnnType); std::unique_ptr> pOutputEncoder = armnn::MakeEncoder(outputTensorInfo, output.data()); armnn::Encoder& rOutputEncoder = *pOutputEncoder; for (auto it = input.begin(); it != input.end(); ++it) { rOutputEncoder.Set(*it); ++rOutputEncoder; } return output; } // Utility tenmplate to convert a single value to the correct type template T ConvertToDataType(const float& value, const armnn::TensorInfo& tensorInfo) { std::vector output(1); std::unique_ptr> pEncoder = armnn::MakeEncoder(tensorInfo, output.data()); armnn::Encoder& rEncoder = *pEncoder; rEncoder.Set(value); return output[0]; }