blob: 73ba133ee973d8047abae88e6ccbbffb719d997f [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 <HalInterfaces.h>
9
10#include "../DriverOptions.hpp"
11
12#include <armnn/ArmNN.hpp>
13
Kevin Mayec1e5b82020-02-26 17:00:39 +000014#ifdef ARMNN_ANDROID_R
15using namespace android::nn::hal;
16#endif
17
18namespace V1_0 = ::android::hardware::neuralnetworks::V1_0;
19namespace V1_2 = ::android::hardware::neuralnetworks::V1_2;
20
Mike Kellyb5fdf382019-06-11 16:35:25 +010021namespace armnn_driver
22{
23namespace hal_1_2
24{
25
26class ArmnnDriverImpl
27{
28public:
Kevin Mayec1e5b82020-02-26 17:00:39 +000029 static Return<V1_0::ErrorStatus> prepareArmnnModel_1_2(const armnn::IRuntimePtr& runtime,
30 const armnn::IGpuAccTunedParametersPtr& clTunedParameters,
31 const DriverOptions& options,
32 const V1_2::Model& model,
33 const android::sp<V1_2::IPreparedModelCallback>& cb,
34 bool float32ToFloat16 = false);
Mike Kellyb5fdf382019-06-11 16:35:25 +010035
36 static Return<void> getCapabilities_1_2(const armnn::IRuntimePtr& runtime,
37 V1_2::IDevice::getCapabilities_1_2_cb cb);
38};
39
40} // namespace hal_1_2
41} // namespace armnn_driver