blob: f33a29430e5e96448818d8046b76287adb38b7de [file] [log] [blame]
Kevin May42477c12020-03-26 13:34:14 +00001//
2// Copyright © 2020 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 DuBoisc0945c72020-11-20 16:57:09 -080014using namespace android::nn;
Kevin May42477c12020-03-26 13:34:14 +000015
16namespace V1_0 = ::android::hardware::neuralnetworks::V1_0;
17namespace V1_2 = ::android::hardware::neuralnetworks::V1_2;
18namespace V1_3 = ::android::hardware::neuralnetworks::V1_3;
19
20namespace armnn_driver
21{
22namespace hal_1_3
23{
24
25class ArmnnDriverImpl
26{
27public:
Kevin DuBois23e678a2020-11-20 14:54:05 -080028 static android::hardware::Return<V1_3::ErrorStatus> prepareArmnnModel_1_3(const armnn::IRuntimePtr& runtime,
Kevin May42477c12020-03-26 13:34:14 +000029 const armnn::IGpuAccTunedParametersPtr& clTunedParameters,
30 const DriverOptions& options,
31 const V1_3::Model& model,
32 const android::sp<V1_3::IPreparedModelCallback>& cb,
Narumol Prangnawaratcad4e912020-06-02 12:07:43 +010033 bool float32ToFloat16 = false,
34 V1_3::Priority priority = V1_3::Priority::MEDIUM);
Kevin May42477c12020-03-26 13:34:14 +000035
Kevin DuBois23e678a2020-11-20 14:54:05 -080036 static android::hardware::Return<void> getCapabilities_1_3(const armnn::IRuntimePtr& runtime,
Kevin May42477c12020-03-26 13:34:14 +000037 V1_3::IDevice::getCapabilities_1_3_cb cb);
38};
39
40} // namespace hal_1_3
Kevin DuBoisc0945c72020-11-20 16:57:09 -080041} // namespace armnn_driver