diff options
Diffstat (limited to 'src/armnnSerializer/Serializer.cpp')
-rw-r--r-- | src/armnnSerializer/Serializer.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp index 195b41657a..9a3a270de5 100644 --- a/src/armnnSerializer/Serializer.cpp +++ b/src/armnnSerializer/Serializer.cpp @@ -302,6 +302,19 @@ void SerializerStrategy::SerializeCastLayer(const armnn::IConnectableLayer* laye CreateAnyLayer(fbCastLayer.o, serializer::Layer::Layer_CastLayer); } +void SerializerStrategy::SerializeChannelShuffleLayer(const armnn::IConnectableLayer* layer, + const armnn::ChannelShuffleDescriptor& descriptor, + const char* name) +{ + IgnoreUnused(name); + auto fbDescriptor = CreateChannelShuffleDescriptor(m_flatBufferBuilder, + descriptor.m_Axis, + descriptor.m_NumGroups); + auto fbBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_ChannelShuffle); + auto fbChannelShuffleLayer = serializer::CreateChannelShuffleLayer(m_flatBufferBuilder, fbBaseLayer, fbDescriptor); + CreateAnyLayer(fbChannelShuffleLayer.o, serializer::Layer::Layer_ChannelShuffleLayer); +} + void SerializerStrategy::SerializeComparisonLayer(const armnn::IConnectableLayer* layer, const armnn::ComparisonDescriptor& descriptor, const char* name) @@ -1997,6 +2010,15 @@ void SerializerStrategy::ExecuteStrategy(const armnn::IConnectableLayer* layer, SerializeCastLayer(layer, name); break; } + case armnn::LayerType::ChannelShuffle : + { + const armnn::ChannelShuffleDescriptor& layerDescriptor = + static_cast<const armnn::ChannelShuffleDescriptor&>(descriptor); + SerializeChannelShuffleLayer(layer, + layerDescriptor, + name); + break; + } case armnn::LayerType::Comparison : { const armnn::ComparisonDescriptor& layerDescriptor = |