aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/layers
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/layers')
-rw-r--r--src/armnn/layers/MinimumLayer.cpp33
-rw-r--r--src/armnn/layers/MinimumLayer.hpp27
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