blob: dd8558b37137c0feee0bca5bb81eae9743c4d86c [file] [log] [blame]
//
// Copyright © 2017 Arm Ltd. All rights reserved.
// SPDX-License-Identifier: MIT
//
#pragma once
#include "../ConversionUtils.hpp"
#include <HalInterfaces.h>
namespace armnn_driver
{
namespace hal_1_1
{
class HalPolicy
{
public:
using Model = V1_1::Model;
using Operand = V1_0::Operand;
using OperandLifeTime = V1_0::OperandLifeTime;
using OperandType = V1_0::OperandType;
using Operation = V1_1::Operation;
using OperationType = V1_1::OperationType;
using getSupportedOperations_cb = V1_1::IDevice::getSupportedOperations_1_1_cb;
static bool ConvertOperation(const Operation& operation, const Model& model, ConversionData& data);
private:
static bool ConvertDiv(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSub(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertMean(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertPad(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSpaceToBatchNd(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSqueeze(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertStridedSlice(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertTranspose(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertBatchToSpaceNd(const Operation& operation, const Model& model, ConversionData& data);
};
} // namespace hal_1_1
} // namespace armnn_driver