blob: a6fd9b2ce8e9e0c67e48a04477ea1f2b208e00e4 [file] [log] [blame]
telsoa015307bc12018-03-09 13:51:08 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
David Beck93e48982018-09-05 13:05:09 +01003// SPDX-License-Identifier: MIT
telsoa015307bc12018-03-09 13:51:08 +00004//
5
6#pragma once
7
telsoa01ce3e84a2018-08-31 09:31:35 +01008#include <HalInterfaces.h>
telsoa015307bc12018-03-09 13:51:08 +00009
telsoa01ce3e84a2018-08-31 09:31:35 +010010#include <log/log.h>
telsoa015307bc12018-03-09 13:51:08 +000011
Kevin May42477c12020-03-26 13:34:14 +000012#ifdef ARMNN_ANDROID_NN_V1_3 // Using ::android::hardware::neuralnetworks::V1_3
13
14#include "1.1/ArmnnDriver.hpp"
15#include "1.2/ArmnnDriver.hpp"
16#include "1.3/ArmnnDriver.hpp"
17
18namespace armnn_driver
19{
20
21class ArmnnDriver : public hal_1_3::ArmnnDriver
22{
23public:
24 ArmnnDriver(DriverOptions options)
25 : hal_1_3::ArmnnDriver(std::move(options))
26 {
27 ALOGV("ArmnnDriver::ArmnnDriver()");
28 }
29 ~ArmnnDriver() {}
30};
31
32} // namespace armnn_driver
33#elif ARMNN_ANDROID_NN_V1_2 // Using ::android::hardware::neuralnetworks::V1_2
Mike Kellyb5fdf382019-06-11 16:35:25 +010034
35#include "1.1/ArmnnDriver.hpp"
36#include "1.2/ArmnnDriver.hpp"
37
38namespace armnn_driver
39{
40
41class ArmnnDriver : public hal_1_2::ArmnnDriver
42{
43public:
44 ArmnnDriver(DriverOptions options)
45 : hal_1_2::ArmnnDriver(std::move(options))
46 {
47 ALOGV("ArmnnDriver::ArmnnDriver()");
48 }
49 ~ArmnnDriver() {}
50};
51
52} // namespace armnn_driver
53#elif ARMNN_ANDROID_NN_V1_1 // Using ::android::hardware::neuralnetworks::V1_1
telsoa01ce3e84a2018-08-31 09:31:35 +010054
55#include "1.1/ArmnnDriver.hpp"
surmeh01deb3bdb2018-07-05 12:06:04 +010056
telsoa015307bc12018-03-09 13:51:08 +000057namespace armnn_driver
58{
59
arovir01b0717b52018-09-05 17:03:25 +010060class ArmnnDriver : public hal_1_1::ArmnnDriver
telsoa015307bc12018-03-09 13:51:08 +000061{
62public:
telsoa01ce3e84a2018-08-31 09:31:35 +010063 ArmnnDriver(DriverOptions options)
arovir01b0717b52018-09-05 17:03:25 +010064 : hal_1_1::ArmnnDriver(std::move(options))
telsoa01ce3e84a2018-08-31 09:31:35 +010065 {
66 ALOGV("ArmnnDriver::ArmnnDriver()");
67 }
68 ~ArmnnDriver() {}
telsoa015307bc12018-03-09 13:51:08 +000069};
70
telsoa01ce3e84a2018-08-31 09:31:35 +010071} // namespace armnn_driver
72
Matteo Martincigh8b287c22018-09-07 09:25:10 +010073#else // Fallback to ::android::hardware::neuralnetworks::V1_0
telsoa01ce3e84a2018-08-31 09:31:35 +010074
75#include "1.0/ArmnnDriver.hpp"
76
77namespace armnn_driver
78{
79
arovir01b0717b52018-09-05 17:03:25 +010080class ArmnnDriver : public hal_1_0::ArmnnDriver
telsoa01ce3e84a2018-08-31 09:31:35 +010081{
telsoa015307bc12018-03-09 13:51:08 +000082public:
telsoa01ce3e84a2018-08-31 09:31:35 +010083 ArmnnDriver(DriverOptions options)
arovir01b0717b52018-09-05 17:03:25 +010084 : hal_1_0::ArmnnDriver(std::move(options))
telsoa01ce3e84a2018-08-31 09:31:35 +010085 {
86 ALOGV("ArmnnDriver::ArmnnDriver()");
87 }
88 ~ArmnnDriver() {}
telsoa015307bc12018-03-09 13:51:08 +000089};
90
telsoa01ce3e84a2018-08-31 09:31:35 +010091} // namespace armnn_driver
92
93#endif