From d905f56ef7c1a77de9a97814cffda94bfac376ce Mon Sep 17 00:00:00 2001
From: Atlas-Software Librarian <Atlas-Software.Librarian@cern.ch>
Date: Fri, 8 Apr 2016 16:56:50 +0200
Subject: [PATCH] 'CMakeLists.txt' (EventCommonTPCnv-00-05-12)

	* EventCommonTPCnv\IParticleLinkContainer_p1.h:
	* EventCommonTPCnv\INav4MomLinkContainer_p1.h: Remove references
	to transient EDM to reduce ROOT6 memory usage from autoparsing
	* Tagging EventCommonTPCnv-00-05-12
---
 Event/EventCommonTPCnv/CMakeLists.txt         | 44 +++++++++++++++++++
 .../INav4MomLinkContainer_p1.h                | 13 ++----
 .../IParticleLinkContainer_p1.h               | 13 ++----
 3 files changed, 50 insertions(+), 20 deletions(-)
 create mode 100644 Event/EventCommonTPCnv/CMakeLists.txt

diff --git a/Event/EventCommonTPCnv/CMakeLists.txt b/Event/EventCommonTPCnv/CMakeLists.txt
new file mode 100644
index 00000000000..60813892ecf
--- /dev/null
+++ b/Event/EventCommonTPCnv/CMakeLists.txt
@@ -0,0 +1,44 @@
+################################################################################
+# Package: EventCommonTPCnv
+################################################################################
+
+# Declare the package name:
+atlas_subdir( EventCommonTPCnv )
+
+# Declare the package's dependencies:
+atlas_depends_on_subdirs( PUBLIC
+                          Control/DataModel
+                          Control/DataModelAthenaPool
+                          Database/AthenaPOOL/AthenaPoolCnvSvc
+                          Event/FourMom
+                          Event/NavFourMom
+                          PRIVATE
+                          Control/AthenaKernel
+                          Control/StoreGate
+                          GaudiKernel )
+
+# External dependencies:
+find_package( CLHEP )
+find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
+
+# Component(s) in the package:
+atlas_add_tpcnv_library( EventCommonTPCnv
+                         src/*.cxx
+                         PUBLIC_HEADERS EventCommonTPCnv
+                         INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS}
+                         PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
+                         DEFINITIONS ${CLHEP_DEFINITIONS}
+                         LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} DataModel DataModelAthenaPoolLib AthenaPoolCnvSvcLib FourMom NavFourMom AthenaKernel StoreGateLib SGtests GaudiKernel )
+
+atlas_add_dictionary( EventCommonTPCnvDict
+                      EventCommonTPCnv/EventCommonTPCnvDict.h
+                      EventCommonTPCnv/selection.xml
+                      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS}
+                      LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} DataModel DataModelAthenaPoolLib AthenaPoolCnvSvcLib FourMom NavFourMom AthenaKernel StoreGateLib SGtests GaudiKernel EventCommonTPCnv )
+
+atlas_add_dictionary( OLD_EventCommonTPCnvDict
+                      EventCommonTPCnv/EventCommonTPCnvDict.h
+                      EventCommonTPCnv/OLD_selection.xml
+                      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS}
+                      LINK_LIBRARIES ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} DataModel DataModelAthenaPoolLib AthenaPoolCnvSvcLib FourMom NavFourMom AthenaKernel StoreGateLib SGtests GaudiKernel EventCommonTPCnv )
+
diff --git a/Event/EventCommonTPCnv/EventCommonTPCnv/INav4MomLinkContainer_p1.h b/Event/EventCommonTPCnv/EventCommonTPCnv/INav4MomLinkContainer_p1.h
index 70de7b13742..1173d5759f4 100644
--- a/Event/EventCommonTPCnv/EventCommonTPCnv/INav4MomLinkContainer_p1.h
+++ b/Event/EventCommonTPCnv/EventCommonTPCnv/INav4MomLinkContainer_p1.h
@@ -14,22 +14,15 @@
 #ifndef EVENTCOMMONTPCNV_INAV4MOMLINKCONTAINER_P1_H
 #define EVENTCOMMONTPCNV_INAV4MOMLINKCONTAINER_P1_H
 
-// STL includes
-#include <vector>
-
 // DataModel includes
-#include "DataModelAthenaPool/VectorElementLinkCnv_p1.h"
 #include "DataModelAthenaPool/VectorElementLink_p1.h"
-#include "NavFourMom/INav4MomLinkContainer.h"
 
 /** Definition of the persistent version of INav4MomLinkContainer */
-class INav4MomLinkContainer_p1 : public GeneratePersVectorELinkType_p1< INav4MomLinkContainer >::type
+// class INav4MomLinkContainer_p1 : public GeneratePersVectorELinkType_p1< INav4MomLinkContainer >::type
+// MN: avoid transient EDM in ROOT6 dicts
+class INav4MomLinkContainer_p1 : public VectorElementLinkInt_p1
 {
-  /** Declare the converter as a friend class */
-  friend class INav4MomLinkContainerCnv_p1;
-
 };
 
 
 #endif // EVENTCOMMONTPCNV_INAV4MOMLINKCONTAINER_P1_H
-
diff --git a/Event/EventCommonTPCnv/EventCommonTPCnv/IParticleLinkContainer_p1.h b/Event/EventCommonTPCnv/EventCommonTPCnv/IParticleLinkContainer_p1.h
index ead0477ab00..6dc358dd6cf 100644
--- a/Event/EventCommonTPCnv/EventCommonTPCnv/IParticleLinkContainer_p1.h
+++ b/Event/EventCommonTPCnv/EventCommonTPCnv/IParticleLinkContainer_p1.h
@@ -14,22 +14,15 @@
 #ifndef EVENTCOMMONTPCNV_IPARTICLELINKCONTAINER_P1_H
 #define EVENTCOMMONTPCNV_IPARTICLELINKCONTAINER_P1_H
 
-// STL includes
-#include <vector>
-
 // DataModel includes
-#include "DataModelAthenaPool/VectorElementLinkCnv_p1.h"
 #include "DataModelAthenaPool/VectorElementLink_p1.h"
-#include "NavFourMom/IParticleLinkContainer.h"
 
 /** Definition of the persistent version of IParticleLinkContainer */
-class IParticleLinkContainer_p1 : public GeneratePersVectorELinkType_p1< IParticleLinkContainer >::type
+// class IParticleLinkContainer_p1 : public GeneratePersVectorELinkType_p1< IParticleLinkContainer >::type
+// MN: avoid transient EDM in ROOT6 dicts
+class IParticleLinkContainer_p1 : public VectorElementLinkInt_p1
 {
-  /** Declare the converter as a friend class */
-  friend class IParticleLinkContainerCnv_p1;
-
 };
 
 
 #endif // EVENTCOMMONTPCNV_IPARTICLELINKCONTAINER_P1_H
-
-- 
GitLab