• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2019 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 #include <android/hardware/neuralnetworks/1.0/types.h>
18 #include "TestHarness.h"
19 
20 namespace android::hardware::neuralnetworks::V1_0 {
21 
22 // Make sure that the HIDL enums are compatible with the values defined in
23 // frameworks/ml/nn/tools/test_generator/test_harness/include/TestHarness.h.
24 using namespace test_helper;
25 #define CHECK_TEST_ENUM(EnumType, enumValue) \
26     static_assert(static_cast<EnumType>(Test##EnumType::enumValue) == EnumType::enumValue)
27 
28 CHECK_TEST_ENUM(OperandType, FLOAT32);
29 CHECK_TEST_ENUM(OperandType, INT32);
30 CHECK_TEST_ENUM(OperandType, UINT32);
31 CHECK_TEST_ENUM(OperandType, TENSOR_FLOAT32);
32 CHECK_TEST_ENUM(OperandType, TENSOR_INT32);
33 CHECK_TEST_ENUM(OperandType, TENSOR_QUANT8_ASYMM);
34 
35 CHECK_TEST_ENUM(OperandLifeTime, TEMPORARY_VARIABLE);
36 CHECK_TEST_ENUM(OperandLifeTime, MODEL_INPUT);
37 CHECK_TEST_ENUM(OperandLifeTime, MODEL_OUTPUT);
38 CHECK_TEST_ENUM(OperandLifeTime, CONSTANT_COPY);
39 CHECK_TEST_ENUM(OperandLifeTime, CONSTANT_REFERENCE);
40 CHECK_TEST_ENUM(OperandLifeTime, NO_VALUE);
41 
42 CHECK_TEST_ENUM(OperationType, ADD);
43 CHECK_TEST_ENUM(OperationType, AVERAGE_POOL_2D);
44 CHECK_TEST_ENUM(OperationType, CONCATENATION);
45 CHECK_TEST_ENUM(OperationType, CONV_2D);
46 CHECK_TEST_ENUM(OperationType, DEPTHWISE_CONV_2D);
47 CHECK_TEST_ENUM(OperationType, DEPTH_TO_SPACE);
48 CHECK_TEST_ENUM(OperationType, DEQUANTIZE);
49 CHECK_TEST_ENUM(OperationType, EMBEDDING_LOOKUP);
50 CHECK_TEST_ENUM(OperationType, FLOOR);
51 CHECK_TEST_ENUM(OperationType, FULLY_CONNECTED);
52 CHECK_TEST_ENUM(OperationType, HASHTABLE_LOOKUP);
53 CHECK_TEST_ENUM(OperationType, L2_NORMALIZATION);
54 CHECK_TEST_ENUM(OperationType, L2_POOL_2D);
55 CHECK_TEST_ENUM(OperationType, LOCAL_RESPONSE_NORMALIZATION);
56 CHECK_TEST_ENUM(OperationType, LOGISTIC);
57 CHECK_TEST_ENUM(OperationType, LSH_PROJECTION);
58 CHECK_TEST_ENUM(OperationType, LSTM);
59 CHECK_TEST_ENUM(OperationType, MAX_POOL_2D);
60 CHECK_TEST_ENUM(OperationType, MUL);
61 CHECK_TEST_ENUM(OperationType, RELU);
62 CHECK_TEST_ENUM(OperationType, RELU1);
63 CHECK_TEST_ENUM(OperationType, RELU6);
64 CHECK_TEST_ENUM(OperationType, RESHAPE);
65 CHECK_TEST_ENUM(OperationType, RESIZE_BILINEAR);
66 CHECK_TEST_ENUM(OperationType, RNN);
67 CHECK_TEST_ENUM(OperationType, SOFTMAX);
68 CHECK_TEST_ENUM(OperationType, SPACE_TO_DEPTH);
69 CHECK_TEST_ENUM(OperationType, SVDF);
70 CHECK_TEST_ENUM(OperationType, TANH);
71 
72 #undef CHECK_TEST_ENUM
73 
74 }  // namespace android::hardware::neuralnetworks::V1_0
75