diff options
author | kevmay01 <kevin.may@arm.com> | 2018-11-29 08:40:19 +0000 |
---|---|---|
committer | kevmay01 <kevin.may@arm.com> | 2018-11-29 08:40:19 +0000 |
commit | 90539697433b507e20cf0d56f6c7f18614e03973 (patch) | |
tree | 604fb0d27451fbc8a212a78a5a83b54a474db8ad /src/armnn/layers | |
parent | d57415d9a2117da9cc5c58f8b5e39ba7455417d1 (diff) | |
download | armnn-90539697433b507e20cf0d56f6c7f18614e03973.tar.gz |
IVGCVSW-2245 Add Minimum Layer and no-op Factory implementation
Change-Id: I03fa374fd9692d98257de709f8c3ad0a49c88b95
Diffstat (limited to 'src/armnn/layers')
-rw-r--r-- | src/armnn/layers/MinimumLayer.cpp | 33 | ||||
-rw-r--r-- | src/armnn/layers/MinimumLayer.hpp | 27 |
2 files changed, 60 insertions, 0 deletions
diff --git a/src/armnn/layers/MinimumLayer.cpp b/src/armnn/layers/MinimumLayer.cpp new file mode 100644 index 0000000000..11f60ebcb1 --- /dev/null +++ b/src/armnn/layers/MinimumLayer.cpp @@ -0,0 +1,33 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#include "MinimumLayer.hpp" + +#include "LayerCloneBase.hpp" + +#include <armnn/TypesUtils.hpp> +#include <backendsCommon/WorkloadData.hpp> +#include <backendsCommon/WorkloadFactory.hpp> + +namespace armnn +{ + +MinimumLayer::MinimumLayer(const char* name) + : ArithmeticBaseLayer(2, 1, LayerType::Minimum, name) +{ +} + +std::unique_ptr<IWorkload> MinimumLayer::CreateWorkload(const Graph& graph, + const IWorkloadFactory& factory) const +{ + MinimumQueueDescriptor descriptor; + return factory.CreateMinimum(descriptor, PrepInfoAndDesc(descriptor, graph)); +} + +MinimumLayer* MinimumLayer::Clone(Graph& graph) const +{ + return CloneBase<MinimumLayer>(graph, GetName()); +} + +} // namespace armnn diff --git a/src/armnn/layers/MinimumLayer.hpp b/src/armnn/layers/MinimumLayer.hpp new file mode 100644 index 0000000000..cd8a1688cf --- /dev/null +++ b/src/armnn/layers/MinimumLayer.hpp @@ -0,0 +1,27 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#pragma once + +#include "ArithmeticBaseLayer.hpp" + +namespace armnn +{ + +class MinimumLayer : public ArithmeticBaseLayer +{ +public: + virtual std::unique_ptr<IWorkload> CreateWorkload(const Graph& graph, + const IWorkloadFactory& factory) const override; + + MinimumLayer* Clone(Graph& graph) const override; + +protected: + MinimumLayer(const char* name); + ~MinimumLayer() = default; + +}; + +}
\ No newline at end of file |