ArmNN
 21.08
RankLayer.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include <Layer.hpp>
9 
10 namespace armnn
11 {
12 
13 class RankLayer : public Layer
14 {
15  public:
16  /// Makes a workload for the Rank type.
17  /// @param [in] factory The workload factory which will create the workload.
18  /// @return A pointer to the created workload, or nullptr if not created.
19  virtual std::unique_ptr<IWorkload> CreateWorkload(const IWorkloadFactory& factory) const override;
20 
21  Layer* Clone(Graph& graph) const override;
22 
23  void ValidateTensorShapesFromInputs() override;
24 
25  void Accept(ILayerVisitor& visitor) const override;
26 
27  void ExecuteStrategy(IStrategy& strategy) const override;
28 
29 protected:
30  RankLayer(const char* name);
31  ~RankLayer() = default;
32 };
33 
34 } //namespace armnn
35 
36 
void Accept(ILayerVisitor &visitor) const override
Apply a visitor to this layer.
Definition: RankLayer.cpp:44
virtual std::unique_ptr< IWorkload > CreateWorkload(const IWorkloadFactory &factory) const override
Makes a workload for the Rank type.
Definition: RankLayer.cpp:20
void ValidateTensorShapesFromInputs() override
Definition: RankLayer.cpp:34
Copyright (c) 2021 ARM Limited and Contributors.
RankLayer(const char *name)
Definition: RankLayer.cpp:16
Layer * Clone(Graph &graph) const override
Creates a dynamically-allocated copy of this layer.
Definition: RankLayer.cpp:28
void ExecuteStrategy(IStrategy &strategy) const override
Apply a visitor to this layer.
Definition: RankLayer.cpp:49
~RankLayer()=default