blob: 8fdc98d4b9a3fa7ac1318f0f2e9ddfa02e10ba5c [file] [log] [blame]
Xusong Wangee80b022019-08-22 14:58:16 -07001/*
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
20namespace 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.
24using namespace test_helper;
25#define CHECK_TEST_ENUM(EnumType, enumValue) \
26 static_assert(static_cast<EnumType>(Test##EnumType::enumValue) == EnumType::enumValue)
27
28CHECK_TEST_ENUM(OperandType, FLOAT32);
29CHECK_TEST_ENUM(OperandType, INT32);
30CHECK_TEST_ENUM(OperandType, UINT32);
31CHECK_TEST_ENUM(OperandType, TENSOR_FLOAT32);
32CHECK_TEST_ENUM(OperandType, TENSOR_INT32);
33CHECK_TEST_ENUM(OperandType, TENSOR_QUANT8_ASYMM);
34
35CHECK_TEST_ENUM(OperandLifeTime, TEMPORARY_VARIABLE);
36CHECK_TEST_ENUM(OperandLifeTime, MODEL_INPUT);
37CHECK_TEST_ENUM(OperandLifeTime, MODEL_OUTPUT);
38CHECK_TEST_ENUM(OperandLifeTime, CONSTANT_COPY);
39CHECK_TEST_ENUM(OperandLifeTime, CONSTANT_REFERENCE);
40CHECK_TEST_ENUM(OperandLifeTime, NO_VALUE);
41
42CHECK_TEST_ENUM(OperationType, ADD);
43CHECK_TEST_ENUM(OperationType, AVERAGE_POOL_2D);
44CHECK_TEST_ENUM(OperationType, CONCATENATION);
45CHECK_TEST_ENUM(OperationType, CONV_2D);
46CHECK_TEST_ENUM(OperationType, DEPTHWISE_CONV_2D);
47CHECK_TEST_ENUM(OperationType, DEPTH_TO_SPACE);
48CHECK_TEST_ENUM(OperationType, DEQUANTIZE);
49CHECK_TEST_ENUM(OperationType, EMBEDDING_LOOKUP);
50CHECK_TEST_ENUM(OperationType, FLOOR);
51CHECK_TEST_ENUM(OperationType, FULLY_CONNECTED);
52CHECK_TEST_ENUM(OperationType, HASHTABLE_LOOKUP);
53CHECK_TEST_ENUM(OperationType, L2_NORMALIZATION);
54CHECK_TEST_ENUM(OperationType, L2_POOL_2D);
55CHECK_TEST_ENUM(OperationType, LOCAL_RESPONSE_NORMALIZATION);
56CHECK_TEST_ENUM(OperationType, LOGISTIC);
57CHECK_TEST_ENUM(OperationType, LSH_PROJECTION);
58CHECK_TEST_ENUM(OperationType, LSTM);
59CHECK_TEST_ENUM(OperationType, MAX_POOL_2D);
60CHECK_TEST_ENUM(OperationType, MUL);
61CHECK_TEST_ENUM(OperationType, RELU);
62CHECK_TEST_ENUM(OperationType, RELU1);
63CHECK_TEST_ENUM(OperationType, RELU6);
64CHECK_TEST_ENUM(OperationType, RESHAPE);
65CHECK_TEST_ENUM(OperationType, RESIZE_BILINEAR);
66CHECK_TEST_ENUM(OperationType, RNN);
67CHECK_TEST_ENUM(OperationType, SOFTMAX);
68CHECK_TEST_ENUM(OperationType, SPACE_TO_DEPTH);
69CHECK_TEST_ENUM(OperationType, SVDF);
70CHECK_TEST_ENUM(OperationType, TANH);
71
72#undef CHECK_TEST_ENUM
73
74} // namespace android::hardware::neuralnetworks::V1_0