diff options
Diffstat (limited to 'src/armnn/layers')
-rw-r--r-- | src/armnn/layers/EqualLayer.cpp | 34 | ||||
-rw-r--r-- | src/armnn/layers/EqualLayer.hpp | 26 |
2 files changed, 60 insertions, 0 deletions
diff --git a/src/armnn/layers/EqualLayer.cpp b/src/armnn/layers/EqualLayer.cpp new file mode 100644 index 0000000000..e0d2e65309 --- /dev/null +++ b/src/armnn/layers/EqualLayer.cpp @@ -0,0 +1,34 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#include "EqualLayer.hpp" + +#include "LayerCloneBase.hpp" + +#include <armnn/TypesUtils.hpp> +#include <backendsCommon/WorkloadData.hpp> +#include <backendsCommon/WorkloadFactory.hpp> + +namespace armnn +{ + +EqualLayer::EqualLayer(const char* name) + : ElementwiseBaseLayer(2, 1, LayerType::Equal, name) +{ +} + +std::unique_ptr<IWorkload> EqualLayer::CreateWorkload(const Graph& graph, + const IWorkloadFactory& factory) const +{ + EqualQueueDescriptor descriptor; + return factory.CreateEqual(descriptor, PrepInfoAndDesc(descriptor, graph)); +} + +EqualLayer* EqualLayer::Clone(Graph& graph) const +{ + return CloneBase<EqualLayer>(graph, GetName()); +} + +} // namespace armnn diff --git a/src/armnn/layers/EqualLayer.hpp b/src/armnn/layers/EqualLayer.hpp new file mode 100644 index 0000000000..956ae3c1ab --- /dev/null +++ b/src/armnn/layers/EqualLayer.hpp @@ -0,0 +1,26 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#pragma once + +#include "ElementwiseBaseLayer.hpp" + +namespace armnn +{ + +class EqualLayer : public ElementwiseBaseLayer +{ +public: + virtual std::unique_ptr<IWorkload> CreateWorkload(const Graph& graph, + const IWorkloadFactory& factory) const override; + + EqualLayer* Clone(Graph& graph) const override; + +protected: + EqualLayer(const char* name); + ~EqualLayer() = default; +}; + +} //namespace armnn |