aboutsummaryrefslogtreecommitdiff
path: root/src/armnnSerializer/SerializerUtils.cpp
diff options
context:
space:
mode:
authorSaoirse Stewart <saoirse.stewart@arm.com>2019-02-18 15:24:53 +0000
committerAron Virginas-Tar <aron.virginas-tar@arm.com>2019-02-19 11:52:27 +0000
commit3166c3edeb64d834ba27031ddd39b5b1f940b604 (patch)
tree2789010d0878d64442f51ba0edbd8f159d1a32a0 /src/armnnSerializer/SerializerUtils.cpp
parenta6b504a8925174739f5a064cf77d1563cca38708 (diff)
downloadarmnn-3166c3edeb64d834ba27031ddd39b5b1f940b604.tar.gz
IVGCVSW-2645 Add Serializer & Deserializer for Pooling2d
Change-Id: Iba41da3cccd539a0175f2ed0ff9a8b6a23c5fb6f Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Signed-off-by: Saoirse Stewart <saoirse.stewart@arm.com>
Diffstat (limited to 'src/armnnSerializer/SerializerUtils.cpp')
-rw-r--r--src/armnnSerializer/SerializerUtils.cpp83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/armnnSerializer/SerializerUtils.cpp b/src/armnnSerializer/SerializerUtils.cpp
new file mode 100644
index 0000000000..5772eab56c
--- /dev/null
+++ b/src/armnnSerializer/SerializerUtils.cpp
@@ -0,0 +1,83 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#include "SerializerUtils.hpp"
+
+namespace armnnSerializer
+{
+
+using namespace armnn;
+namespace serializer = armnn::armnnSerializer;
+
+serializer::DataType GetFlatBufferDataType(DataType dataType)
+{
+ switch (dataType)
+ {
+ case DataType::Float32:
+ return serializer::DataType::DataType_Float32;
+ case DataType::Float16:
+ return serializer::DataType::DataType_Float16;
+ case DataType::Signed32:
+ return serializer::DataType::DataType_Signed32;
+ case DataType::QuantisedAsymm8:
+ return serializer::DataType::DataType_QuantisedAsymm8;
+ case DataType::Boolean:
+ return serializer::DataType::DataType_Boolean;
+ default:
+ return serializer::DataType::DataType_Float16;
+ }
+}
+
+serializer::DataLayout GetFlatBufferDataLayout(DataLayout dataLayout)
+{
+ switch (dataLayout)
+ {
+ case DataLayout::NHWC:
+ return serializer::DataLayout::DataLayout_NHWC;
+ case DataLayout::NCHW:
+ default:
+ return serializer::DataLayout::DataLayout_NCHW;
+ }
+}
+
+serializer::PoolingAlgorithm GetFlatBufferPoolingAlgorithm(PoolingAlgorithm poolingAlgorithm)
+{
+ switch (poolingAlgorithm)
+ {
+ case PoolingAlgorithm::Average:
+ return serializer::PoolingAlgorithm::PoolingAlgorithm_Average;
+ case PoolingAlgorithm::L2:
+ return serializer::PoolingAlgorithm::PoolingAlgorithm_L2;
+ case PoolingAlgorithm::Max:
+ default:
+ return serializer::PoolingAlgorithm::PoolingAlgorithm_Max;
+ }
+}
+
+serializer::OutputShapeRounding GetFlatBufferOutputShapeRounding(OutputShapeRounding outputShapeRounding)
+{
+ switch (outputShapeRounding)
+ {
+ case OutputShapeRounding::Ceiling:
+ return serializer::OutputShapeRounding::OutputShapeRounding_Ceiling;
+ case OutputShapeRounding::Floor:
+ default:
+ return serializer::OutputShapeRounding::OutputShapeRounding_Floor;
+ }
+}
+
+serializer::PaddingMethod GetFlatBufferPaddingMethod(PaddingMethod paddingMethod)
+{
+ switch (paddingMethod)
+ {
+ case PaddingMethod::IgnoreValue:
+ return serializer::PaddingMethod::PaddingMethod_IgnoreValue;
+ case PaddingMethod::Exclude:
+ default:
+ return serializer::PaddingMethod::PaddingMethod_Exclude;
+ }
+}
+
+} // namespace armnnSerializer \ No newline at end of file