• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 #pragma once
6 
7 #include "TestLayerVisitor.hpp"
8 
9 namespace
10 {
11 
12 #define DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(name) \
13 class Test##name##LayerVisitor : public armnn::TestLayerVisitor \
14 { \
15 public: \
16     explicit Test##name##LayerVisitor(const char* layerName = nullptr) : armnn::TestLayerVisitor(layerName) {}; \
17     \
18     void ExecuteStrategy(const armnn::IConnectableLayer* layer, \
19                          const armnn::BaseDescriptor& descriptor, \
20                          const std::vector<armnn::ConstTensor>& constants, \
21                          const char* layerName, \
22                          const armnn::LayerBindingId id = 0) override \
23     { \
24         armnn::IgnoreUnused(descriptor, constants, id); \
25         switch (layer->GetType()) \
26         { \
27             case armnn::LayerType::name: \
28             { \
29                 CheckLayerPointer(layer); \
30                 CheckLayerName(layerName); \
31                 break; \
32             } \
33             default: \
34             { \
35                 m_DefaultStrategy.Apply(GetLayerTypeAsCString(layer->GetType())); \
36             } \
37         } \
38     } \
39     \
40 };
41 
42 } // anonymous namespace
43 
44 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Addition)
45 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Dequantize)
46 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Division)
47 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Floor)
48 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Maximum)
49 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Merge)
50 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Minimum)
51 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Multiplication)
52 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Prelu)
53 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Quantize)
54 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Rank)
55 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Subtraction)
56 DECLARE_TEST_NAME_ONLY_LAYER_VISITOR_CLASS(Switch)
57