IVGCVSW-6527 Support the new memory API in loaded network

 * enable external memory management for neon and ref backends
 * change m_TensorMemoryVector to hold shared pointers
 * change input layer backend Id to match backend id of connected layer

Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: I2216a724028312eb101b290df3f224177826b1a0
diff --git a/src/backends/backendsCommon/MemoryManager.cpp b/src/backends/backendsCommon/MemoryManager.cpp
index 1c109c3..77cab27 100644
--- a/src/backends/backendsCommon/MemoryManager.cpp
+++ b/src/backends/backendsCommon/MemoryManager.cpp
@@ -11,7 +11,7 @@
 {
 
 void MemoryManager::StoreMemToAllocate(std::vector<BufferStorage> bufferStorageVector,
-                                       ICustomAllocator* customAllocator,
+                                       std::shared_ptr<ICustomAllocator> customAllocator,
                                        const size_t typeAlignment)
 {
     IgnoreUnused(typeAlignment);