From 948090924f719ba976c66e72f036247b684ca5f4 Mon Sep 17 00:00:00 2001
From: Debo <debottam.bakshi.gupta@cern.ch>
Date: Tue, 17 Nov 2020 14:20:56 +0100
Subject: [PATCH] making a package to accommodate IONNXRuntimeSvc.h and
 corresponding files to be used by all

---
 .../AthOnnxruntimeService}/IONNXRuntimeSvc.h  |  0
 Control/AthOnnxruntimeService/CMakeLists.txt  | 23 +++++++++++++++++++
 .../src/ONNXRuntimeSvc.cxx                    |  0
 .../src/ONNXRuntimeSvc.h                      |  8 +++----
 .../AthOnnxruntimeService_entries.cxx         |  8 +++++++
 .../AthExOnnxRuntime/CMakeLists.txt           |  3 +--
 .../share/AthExOnnxRuntime_jobOptions.py      |  4 ++--
 .../AthExOnnxRuntime/src/CxxApiAlgorithm.h    |  2 +-
 .../components/AthExOnnxRuntime_entries.cxx   |  2 --
 9 files changed, 39 insertions(+), 11 deletions(-)
 rename Control/{AthenaExamples/AthExOnnxRuntime/AthExOnnxRuntime => AthOnnxruntimeService/AthOnnxruntimeService}/IONNXRuntimeSvc.h (100%)
 create mode 100644 Control/AthOnnxruntimeService/CMakeLists.txt
 rename Control/{AthenaExamples/AthExOnnxRuntime => AthOnnxruntimeService}/src/ONNXRuntimeSvc.cxx (100%)
 rename Control/{AthenaExamples/AthExOnnxRuntime => AthOnnxruntimeService}/src/ONNXRuntimeSvc.h (87%)
 create mode 100644 Control/AthOnnxruntimeService/src/components/AthOnnxruntimeService_entries.cxx

diff --git a/Control/AthenaExamples/AthExOnnxRuntime/AthExOnnxRuntime/IONNXRuntimeSvc.h b/Control/AthOnnxruntimeService/AthOnnxruntimeService/IONNXRuntimeSvc.h
similarity index 100%
rename from Control/AthenaExamples/AthExOnnxRuntime/AthExOnnxRuntime/IONNXRuntimeSvc.h
rename to Control/AthOnnxruntimeService/AthOnnxruntimeService/IONNXRuntimeSvc.h
diff --git a/Control/AthOnnxruntimeService/CMakeLists.txt b/Control/AthOnnxruntimeService/CMakeLists.txt
new file mode 100644
index 000000000000..ff2fce4cd97d
--- /dev/null
+++ b/Control/AthOnnxruntimeService/CMakeLists.txt
@@ -0,0 +1,23 @@
+# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+
+# Declare the package's name.
+atlas_subdir( AthOnnxruntimeService )
+
+# External dependencies.
+find_package( onnxruntime )
+
+# Component(s) in the package.
+atlas_add_library( AthOnnxruntimeServiceLib
+   AthOnnxruntimeService/*.h
+   INTERFACE
+   PUBLIC_HEADERS AthOnnxruntimeService
+   INCLUDE_DIRS ${ONNXRUNTIME_INCLUDE_DIRS}
+   LINK_LIBRARIES ${ONNXRUNTIME_LIBRARIES} GaudiKernel )
+
+atlas_add_component( AthOnnxruntimeService
+   src/*.h src/*.cxx src/components/*.cxx
+   INCLUDE_DIRS ${ONNXRUNTIME_INCLUDE_DIRS}
+   LINK_LIBRARIES ${ONNXRUNTIME_LIBRARIES} AthOnnxruntimeServiceLib AthenaBaseComps GaudiKernel)
+
+
+
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/src/ONNXRuntimeSvc.cxx b/Control/AthOnnxruntimeService/src/ONNXRuntimeSvc.cxx
similarity index 100%
rename from Control/AthenaExamples/AthExOnnxRuntime/src/ONNXRuntimeSvc.cxx
rename to Control/AthOnnxruntimeService/src/ONNXRuntimeSvc.cxx
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/src/ONNXRuntimeSvc.h b/Control/AthOnnxruntimeService/src/ONNXRuntimeSvc.h
similarity index 87%
rename from Control/AthenaExamples/AthExOnnxRuntime/src/ONNXRuntimeSvc.h
rename to Control/AthOnnxruntimeService/src/ONNXRuntimeSvc.h
index d33808607df2..4422521ba17a 100644
--- a/Control/AthenaExamples/AthExOnnxRuntime/src/ONNXRuntimeSvc.h
+++ b/Control/AthOnnxruntimeService/src/ONNXRuntimeSvc.h
@@ -1,10 +1,10 @@
 // Dear emacs, this is -*- c++ -*-
 // Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
-#ifndef ATHEXONNXRUNTIME_ONNXRUNTIMESVC_H
-#define ATHEXONNXRUNTIME_ONNXRUNTIMESVC_H
+#ifndef ATHONNXRUNTIMESERVICE_ONNXRUNTIMESVC_H
+#define ATHONNXRUNTIMESERVICE_ONNXRUNTIMESVC_H
 
 // Local include(s).
-#include "AthExOnnxRuntime/IONNXRuntimeSvc.h"
+#include "AthOnnxruntimeService/IONNXRuntimeSvc.h"
 
 // Framework include(s).
 #include "AthenaBaseComps/AthService.h"
@@ -56,4 +56,4 @@ namespace AthONNX {
 
 } // namespace AthONNX
 
-#endif // ATHEXONNXRUNTIME_ONNXRUNTIMESVC_H
+#endif // ATHONNXRUNTIMESERVICE_ONNXRUNTIMESVC_H
diff --git a/Control/AthOnnxruntimeService/src/components/AthOnnxruntimeService_entries.cxx b/Control/AthOnnxruntimeService/src/components/AthOnnxruntimeService_entries.cxx
new file mode 100644
index 000000000000..a1fd2e2e7897
--- /dev/null
+++ b/Control/AthOnnxruntimeService/src/components/AthOnnxruntimeService_entries.cxx
@@ -0,0 +1,8 @@
+// Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+
+// Local include(s).
+#include "../ONNXRuntimeSvc.h"
+
+// Declare the package's components.
+DECLARE_COMPONENT( AthONNX::ONNXRuntimeSvc )
+
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/CMakeLists.txt b/Control/AthenaExamples/AthExOnnxRuntime/CMakeLists.txt
index 433119a28496..8361d3a13413 100644
--- a/Control/AthenaExamples/AthExOnnxRuntime/CMakeLists.txt
+++ b/Control/AthenaExamples/AthExOnnxRuntime/CMakeLists.txt
@@ -8,7 +8,6 @@ find_package( onnxruntime )
 
 # Component(s) in the package.
 atlas_add_library( AthExOnnxRuntimeLib
-   AthExOnnxRuntime/*.h
    INTERFACE
    PUBLIC_HEADERS AthExOnnxRuntime
    INCLUDE_DIRS ${ONNXRUNTIME_INCLUDE_DIRS}
@@ -17,7 +16,7 @@ atlas_add_library( AthExOnnxRuntimeLib
 atlas_add_component( AthExOnnxRuntime
    src/*.h src/*.cxx src/components/*.cxx
    INCLUDE_DIRS ${ONNXRUNTIME_INCLUDE_DIRS}
-   LINK_LIBRARIES ${ONNXRUNTIME_LIBRARIES} AthExOnnxRuntimeLib AthenaBaseComps GaudiKernel PathResolver )
+   LINK_LIBRARIES ${ONNXRUNTIME_LIBRARIES} AthExOnnxRuntimeLib AthenaBaseComps GaudiKernel PathResolver AthOnnxruntimeServiceLib)
 
 # Install files from the package.
 atlas_install_joboptions( share/*.py )
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/share/AthExOnnxRuntime_jobOptions.py b/Control/AthenaExamples/AthExOnnxRuntime/share/AthExOnnxRuntime_jobOptions.py
index a01839020ba0..20b057cc213c 100644
--- a/Control/AthenaExamples/AthExOnnxRuntime/share/AthExOnnxRuntime_jobOptions.py
+++ b/Control/AthenaExamples/AthExOnnxRuntime/share/AthExOnnxRuntime_jobOptions.py
@@ -5,8 +5,8 @@ from AthenaCommon.AlgSequence import AlgSequence
 algSequence = AlgSequence()
 
 # Set up the job.
-from AthExOnnxRuntime.AthExOnnxRuntimeConf import AthONNX__ONNXRuntimeSvc, \
-                                                  AthONNX__CxxApiAlgorithm
+from AthExOnnxRuntime.AthExOnnxRuntimeConf import AthONNX__CxxApiAlgorithm
+from AthOnnxruntimeService.AthOnnxruntimeServiceConf import AthONNX__ONNXRuntimeSvc
 
 from AthenaCommon.AppMgr import ServiceMgr
 ServiceMgr += AthONNX__ONNXRuntimeSvc( OutputLevel = DEBUG )
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/src/CxxApiAlgorithm.h b/Control/AthenaExamples/AthExOnnxRuntime/src/CxxApiAlgorithm.h
index 97e429c33b6b..0ebf218804d2 100644
--- a/Control/AthenaExamples/AthExOnnxRuntime/src/CxxApiAlgorithm.h
+++ b/Control/AthenaExamples/AthExOnnxRuntime/src/CxxApiAlgorithm.h
@@ -4,7 +4,7 @@
 #define ATHEXONNXRUNTIME_CXXAPIALGORITHM_H
 
 // Local include(s).
-#include "AthExOnnxRuntime/IONNXRuntimeSvc.h"
+#include "AthOnnxruntimeService/IONNXRuntimeSvc.h"
 
 // Framework include(s).
 #include "AthenaBaseComps/AthReentrantAlgorithm.h"
diff --git a/Control/AthenaExamples/AthExOnnxRuntime/src/components/AthExOnnxRuntime_entries.cxx b/Control/AthenaExamples/AthExOnnxRuntime/src/components/AthExOnnxRuntime_entries.cxx
index 0974addc890e..ca1006fe95b4 100644
--- a/Control/AthenaExamples/AthExOnnxRuntime/src/components/AthExOnnxRuntime_entries.cxx
+++ b/Control/AthenaExamples/AthExOnnxRuntime/src/components/AthExOnnxRuntime_entries.cxx
@@ -2,8 +2,6 @@
 
 // Local include(s).
 #include "../CxxApiAlgorithm.h"
-#include "../ONNXRuntimeSvc.h"
 
 // Declare the package's components.
 DECLARE_COMPONENT( AthONNX::CxxApiAlgorithm )
-DECLARE_COMPONENT( AthONNX::ONNXRuntimeSvc )
-- 
GitLab