1#
2# Copyright (C) 2017 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10#  Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17# This lists the entry points visible to applications that use the
18# Neural Networks lib. Other entry points present in the library won't be
19# usable.
20
21LIBNEURALNETWORKS {
22  global:
23    ANeuralNetworks_getDefaultLoopTimeout; # introduced=30
24    ANeuralNetworks_getDeviceCount; # introduced=Q
25    ANeuralNetworks_getDevice; # introduced=Q
26    ANeuralNetworks_getMaximumLoopTimeout; # introduced=30
27    ANeuralNetworksDevice_getName; # introduced=Q
28    ANeuralNetworksDevice_getType; # introduced=Q
29    ANeuralNetworksDevice_getVersion; # introduced=Q
30    ANeuralNetworksDevice_getFeatureLevel; # introduced=Q
31    ANeuralNetworksDevice_wait; # introduced=30
32    ANeuralNetworksMemory_createFromAHardwareBuffer; # introduced=Q
33    ANeuralNetworksMemory_createFromDesc; # introduced=30
34    ANeuralNetworksMemory_createFromFd;
35    ANeuralNetworksMemory_copy; # introduced=30
36    ANeuralNetworksMemory_free;
37    ANeuralNetworksMemoryDesc_addInputRole; # introduced=30
38    ANeuralNetworksMemoryDesc_addOutputRole; # introduced=30
39    ANeuralNetworksMemoryDesc_create; # introduced=30
40    ANeuralNetworksMemoryDesc_finish; # introduced=30
41    ANeuralNetworksMemoryDesc_free; # introduced=30
42    ANeuralNetworksMemoryDesc_setDimensions; # introduced=30
43    ANeuralNetworksModel_create;
44    ANeuralNetworksModel_free;
45    ANeuralNetworksModel_finish;
46    ANeuralNetworksModel_addOperand;
47    ANeuralNetworksModel_setOperandSymmPerChannelQuantParams; # introduced=Q
48    ANeuralNetworksModel_setOperandValue;
49    ANeuralNetworksModel_setOperandValueFromMemory;
50    ANeuralNetworksModel_setOperandValueFromModel; # introduced=30
51    ANeuralNetworksModel_addOperation;
52    ANeuralNetworksModel_identifyInputsAndOutputs;
53    ANeuralNetworksModel_relaxComputationFloat32toFloat16;
54    ANeuralNetworksModel_getSupportedOperationsForDevices; # introduced=Q
55    ANeuralNetworksCompilation_create;
56    ANeuralNetworksCompilation_createForDevices; # introduced=Q
57    ANeuralNetworksCompilation_free;
58    ANeuralNetworksCompilation_setCaching; # introduced=Q
59    ANeuralNetworksCompilation_setPreference;
60    ANeuralNetworksCompilation_finish;
61    ANeuralNetworksCompilation_setPriority; # introduced=30
62    ANeuralNetworksCompilation_setTimeout; # introduced=30
63    ANeuralNetworksBurst_create; # introduced=Q
64    ANeuralNetworksBurst_free; # introduced=Q
65    ANeuralNetworksExecution_burstCompute; # introduced=Q
66    ANeuralNetworksExecution_compute; # introduced=Q
67    ANeuralNetworksExecution_create;
68    ANeuralNetworksExecution_free;
69    ANeuralNetworksExecution_getDuration; # introduced=Q
70    ANeuralNetworksExecution_setInput;
71    ANeuralNetworksExecution_setInputFromMemory;
72    ANeuralNetworksExecution_setMeasureTiming; # introduced=Q
73    ANeuralNetworksExecution_setOutput;
74    ANeuralNetworksExecution_setOutputFromMemory;
75    ANeuralNetworksExecution_startCompute;
76    ANeuralNetworksExecution_startComputeWithDependencies; # introduced=30
77    ANeuralNetworksExecution_getOutputOperandDimensions; # introduced=Q
78    ANeuralNetworksExecution_getOutputOperandRank; # introduced=Q
79    ANeuralNetworksExecution_setTimeout; # introduced=30
80    ANeuralNetworksExecution_setLoopTimeout; # introduced=30
81    ANeuralNetworksEvent_createFromSyncFenceFd; # introduced=30
82    ANeuralNetworksEvent_getSyncFenceFd; # introduced=30
83    ANeuralNetworksEvent_wait;
84    ANeuralNetworksEvent_free;
85  local:
86    *;
87};
88
89LIBNEURALNETWORKS_PLATFORM {
90  global:
91    ANeuralNetworksDevice_getExtensionSupport;
92    ANeuralNetworksModel_getExtensionOperandType;
93    ANeuralNetworksModel_getExtensionOperationType;
94    ANeuralNetworksModel_setOperandExtensionData;
95} LIBNEURALNETWORKS;
96