1 // 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 #include "NamespaceAdaptor.hpp" 12 13 #include <armnn/ArmNN.hpp> 14 15 #if ARMNN_ANDROID_S 16 using namespace android::nn; 17 #elif ARMNN_ANDROID_R 18 using namespace android::nn::hal; 19 #endif 20 21 namespace V1_0 = ::android::hardware::neuralnetworks::V1_0; 22 namespace V1_2 = ::android::hardware::neuralnetworks::V1_2; 23 24 namespace armnn_driver 25 { 26 namespace hal_1_2 27 { 28 29 class ArmnnDriverImpl 30 { 31 public: 32 static Return<V1_0::ErrorStatus> prepareArmnnModel_1_2(const armnn::IRuntimePtr& runtime, 33 const armnn::IGpuAccTunedParametersPtr& clTunedParameters, 34 const DriverOptions& options, 35 const V1_2::Model& model, 36 const android::sp<V1_2::IPreparedModelCallback>& cb, 37 bool float32ToFloat16 = false); 38 39 static Return<void> getCapabilities_1_2(const armnn::IRuntimePtr& runtime, 40 V1_2::IDevice::getCapabilities_1_2_cb cb); 41 }; 42 43 } // namespace hal_1_2 44 } // namespace armnn_driver 45