IVGCVSW-5980 JSON profiling output

 * Add new ProfilingDetails class to construct operator details string
 * Add new macro which helps append layer details to ostream
 * Add ProfilingEnabled to NetworkProperties so that profiling can be
   realised when loading the network
 * Add further optional info to WorkloadInfo specific to convolutions
 * Generalise some JsonPrinter functions into JsonUtils for reusability
 * Remove explicit enabling of profiling within InferenceModel as it is
   done when loading network
 * Add ProfilingDetails macros to ConvolutionWorkloads for validation

Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Ie84bc7dc667e72e6bcb635544f9ead7af1765690
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0156a19..2b0c952 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -377,6 +377,7 @@
     src/armnn/OutputHandler.hpp
     src/armnn/Profiling.cpp
     src/armnn/ProfilingEvent.cpp
+    src/armnn/ProfilingDetails.hpp
     src/armnn/ProfilingEvent.hpp
     src/armnn/Profiling.hpp
     src/armnn/Runtime.cpp