Build FlatBuffer for Splitter Layer
| 1274 | |
| 1275 | // Build FlatBuffer for Splitter Layer |
| 1276 | void SerializerStrategy::SerializeSplitterLayer(const armnn::IConnectableLayer* layer, |
| 1277 | const armnn::ViewsDescriptor& viewsDescriptor, |
| 1278 | const char* name) |
| 1279 | { |
| 1280 | IgnoreUnused(name); |
| 1281 | |
| 1282 | // Create FlatBuffer ViewOrigins |
| 1283 | std::vector<flatbuffers::Offset<UintVector>> flatBufferViewOrigins; |
| 1284 | flatBufferViewOrigins.reserve(viewsDescriptor.GetNumViews()); |
| 1285 | |
| 1286 | for(unsigned int vIdx = 0; vIdx < viewsDescriptor.GetNumViews(); ++vIdx) |
| 1287 | { |
| 1288 | std::vector<uint32_t> viewOrigin; |
| 1289 | viewOrigin.reserve(viewsDescriptor.GetNumDimensions()); |
| 1290 | |
| 1291 | // Copy vector |
| 1292 | for(unsigned int dIdx = 0; dIdx < viewsDescriptor.GetNumDimensions(); ++dIdx) |
| 1293 | { |
| 1294 | viewOrigin.push_back(viewsDescriptor.GetViewOrigin(vIdx)[dIdx]); |
| 1295 | } |
| 1296 | |
| 1297 | flatBufferViewOrigins.push_back(CreateUintVector(m_flatBufferBuilder, |
| 1298 | m_flatBufferBuilder.CreateVector(viewOrigin))); |
| 1299 | } |
| 1300 | |
| 1301 | // Create FlatBuffer OriginsDescriptor |
| 1302 | auto flatBufferOriginDescriptor = CreateOriginsDescriptor(m_flatBufferBuilder, |
| 1303 | viewsDescriptor.GetOrigins().GetConcatAxis(), |
| 1304 | viewsDescriptor.GetOrigins().GetNumViews(), |
| 1305 | viewsDescriptor.GetOrigins().GetNumDimensions(), |
| 1306 | m_flatBufferBuilder.CreateVector(flatBufferViewOrigins)); |
| 1307 | |
| 1308 | // Create FlatBuffer ViewOrigins |
| 1309 | std::vector<flatbuffers::Offset<UintVector>> flatBufferViewSizes; |
| 1310 | flatBufferViewSizes.reserve(viewsDescriptor.GetNumViews()); |
| 1311 | |
| 1312 | for(unsigned int vIdx = 0; vIdx < viewsDescriptor.GetNumViews(); ++vIdx) |
| 1313 | { |
| 1314 | std::vector<uint32_t> viewSize; |
| 1315 | viewSize.reserve(viewsDescriptor.GetNumDimensions()); |
| 1316 | |
| 1317 | // Copy vector |
| 1318 | for(unsigned int dIdx = 0; dIdx < viewsDescriptor.GetNumDimensions(); ++dIdx) |
| 1319 | { |
| 1320 | viewSize.push_back(viewsDescriptor.GetViewSizes(vIdx)[dIdx]); |
| 1321 | } |
| 1322 | |
| 1323 | flatBufferViewSizes.push_back(CreateUintVector(m_flatBufferBuilder, |
| 1324 | m_flatBufferBuilder.CreateVector(viewSize))); |
| 1325 | } |
| 1326 | |
| 1327 | // Create FlatBuffer ViewsDescriptor |
| 1328 | auto flatBufferViewsDescriptor = CreateViewsDescriptor(m_flatBufferBuilder, |
| 1329 | flatBufferOriginDescriptor, |
| 1330 | m_flatBufferBuilder.CreateVector(flatBufferViewSizes), |
| 1331 | viewsDescriptor.HasAxis(), |
| 1332 | viewsDescriptor.GetAxis()); |
| 1333 |
nothing calls this directly
no test coverage detected