aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/layers/ArithmeticBaseLayer.hpp
diff options
context:
space:
mode:
authorLes Bell <les.bell@arm.com>2018-09-03 16:24:52 +0100
committerMatthew Bentham <matthew.bentham@arm.com>2018-09-17 17:21:25 +0100
commit033626d1ee9256032309bbc6685c3a69a919cd64 (patch)
tree42a1ab9c3b83c4da019b69e2189846663e0d19be /src/armnn/layers/ArithmeticBaseLayer.hpp
parent9e53a35b66b1ec7ceee7c712380a13596175b83b (diff)
downloadarmnn-033626d1ee9256032309bbc6685c3a69a919cd64.tar.gz
IVGCVSW-1783 refactor add/mul/div layers
Change-Id: Ic043030455b3cf8ad7f92fd0a75175c1827a95f4
Diffstat (limited to 'src/armnn/layers/ArithmeticBaseLayer.hpp')
-rw-r--r--src/armnn/layers/ArithmeticBaseLayer.hpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/armnn/layers/ArithmeticBaseLayer.hpp b/src/armnn/layers/ArithmeticBaseLayer.hpp
new file mode 100644
index 0000000000..eee612add4
--- /dev/null
+++ b/src/armnn/layers/ArithmeticBaseLayer.hpp
@@ -0,0 +1,26 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// See LICENSE file in the project root for full license information.
+//
+#pragma once
+
+#include <Layer.hpp>
+
+namespace armnn
+{
+
+/// NOTE: this is an abstract class, it does not implement:
+/// std::unique_ptr<IWorkload> Layer::CreateWorkload(const Graph& graph, const IWorkloadFactory& factory) const = 0;
+/// Layer* Clone(Graph& graph) const = 0;
+class ArithmeticBaseLayer : public Layer
+{
+public:
+ void ValidateTensorShapesFromInputs() override;
+ std::vector<TensorShape> InferOutputShapes(const std::vector<TensorShape>& inputShapes) const override;
+
+protected:
+ ArithmeticBaseLayer(unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, const char* name);
+ ~ArithmeticBaseLayer() = default;
+};
+
+} // namespace