IVGCVSW-4069 Add ProfilingGuid to Network

Added ProfilingGuid to
    * INetwork,
    * Network,
    * IOptimizedNetwork and
    * OptimizedNetwork

!android-nn-driver:2234
!armnn:2250

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I235116992cc47b4f385b7eb9da514c6350ca00f4
diff --git a/src/armnn/Network.cpp b/src/armnn/Network.cpp
index b1cb5a8..573f6a1 100644
--- a/src/armnn/Network.cpp
+++ b/src/armnn/Network.cpp
@@ -22,6 +22,8 @@
 #include <armnn/TypesUtils.hpp>
 #include <armnn/BackendRegistry.hpp>
 
+#include <ProfilingService.hpp>
+
 #include <fcntl.h>
 #include <algorithm>
 #include <fstream>
@@ -53,12 +55,6 @@
     delete boost::polymorphic_downcast<Network*>(network);
 }
 
-Status Network::PrintGraph()
-{
-    m_Graph->Print();
-    return Status::Success;
-}
-
 void IOptimizedNetwork::Destroy(IOptimizedNetwork* network)
 {
     delete boost::polymorphic_downcast<OptimizedNetwork*>(network);
@@ -925,7 +921,8 @@
 }
 
 Network::Network()
-: m_Graph(std::make_unique<Graph>())
+: m_Graph(std::make_unique<Graph>()),
+  m_Guid(profiling::ProfilingService::Instance().NextGuid())
 {
 }
 
@@ -933,6 +930,12 @@
 {
 }
 
+Status Network::PrintGraph()
+{
+    m_Graph->Print();
+    return Status::Success;
+}
+
 IConnectableLayer* Network::AddInputLayer(LayerBindingId id, const char* name)
 {
     return m_Graph->AddLayer<InputLayer>(id, name);
@@ -1563,7 +1566,8 @@
 }
 
 OptimizedNetwork::OptimizedNetwork(std::unique_ptr<Graph> graph)
-    : m_Graph(std::move(graph))
+    : m_Graph(std::move(graph)),
+      m_Guid(profiling::ProfilingService::Instance().NextGuid())
 {
 }