IVGCVSW-4931 Update NN Driver to support dynamic tensors

 * Change NN Driver m_Network to now have ShapeInferenceMethod::InferAndValidate
 * Implement dynamic tensor support for:
    - ArgMinMax layer
    - Pooling2d layer
    - Activation layer
 * Skip dynamic tensor tests for any HAL other than 1.3

Change-Id: Icf66c968e49cdd4822b8c79c5f18b3f9e97dc53f
Signed-off-by: Finn Williams <Finn.Williams@Arm.com>
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
diff --git a/ModelToINetworkConverter.cpp b/ModelToINetworkConverter.cpp
index 24fb490..0d6ddc3 100644
--- a/ModelToINetworkConverter.cpp
+++ b/ModelToINetworkConverter.cpp
@@ -59,8 +59,17 @@
         totalPoolSize += pool.size();
     }
 
+    using NetworkOptions = std::vector<armnn::BackendOptions>;
+    NetworkOptions networkOptions;
+    armnn::BackendOptions shapeInferenceMethodOption("ShapeInferenceMethod",
+                                                    {
+                                                            { "InferAndValidate", true }
+                                                    });
+
+    networkOptions.push_back(shapeInferenceMethodOption);
+
     // Create armnn::INetwork
-    m_Data.m_Network = armnn::INetwork::Create();
+    m_Data.m_Network = armnn::INetwork::Create(networkOptions);
 
     // add operations to it
     // track which layer outputs each operand