blob: 516e1ebd647bae7145a2ec969805d3918c1c9cca [file] [log] [blame]
Mike Kellyb5fdf382019-06-11 16:35:25 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include "../ConversionUtils.hpp"
9
10#include <HalInterfaces.h>
11
12namespace armnn_driver
13{
14namespace hal_1_2
15{
16
17class HalPolicy
18{
19public:
20 using Model = V1_2::Model;
21 using Operand = V1_2::Operand;
Aron Virginas-Tarcd700e42019-06-14 14:54:52 +010022 using OperandLifeTime = V1_0::OperandLifeTime;
23 using OperandType = V1_2::OperandType;
Mike Kellyb5fdf382019-06-11 16:35:25 +010024 using Operation = V1_2::Operation;
25 using OperationType = V1_2::OperationType;
26 using ExecutionCallback = V1_2::IExecutionCallback;
27 using getSupportedOperations_cb = V1_2::IDevice::getSupportedOperations_1_2_cb;
28
29 static bool ConvertOperation(const Operation& operation, const Model& model, ConversionData& data);
Aron Virginas-Tar24e699d2019-06-17 14:47:46 +010030
31private:
32 static bool ConvertConv2d(const Operation& operation, const Model& model, ConversionData& data);
33 static bool ConvertDepthwiseConv2d(const Operation& operation, const Model& model, ConversionData& data);
Mike Kellyb5fdf382019-06-11 16:35:25 +010034};
35
36} // namespace hal_1_2
37} // namespace armnn_driver