IVGCVSW-6359 Added support for Float16 (Half) to Execute Network

 * Allows the user to specify float16 as a datatype
 * Does not contain support for float16 on the TfLiteDelegate via
   ExecuteNetwork

Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: Icba56feedab32662e2cf671cc46ada899cf40c6c
diff --git a/include/armnnUtils/TContainer.hpp b/include/armnnUtils/TContainer.hpp
index a55f9df..d2a868a 100644
--- a/include/armnnUtils/TContainer.hpp
+++ b/include/armnnUtils/TContainer.hpp
@@ -6,15 +6,20 @@
 #pragma once
 
 #include <armnn/TypesUtils.hpp>
+#include <Half.hpp>
 
 #include <mapbox/variant.hpp>
 
 namespace armnnUtils
 {
 
-// Standard definition of TContainer used by ArmNN, use this definition or add alternative definitions here instead of
-// defining your own.
-    using TContainer =
-    mapbox::util::variant<std::vector<float>, std::vector<int>, std::vector<unsigned char>, std::vector<int8_t>>;
+// Standard declaration of TContainer used by ArmNN
+// Changes to this declaration constitute an api/abi break, new types should be added as a separate declaration and
+// merged on the next planned api/abi update.
+using TContainer = mapbox::util::variant<std::vector<float>,
+                                         std::vector<int>,
+                                         std::vector<uint8_t>,
+                                         std::vector<int8_t>,
+                                         std::vector<armnn::Half>>;
 
 } // namespace armnnUtils