diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.cxx deleted file mode 100644 index c039276890784dc5b8aa4992d9be8f73ccc01f5d..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.cxx +++ /dev/null @@ -1,45 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODNeutralParticleAuxContainerCnv.cxx 635798 2014-12-12 22:08:04Z ssnyder $ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODNeutralParticleAuxContainerCnv.h" -#include "AthContainers/tools/copyThinned.h" -#include "AthenaKernel/IThinningSvc.h" - -xAODNeutralParticleAuxContainerCnv:: -xAODNeutralParticleAuxContainerCnv( ISvcLocator* svcLoc ) - : xAODNeutralParticleAuxContainerCnvBase( svcLoc ) { - -} - -xAOD::NeutralParticleAuxContainer* -xAODNeutralParticleAuxContainerCnv:: -createPersistent( xAOD::NeutralParticleAuxContainer* trans ) { - - // Create a copy of the container: - return SG::copyThinned (*trans, IThinningSvc::instance()); -} - -xAOD::NeutralParticleAuxContainer* -xAODNeutralParticleAuxContainerCnv::createTransient() { - - // The known ID(s) for this container: - static const pool::Guid v1_guid( "006862BC-5CEB-11E3-9FB4-02163E00A92F" ); - - // Check which version of the container we're reading: - if( compareClassGuid( v1_guid ) ) { - // It's the latest version, read it directly: - return poolReadObject< xAOD::NeutralParticleAuxContainer >(); - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of " - "xAOD::NeutralParticleAuxContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.h deleted file mode 100644 index dd619ab42d5f5498d1d7355b5059a6210bcad067..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleAuxContainerCnv.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODNEUTRALPARTICLEAUXCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODNEUTRALPARTICLEAUXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/NeutralParticleAuxContainer.h" - -/// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::NeutralParticleAuxContainer, - xAOD::NeutralParticleAuxContainer > - xAODNeutralParticleAuxContainerCnvBase; - -/** - * @short POOL converter for the xAOD::NeutralParticleAuxContainer class - * - * This is the converter doing the actual schema evolution - * of the package... The converter for xAOD::TrackParticleContainer - * doesn't do much, as the "interface classes" don't contain - * too much/any payload. Most of the payload is in the auxiliary - * containers like this one. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - */ -class xAODNeutralParticleAuxContainerCnv : - public xAODNeutralParticleAuxContainerCnvBase { - -public: - /// Converter constructor - xAODNeutralParticleAuxContainerCnv( ISvcLocator* svcLoc ); - -protected: - /// Function preparing the container to be written out - virtual xAOD::NeutralParticleAuxContainer* - createPersistent( xAOD::NeutralParticleAuxContainer* trans ); - /// Function reading in the object from the input file - virtual xAOD::NeutralParticleAuxContainer* createTransient(); - -}; // class xAODNeutralParticleAuxContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.cxx deleted file mode 100644 index df837a6a126dd8a5eb008f9b65ab7fcf7b8d45bd..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.cxx +++ /dev/null @@ -1,88 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODNeutralParticleContainerCnv.h" - -namespace { - - /// Helper function setting up the container's link to its auxiliary store - void setStoreLink( SG::AuxVectorBase* cont, const std::string& key ) { - - // The link to set up: - DataLink< SG::IConstAuxStore > link( key + "Aux." ); - - // Give it to the container: - cont->setStore( link ); - - return; - } - -} // private namespace - -xAODNeutralParticleContainerCnv::xAODNeutralParticleContainerCnv( ISvcLocator* svcLoc ) - : xAODNeutralParticleContainerCnvBase( svcLoc ) { -} - -xAOD::NeutralParticleContainer* -xAODNeutralParticleContainerCnv:: -createPersistent( xAOD::NeutralParticleContainer* trans ) { - - // Create a view copy of the container: - xAOD::NeutralParticleContainer* result = - new xAOD::NeutralParticleContainer( trans->begin(), trans->end(), - SG::VIEW_ELEMENTS ); - - // Prepare the objects to be written out: - xAOD::NeutralParticleContainer::iterator itr = result->begin(); - xAOD::NeutralParticleContainer::iterator end = result->end(); - for( ; itr != end; ++itr ) { - toPersistent( *itr ); - } - - // Return the new container: - return result; -} - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODNeutralParticleContainerCnv::createObj( IOpaqueAddress* pAddr, - DataObject*& pObj ) { - - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::NeutralParticleContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - -xAOD::NeutralParticleContainer* xAODNeutralParticleContainerCnv::createTransient() { - - // The known ID(s) for this container: - static pool::Guid v1_guid( "12869D6A-5CEB-11E3-B64A-02163E00A92F" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::NeutralParticleContainer* c = poolReadObject< xAOD::NeutralParticleContainer >(); - setStoreLink( c, m_key ); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of " - "xAOD::NeutralParticleContainer found" ); - return 0; -} - -void xAODNeutralParticleContainerCnv:: -toPersistent( xAOD::NeutralParticle* /*np*/ ) const { - return; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.h deleted file mode 100644 index 5f6c7bb67993cf3173051ee1260dc8948cda5a35..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODNeutralParticleContainerCnv.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODNEUTRALPARTICLECONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODNEUTRALPARTICLECONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/NeutralParticleContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::NeutralParticleContainer, - xAOD::NeutralParticleContainer > - xAODNeutralParticleContainerCnvBase; - -/** - * @short POOL converter for the xAOD::NeutralParticleContainer class - * - * Simple converter class making the xAOD::NeutralParticleContainer - * class known to POOL. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - * @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - * - */ -class xAODNeutralParticleContainerCnv : public xAODNeutralParticleContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODNeutralParticleContainerCnv >; - -public: - /// Converter constructor - xAODNeutralParticleContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ); - - /// Function preparing the container to be written out - virtual xAOD::NeutralParticleContainer* createPersistent( xAOD::NeutralParticleContainer* trans ); - - /// Function reading in the persistent object - virtual xAOD::NeutralParticleContainer* createTransient(); - -private: - /// Function preparing a vertex object for persistence - void toPersistent( xAOD::NeutralParticle* np ) const; - - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODNeutralParticleContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.cxx deleted file mode 100644 index 31a08d1b2a775ce732c973ca37751cf278a54d22..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.cxx +++ /dev/null @@ -1,36 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODSCTRDOAuxContainerCnv.h" -#include "AthContainers/tools/copyThinned.h" -#include "AthenaKernel/IThinningSvc.h" - -xAODSCTRDOAuxContainerCnv::xAODSCTRDOAuxContainerCnv( ISvcLocator* svcLoc ) - : xAODSCTRDOAuxContainerCnvBase( svcLoc ) -{ } - -xAOD::SCTRawHitValidationAuxContainer* -xAODSCTRDOAuxContainerCnv::createPersistent( xAOD::SCTRawHitValidationAuxContainer* trans ) -{ - // Create a thinned copy of the container: - return SG::copyThinned (*trans, IThinningSvc::instance()); -} - -xAOD::SCTRawHitValidationAuxContainer* xAODSCTRDOAuxContainerCnv::createTransient() { - // The known ID(s) for this container: - static const pool::Guid v1_guid( "BC5A8B61-9429-4704-B8C7-50B2FB676775" ); - - // Check which version of the container we're reading: - if( compareClassGuid( v1_guid ) ) { - // It's the latest version, read it directly: - return poolReadObject< xAOD::SCTRawHitValidationAuxContainer >(); - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of xAOD::SCTRawHitValidationAuxContainer found." ); -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.h deleted file mode 100644 index b091ebcc7ede47d9385771865243541a7f53b341..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOAuxContainerCnv.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODSCTRDOAUXCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODSCTRDOAUXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/SCTRawHitValidationAuxContainer.h" - -/// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::SCTRawHitValidationAuxContainer, - xAOD::SCTRawHitValidationAuxContainer > - xAODSCTRDOAuxContainerCnvBase; - -/** - * POOL converter for the xAOD::SCTRawHitValidationAuxContainer class - */ -class xAODSCTRDOAuxContainerCnv : public xAODSCTRDOAuxContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODSCTRDOAuxContainerCnv >; - -protected: - /// Converter constructor - xAODSCTRDOAuxContainerCnv( ISvcLocator* svcLoc ); - - /// Function preparing the container to be written out - virtual xAOD::SCTRawHitValidationAuxContainer* createPersistent( xAOD::SCTRawHitValidationAuxContainer* trans ) override; - /// Function reading in the object from the input file - virtual xAOD::SCTRawHitValidationAuxContainer* createTransient() override; - -}; // class xAODSCTRDOAuxContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.cxx deleted file mode 100644 index 8d74ff2d9ea6e7bfb627633b6325795e9eaf3a05..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.cxx +++ /dev/null @@ -1,52 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODSCTRDOContainerCnv.h" - -xAODSCTRDOContainerCnv::xAODSCTRDOContainerCnv( ISvcLocator* svcLoc ) - : xAODSCTRDOContainerCnvBase( svcLoc ) -{ } - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODSCTRDOContainerCnv::createObj(IOpaqueAddress* pAddr, - DataObject*& pObj ) -{ - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::SCTRawHitValidationContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - - -xAOD::SCTRawHitValidationContainer* -xAODSCTRDOContainerCnv::createPersistent( xAOD::SCTRawHitValidationContainer* trans ) -{ - // Create a view copy of the container: - return new xAOD::SCTRawHitValidationContainer( trans->begin(), trans->end(), SG::VIEW_ELEMENTS ); -} - -xAOD::SCTRawHitValidationContainer* xAODSCTRDOContainerCnv::createTransient() { - // The known ID(s) for this container: - const pool::Guid v1_guid( "BC8CE35A-5785-4F97-82B6-1E4A21A8C28F" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::SCTRawHitValidationContainer* c = poolReadObject< xAOD::SCTRawHitValidationContainer >(); - c->setStore(DataLink<SG::IConstAuxStore>(m_key + "Aux.")); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of xAOD::SCTRawHitValidationContainer found" ); -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.h deleted file mode 100644 index eb401d0bd0941f0f69e2bea374388a60fe465989..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODSCTRDOContainerCnv.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODSCTRDOCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODSCTRDOCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/SCTRawHitValidationContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::SCTRawHitValidationContainer, - xAOD::SCTRawHitValidationContainer > - xAODSCTRDOContainerCnvBase; - -/** - * @short POOL converter for the xAOD::SCTRawHitValidationContainer class - * - * Simple converter class making the xAOD::SCTRawHitValidationContainer - * class known to POOL. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - * @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - * - */ -class xAODSCTRDOContainerCnv : public xAODSCTRDOContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODSCTRDOContainerCnv >; - -public: - /// Converter constructor - xAODSCTRDOContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ) override; - - /// Function preparing the container to be written out - virtual xAOD::SCTRawHitValidationContainer* createPersistent( xAOD::SCTRawHitValidationContainer* trans ) override; - - /// Function reading in the persistent object - virtual xAOD::SCTRawHitValidationContainer* createTransient() override; - -protected: - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODSCTRDOContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.cxx deleted file mode 100644 index 250164ea06c4c01a26d26ebeaffea1639082cc9c..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.cxx +++ /dev/null @@ -1,45 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODTrackMeasurementValidationAuxContainerCnv.cxx 581533 2014-02-05 09:28:36Z krasznaa $ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODTrackMeasurementValidationAuxContainerCnv.h" -#include "AthContainers/tools/copyThinned.h" -#include "AthenaKernel/IThinningSvc.h" - -xAODTrackMeasurementValidationAuxContainerCnv:: -xAODTrackMeasurementValidationAuxContainerCnv( ISvcLocator* svcLoc ) - : xAODTrackMeasurementValidationAuxContainerCnvBase( svcLoc ) { - -} - -xAOD::TrackMeasurementValidationAuxContainer* -xAODTrackMeasurementValidationAuxContainerCnv:: -createPersistent( xAOD::TrackMeasurementValidationAuxContainer* trans ) { - - // Create a copy of the container: - return SG::copyThinned (*trans, IThinningSvc::instance()); -} - -xAOD::TrackMeasurementValidationAuxContainer* -xAODTrackMeasurementValidationAuxContainerCnv::createTransient() { - - // The known ID(s) for this container: - static const pool::Guid v1_guid( "61B62A1A-4C51-43A2-9623-1B9E910A81E8" ); - - // Check which version of the container we're reading: - if( compareClassGuid( v1_guid ) ) { - // It's the latest version, read it directly: - return poolReadObject< xAOD::TrackMeasurementValidationAuxContainer >(); - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackMeasurementValidationAuxContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.h deleted file mode 100644 index a0f02e1629d2e38e37e7ad8a898025d76ff5ebf6..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationAuxContainerCnv.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODPREPRAWDATAAUXCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODPREPRAWDATAAUXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/TrackMeasurementValidationAuxContainer.h" - -/// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::TrackMeasurementValidationAuxContainer, - xAOD::TrackMeasurementValidationAuxContainer > - xAODTrackMeasurementValidationAuxContainerCnvBase; - -/** - * @short POOL converter for the xAOD::TrackMeasurementValidationAuxContainer class - * - * This is the converter doing the actual schema evolution - * of the package... The converter for xAOD::TrackParticleContainer - * doesn't do much, as the "interface classes" don't contain - * too much/any payload. Most of the payload is in the auxiliary - * containers like this one. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - */ -class xAODTrackMeasurementValidationAuxContainerCnv : - public xAODTrackMeasurementValidationAuxContainerCnvBase { - -public: - /// Converter constructor - xAODTrackMeasurementValidationAuxContainerCnv( ISvcLocator* svcLoc ); - -protected: - /// Function preparing the container to be written out - virtual xAOD::TrackMeasurementValidationAuxContainer* - createPersistent( xAOD::TrackMeasurementValidationAuxContainer* trans ); - /// Function reading in the object from the input file - virtual xAOD::TrackMeasurementValidationAuxContainer* createTransient(); - -}; // class xAODTrackMeasurementValidationAuxContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.cxx deleted file mode 100644 index 73b4ff93519c481951526f25f1968ccde5beb11d..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.cxx +++ /dev/null @@ -1,76 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODTrackMeasurementValidationContainerCnv.h" - -namespace { - - /// Helper function setting up the container's link to its auxiliary store - void setStoreLink( SG::AuxVectorBase* cont, const std::string& key ) { - - // The link to set up: - DataLink< SG::IConstAuxStore > link( key + "Aux." ); - - // Give it to the container: - cont->setStore( link ); - - return; - } - -} // private namespace - -xAODTrackMeasurementValidationContainerCnv::xAODTrackMeasurementValidationContainerCnv( ISvcLocator* svcLoc ) - : xAODTrackMeasurementValidationContainerCnvBase( svcLoc ) { -} - -xAOD::TrackMeasurementValidationContainer* -xAODTrackMeasurementValidationContainerCnv:: -createPersistent( xAOD::TrackMeasurementValidationContainer* trans ) { - - // Create a view copy of the container: - xAOD::TrackMeasurementValidationContainer* result = - new xAOD::TrackMeasurementValidationContainer( trans->begin(), trans->end(), - SG::VIEW_ELEMENTS ); - - // Return the new container: - return result; -} - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODTrackMeasurementValidationContainerCnv::createObj( IOpaqueAddress* pAddr, - DataObject*& pObj ) { - - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::TrackMeasurementValidationContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - -xAOD::TrackMeasurementValidationContainer* xAODTrackMeasurementValidationContainerCnv::createTransient() { - - // The known ID(s) for this container: - static pool::Guid v1_guid( "868F1FD8-AFE7-4B40-B12E-73716C37A6B0" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::TrackMeasurementValidationContainer* c = poolReadObject< xAOD::TrackMeasurementValidationContainer >(); - setStoreLink( c, m_key ); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackMeasurementValidationContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.h deleted file mode 100644 index 1e4fd007eae57568d5285815b48674f0f48e21e3..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackMeasurementValidationContainerCnv.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODPREPRAWDATACONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODPREPRAWDATACONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/TrackMeasurementValidationContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::TrackMeasurementValidationContainer, - xAOD::TrackMeasurementValidationContainer > - xAODTrackMeasurementValidationContainerCnvBase; - -/** - * @short POOL converter for the xAOD::TrackMeasurementValidationContainer class - * - * Simple converter class making the xAOD::TrackMeasurementValidationContainer - * class known to POOL. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - * @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - * - */ -class xAODTrackMeasurementValidationContainerCnv : public xAODTrackMeasurementValidationContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODTrackMeasurementValidationContainerCnv >; - -public: - /// Converter constructor - xAODTrackMeasurementValidationContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ); - - /// Function preparing the container to be written out - virtual xAOD::TrackMeasurementValidationContainer* createPersistent( xAOD::TrackMeasurementValidationContainer* trans ); - - /// Function reading in the persistent object - virtual xAOD::TrackMeasurementValidationContainer* createTransient(); - -private: - /// Function preparing a vertex object for persistence - void toPersistent( xAOD::TrackMeasurementValidation* np ) const; - - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODTrackMeasurementValidationContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.cxx index 58278c704e6ff48ecf7e56933470b3264e809540..e42261cef4f047116ff29be846a002ba64fc0578 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.cxx +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id: xAODTrackParticleAuxContainerCnv.cxx 791368 2017-01-05 08:55:07Z krasznaa $ @@ -47,27 +47,26 @@ StatusCode xAODTrackParticleAuxContainerCnv::initialize() { xAOD::TrackParticleAuxContainer* xAODTrackParticleAuxContainerCnv:: -createPersistent( xAOD::TrackParticleAuxContainer* trans ) { +createPersistentWithKey( xAOD::TrackParticleAuxContainer* trans, + const std::string& key ) { // Load the necessary ROOT class(es): - static bool dictLoaded = false; - if( ! dictLoaded ) { - static const char* NAME = - "std::vector<ElementLink<DataVector<Trk::Track> > >"; - if( ! TClass::GetClass( NAME ) ) { - ATH_MSG_ERROR( "Couldn't load dictionary for type: " << NAME ); - } - dictLoaded = true; + static const char* NAME = + "std::vector<ElementLink<DataVector<Trk::Track> > >"; + static const TClass* cls = TClass::GetClass( NAME ); + if( ! cls ) { + ATH_MSG_ERROR( "Couldn't load dictionary for type: " << NAME ); } - // Create a copy of the container: - std::unique_ptr< xAOD::TrackParticleAuxContainer > result( - SG::copyThinned( *trans, IThinningSvc::instance() ) ); + // This makes a copy of the container, with any thinning applied. + std::unique_ptr< xAOD::TrackParticleAuxContainer > result + ( xAODTrackParticleAuxContainerCnvBase::createPersistentWithKey (trans, key) ); + // Create a helper object for the float compression: xAOD::TrackParticleContainer helper; for( size_t i = 0; i < result->size(); ++i ) { - helper.push_back( new xAOD::TrackParticle() ); + helper.push_back( std::make_unique<xAOD::TrackParticle>() ); } helper.setStore( result.get() ); @@ -85,48 +84,3 @@ createPersistent( xAOD::TrackParticleAuxContainer* trans ) { return result.release(); } -xAOD::TrackParticleAuxContainer* -xAODTrackParticleAuxContainerCnv::createTransient() { - - // The known ID(s) for this container: - static const pool::Guid v1_guid( "C3B01EA0-CA87-4C96-967F-E0F9A75BD370" ); - static const pool::Guid v2_guid( "53031BE5-2156-41E8-B70C-41A1C0572FC5" ); - static const pool::Guid v3_guid( "F41DF744-242D-11E6-B472-02163E010CEC" ); - static const pool::Guid v4_guid( "403CEB6E-2A3D-11E8-B048-080027F5CBDA" ); - - // Check which version of the container we're reading: - if ( compareClassGuid( v4_guid ) ){ - // It's the latest version, read it directly: - return poolReadObject< xAOD::TrackParticleAuxContainer >(); - } else if ( compareClassGuid( v3_guid ) ){ - // Read in the v3 version: - static xAODTrackParticleAuxContainerCnv_v3 converter; - std::unique_ptr< xAOD::TrackParticleAuxContainer_v3 > - old( poolReadObject< xAOD::TrackParticleAuxContainer_v3 >() ); - - return converter.createTransient( old.get(), msg() ); - } else if ( compareClassGuid( v2_guid ) ){ - // Read in the v2 version: - static xAODTrackParticleAuxContainerCnv_v2 converter; - std::unique_ptr< xAOD::TrackParticleAuxContainer_v2 > - old( poolReadObject< xAOD::TrackParticleAuxContainer_v2 >() ); - - return converter.createTransient( old.get(), msg() ); - } else if( compareClassGuid( v1_guid ) ) { - - // The v1 converter: - static xAODTrackParticleAuxContainerCnv_v1 converter; - - // Read in the v1 version: - std::unique_ptr< xAOD::TrackParticleAuxContainer_v1 > - old( poolReadObject< xAOD::TrackParticleAuxContainer_v1 >() ); - - // Return the converted object: - return converter.createTransient( old.get(), msg() ); - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackParticleAuxContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.h index c9cf0157bfe0e5e4fce7b5da7e918b762594d2a6..78d695fce57fcd23d00458832de923a5f5cd642a 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.h +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv.h @@ -1,7 +1,7 @@ // Dear emacs, this is -*- c++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id: xAODTrackParticleAuxContainerCnv.h 789663 2016-12-14 14:48:57Z krasznaa $ @@ -9,18 +9,25 @@ #define XAODTRACKINGATHENAPOOL_XAODTRACKPARTICLEAUXCONTAINERCNV_H // Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" +#include "AthenaPoolCnvSvc/T_AthenaPoolAuxContainerCnv.h" #include "GaudiKernel/ToolHandle.h" // EDM include(s): #include "xAODTracking/TrackParticleAuxContainer.h" #include "xAODTrackingCnv/ITrackParticleCompressorTool.h" +#include "xAODTrackParticleAuxContainerCnv_v1.h" +#include "xAODTrackParticleAuxContainerCnv_v2.h" +#include "xAODTrackParticleAuxContainerCnv_v3.h" + /// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::TrackParticleAuxContainer, - xAOD::TrackParticleAuxContainer > +typedef T_AthenaPoolAuxContainerCnv<xAOD::TrackParticleAuxContainer, + xAODTrackParticleAuxContainerCnv_v3, + xAODTrackParticleAuxContainerCnv_v2, + xAODTrackParticleAuxContainerCnv_v1> xAODTrackParticleAuxContainerCnvBase; + /** * @short POOL converter for the xAOD::TrackParticleAuxContainer class * @@ -33,7 +40,8 @@ typedef T_AthenaPoolCustomCnv< xAOD::TrackParticleAuxContainer, * @author Edward Moyse <Edward.Moyse@cern.ch> */ class xAODTrackParticleAuxContainerCnv : - public xAODTrackParticleAuxContainerCnvBase { + public xAODTrackParticleAuxContainerCnvBase +{ public: /// Converter constructor @@ -50,9 +58,8 @@ private: protected: /// Function preparing the container to be written out virtual xAOD::TrackParticleAuxContainer* - createPersistent( xAOD::TrackParticleAuxContainer* trans ) override; - /// Function reading in the object from the input file - virtual xAOD::TrackParticleAuxContainer* createTransient() override; + createPersistentWithKey( xAOD::TrackParticleAuxContainer* trans, + const std::string& key ) override; private: /// Compressor tool for the track particles diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.cxx index ca7fb4d6fe0b76df4541543b79960daf282f130d..41e5380105026fea0c86b3115985c5f69bf9959f 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.cxx +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -30,14 +30,13 @@ do { \ } while( 0 ) xAODTrackParticleAuxContainerCnv_v1::xAODTrackParticleAuxContainerCnv_v1() - : T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v1 >() { } void xAODTrackParticleAuxContainerCnv_v1:: persToTrans( const xAOD::TrackParticleAuxContainer_v1* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ) { + MsgStream& log ) const { // Greet the user: ATH_MSG( "Converting xAOD::TrackParticleAuxContainer_v1 to current version..." ); @@ -133,7 +132,7 @@ persToTrans( const xAOD::TrackParticleAuxContainer_v1* oldObj, /// void xAODTrackParticleAuxContainerCnv_v1::transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v1*, - MsgStream& log ) { + MsgStream& log ) const { log << MSG::ERROR << "Somebody called xAODTrackParticleAuxContainerCnv_v1::transToPers" diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.h index a2fb6628701660ac759e2a964aa1df9d94050c3b..a7e5eb8f6dd99ada0bdebe0032bf3b5a1504b598 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.h +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v1.h @@ -1,7 +1,7 @@ // Dear emacs, this is -*- c++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -27,21 +27,25 @@ /// $Date$ /// class xAODTrackParticleAuxContainerCnv_v1 : - public T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v1 > + public T_AthenaPoolTPCnvConstBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v1 > { public: + using base_class::persToTrans; + using base_class::transToPers; + + /// Default constructor xAODTrackParticleAuxContainerCnv_v1(); /// Function converting from the old type to the current one virtual void persToTrans( const xAOD::TrackParticleAuxContainer_v1* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ); + MsgStream& log ) const override; /// Dummy function inherited from the base class virtual void transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v1*, - MsgStream& log ); + MsgStream& log ) const override; }; // class xAODTrackParticleAuxContainerCnv_v1 -#endif // XAODTRACKINGATHENAPOOL_XAODTRACKPARTICLEAUXCONTAINERCNV_V1_H \ No newline at end of file +#endif // XAODTRACKINGATHENAPOOL_XAODTRACKPARTICLEAUXCONTAINERCNV_V1_H diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.cxx index d89b223aef46a9a7d7d2e12838878be54e6f2b6a..606caf71781529ebfa16a302875c1f692af21474 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.cxx +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -30,14 +30,13 @@ do { \ } while( 0 ) xAODTrackParticleAuxContainerCnv_v2::xAODTrackParticleAuxContainerCnv_v2() - : T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v2 >() { } void xAODTrackParticleAuxContainerCnv_v2:: persToTrans( const xAOD::TrackParticleAuxContainer_v2* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ) { + MsgStream& log ) const { // Greet the user: ATH_MSG( "Converting xAOD::TrackParticleAuxContainer_v2 to current version..." ); @@ -64,7 +63,7 @@ persToTrans( const xAOD::TrackParticleAuxContainer_v2* oldObj, /// void xAODTrackParticleAuxContainerCnv_v2::transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v2*, - MsgStream& log ) { + MsgStream& log ) const { log << MSG::ERROR << "Somebody called xAODTrackParticleAuxContainerCnv_v2::transToPers" diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.h index 412f8d6ea8d6af3e8ce8b907c416528a6b5fa1b2..40cd8f59eed90b081b4ea0380cba47e00e82258c 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.h +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v2.h @@ -1,7 +1,7 @@ // Dear emacs, this is -*- c++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -27,20 +27,24 @@ /// $Date$ /// class xAODTrackParticleAuxContainerCnv_v2 : - public T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v2 > + public T_AthenaPoolTPCnvConstBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v2 > { public: + using base_class::persToTrans; + using base_class::transToPers; + + /// Default constructor xAODTrackParticleAuxContainerCnv_v2(); /// Function converting from the old type to the current one virtual void persToTrans( const xAOD::TrackParticleAuxContainer_v2* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ); + MsgStream& log ) const override; /// Dummy function inherited from the base class virtual void transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v2*, - MsgStream& log ); + MsgStream& log ) const override; }; // class xAODTrackParticleAuxContainerCnv_v2 diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.cxx index e287cead178b9dcf56d5bed98e88010aef7f1acc..c1d7db1fd873e51cc9031add06b54af54b51dd4f 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.cxx +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -30,14 +30,13 @@ do { \ } while( 0 ) xAODTrackParticleAuxContainerCnv_v3::xAODTrackParticleAuxContainerCnv_v3() - : T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v3 >() { } void xAODTrackParticleAuxContainerCnv_v3:: persToTrans( const xAOD::TrackParticleAuxContainer_v3* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ) { + MsgStream& log ) const { // Greet the user: ATH_MSG( "Converting xAOD::TrackParticleAuxContainer_v3 to current version..." ); @@ -64,7 +63,7 @@ persToTrans( const xAOD::TrackParticleAuxContainer_v3* oldObj, /// void xAODTrackParticleAuxContainerCnv_v3::transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v3*, - MsgStream& log ) { + MsgStream& log ) const { log << MSG::ERROR << "Somebody called xAODTrackParticleAuxContainerCnv_v3::transToPers" diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.h index 8eb1e2dc69aab2d331978956befc705d6e89e65b..b4af9c323ecd125685e260f7b9af2dc63a39de58 100644 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.h +++ b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleAuxContainerCnv_v3.h @@ -1,7 +1,7 @@ // Dear emacs, this is -*- c++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ // $Id$ @@ -27,20 +27,24 @@ /// $Date$ /// class xAODTrackParticleAuxContainerCnv_v3 : - public T_AthenaPoolTPCnvBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v3 > + public T_AthenaPoolTPCnvConstBase< xAOD::TrackParticleAuxContainer, xAOD::TrackParticleAuxContainer_v3 > { public: + using base_class::persToTrans; + using base_class::transToPers; + + /// Default constructor xAODTrackParticleAuxContainerCnv_v3(); /// Function converting from the old type to the current one virtual void persToTrans( const xAOD::TrackParticleAuxContainer_v3* oldObj, xAOD::TrackParticleAuxContainer* newObj, - MsgStream& log ); + MsgStream& log ) const override; /// Dummy function inherited from the base class virtual void transToPers( const xAOD::TrackParticleAuxContainer*, xAOD::TrackParticleAuxContainer_v3*, - MsgStream& log ); + MsgStream& log ) const override; }; // class xAODTrackParticleAuxContainerCnv_v3 diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.cxx deleted file mode 100644 index 990df248eb977af325067b89bfc97ff0a29c8923..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.cxx +++ /dev/null @@ -1,82 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODTrackParticleContainerCnv.cxx 702662 2015-10-23 11:31:50Z nstyles $ - -// System include(s): -#include <exception> - -// xAOD include(s): -#include "xAODTracking/VertexContainer.h" -#include "xAODTruth/TruthParticleContainer.h" - -// Local include(s): -#include "xAODTrackParticleContainerCnv.h" - -namespace { - - /// Helper function setting up the container's link to its auxiliary store - void setStoreLink( SG::AuxVectorBase* cont, const std::string& key ) { - - // The link to set up: - DataLink< SG::IConstAuxStore > link( key + "Aux." ); - - // Give it to the container: - cont->setStore( link ); - - return; - } - -} // private namespace - -xAODTrackParticleContainerCnv::xAODTrackParticleContainerCnv( ISvcLocator* svcLoc ) - : xAODTrackParticleContainerCnvBase( svcLoc ) { -} - -xAOD::TrackParticleContainer* -xAODTrackParticleContainerCnv:: -createPersistent( xAOD::TrackParticleContainer* trans ) { - - // Create a view copy of the container: - xAOD::TrackParticleContainer* result = - new xAOD::TrackParticleContainer( trans->begin(), trans->end(), - SG::VIEW_ELEMENTS ); - - // Return the new container: - return result; -} - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODTrackParticleContainerCnv::createObj( IOpaqueAddress* pAddr, - DataObject*& pObj ) { - - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::TrackParticleContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - -xAOD::TrackParticleContainer* xAODTrackParticleContainerCnv::createTransient() { - - // The known ID(s) for this container: - static pool::Guid v1_guid( "F7564EE8-3BD2-11E3-A42F-6C3BE51AB9F1" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::TrackParticleContainer* c = poolReadObject< xAOD::TrackParticleContainer >(); - setStoreLink( c, m_key ); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackParticleContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.h deleted file mode 100644 index 3396a51c6da18c5cfc7bef33a161a044f68296ce..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackParticleContainerCnv.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODTRACKPARTICLECONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODTRACKPARTICLECONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/TrackParticleContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::TrackParticleContainer, - xAOD::TrackParticleContainer > - xAODTrackParticleContainerCnvBase; - -/** - * @short POOL converter for the xAOD::TrackParticleContainer class - * - * Simple converter class making the xAOD::TrackParticleContainer - * class known to POOL. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - * @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - * - */ -class xAODTrackParticleContainerCnv : public xAODTrackParticleContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODTrackParticleContainerCnv >; - -public: - /// Converter constructor - xAODTrackParticleContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ); - - /// Function preparing the container to be written out - virtual xAOD::TrackParticleContainer* createPersistent( xAOD::TrackParticleContainer* trans ); - - /// Function reading in the persistent object - virtual xAOD::TrackParticleContainer* createTransient(); - -private: - - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODTrackParticleContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.cxx deleted file mode 100644 index b0b4499fd49e61b6cbefaed6f8850e7db46c099a..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.cxx +++ /dev/null @@ -1,45 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODTrackStateValidationAuxContainerCnv.cxx $ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODTrackStateValidationAuxContainerCnv.h" -#include "AthContainers/tools/copyThinned.h" -#include "AthenaKernel/IThinningSvc.h" - -xAODTrackStateValidationAuxContainerCnv:: -xAODTrackStateValidationAuxContainerCnv( ISvcLocator* svcLoc ) - : xAODTrackStateValidationAuxContainerCnvBase( svcLoc ) { - -} - -xAOD::TrackStateValidationAuxContainer* -xAODTrackStateValidationAuxContainerCnv:: -createPersistent( xAOD::TrackStateValidationAuxContainer* trans ) { - - // Create a copy of the container: - return SG::copyThinned (*trans, IThinningSvc::instance()); -} - -xAOD::TrackStateValidationAuxContainer* -xAODTrackStateValidationAuxContainerCnv::createTransient() { - - // The known ID(s) for this container: - static const pool::Guid v1_guid( "797432BD-DBEE-4C08-BF8E-E0556434A3F3" ); - - // Check which version of the container we're reading: - if( compareClassGuid( v1_guid ) ) { - // It's the latest version, read it directly: - return poolReadObject< xAOD::TrackStateValidationAuxContainer >(); - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackStateValidationAuxContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.h deleted file mode 100644 index 72f3cf6c744fcd3eafc97db37d2036c55214adb9..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationAuxContainerCnv.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODTrackStateValidationAUXCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODTrackStateValidationAUXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/TrackStateValidationAuxContainer.h" - -/// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::TrackStateValidationAuxContainer, - xAOD::TrackStateValidationAuxContainer > - xAODTrackStateValidationAuxContainerCnvBase; - -/** - * @short POOL converter for the xAOD::TrackStateValidationAuxContainer class - * - * This is the converter doing the actual schema evolution - * of the package... The converter for xAOD::TrackParticleContainer - * doesn't do much, as the "interface classes" don't contain - * too much/any payload. Most of the payload is in the auxiliary - * containers like this one. - * - */ -class xAODTrackStateValidationAuxContainerCnv : - public xAODTrackStateValidationAuxContainerCnvBase { - -public: - /// Converter constructor - xAODTrackStateValidationAuxContainerCnv( ISvcLocator* svcLoc ); - -protected: - /// Function preparing the container to be written out - virtual xAOD::TrackStateValidationAuxContainer* - createPersistent( xAOD::TrackStateValidationAuxContainer* trans ); - /// Function reading in the object from the input file - virtual xAOD::TrackStateValidationAuxContainer* createTransient(); - -}; // class xAODTrackStateValidationAuxContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.cxx deleted file mode 100644 index 45c9ce2538a05208812d985430b74bfc1b50b7fb..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.cxx +++ /dev/null @@ -1,76 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODTrackStateValidationContainerCnv.h" - -namespace { - - /// Helper function setting up the container's link to its auxiliary store - void setStoreLink( SG::AuxVectorBase* cont, const std::string& key ) { - - // The link to set up: - DataLink< SG::IConstAuxStore > link( key + "Aux." ); - - // Give it to the container: - cont->setStore( link ); - - return; - } - -} // private namespace - -xAODTrackStateValidationContainerCnv::xAODTrackStateValidationContainerCnv( ISvcLocator* svcLoc ) - : xAODTrackStateValidationContainerCnvBase( svcLoc ) { -} - -xAOD::TrackStateValidationContainer* -xAODTrackStateValidationContainerCnv:: -createPersistent( xAOD::TrackStateValidationContainer* trans ) { - - // Create a view copy of the container: - xAOD::TrackStateValidationContainer* result = - new xAOD::TrackStateValidationContainer( trans->begin(), trans->end(), - SG::VIEW_ELEMENTS ); - - // Return the new container: - return result; -} - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODTrackStateValidationContainerCnv::createObj( IOpaqueAddress* pAddr, - DataObject*& pObj ) { - - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::TrackStateValidationContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - -xAOD::TrackStateValidationContainer* xAODTrackStateValidationContainerCnv::createTransient() { - - // The known ID(s) for this container: - static pool::Guid v1_guid( "149664B4-C7A7-4373-B5BA-D8D2DB3E65B5" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::TrackStateValidationContainer* c = poolReadObject< xAOD::TrackStateValidationContainer >(); - setStoreLink( c, m_key ); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of " - "xAOD::TrackStateValidationContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.h deleted file mode 100644 index 16dc155305a98893b5c994dc51cade442af3f21b..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODTrackStateValidationContainerCnv.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODMSOSCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODMSOSCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/TrackStateValidationContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::TrackStateValidationContainer, - xAOD::TrackStateValidationContainer > - xAODTrackStateValidationContainerCnvBase; - -/** - * @short POOL converter for the xAOD::TrackStateValidationContainer class - * - * Simple converter class making the xAOD::TrackStateValidationContainer - * class known to POOL. - * - * - */ -class xAODTrackStateValidationContainerCnv : public xAODTrackStateValidationContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODTrackStateValidationContainerCnv >; - -public: - /// Converter constructor - xAODTrackStateValidationContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ); - - /// Function preparing the container to be written out - virtual xAOD::TrackStateValidationContainer* createPersistent( xAOD::TrackStateValidationContainer* trans ); - - /// Function reading in the persistent object - virtual xAOD::TrackStateValidationContainer* createTransient(); - -private: - - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODMSOSContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.cxx deleted file mode 100644 index baa7733d3ef1106a752e3d0c7de5617b754ed450..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.cxx +++ /dev/null @@ -1,62 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODVertexAuxContainerCnv.cxx 652739 2015-03-09 17:09:47Z nstyles $ - -// System include(s): -#include <exception> - -// Local include(s): -#include "xAODVertexAuxContainerCnv.h" -#include "AthContainers/tools/copyThinned.h" -#include "AthenaKernel/IThinningSvc.h" - -xAODVertexAuxContainerCnv:: -xAODVertexAuxContainerCnv( ISvcLocator* svcLoc ) - : xAODVertexAuxContainerCnvBase( svcLoc ) { - -} - -xAOD::VertexAuxContainer* -xAODVertexAuxContainerCnv:: -createPersistent( xAOD::VertexAuxContainer* trans ) { - - // Create a copy of the container: - return SG::copyThinned (*trans, IThinningSvc::instance()); -} - -xAOD::VertexAuxContainer* -xAODVertexAuxContainerCnv::createTransient() { - - // The known ID(s) for this container: - static const pool::Guid v1_guid( "B1F73A82-9B4E-4508-8EB0-EF7D6E05BA57" ); - - // Check which version of the container we're reading: - if( compareClassGuid( v1_guid ) ) { - - - xAOD::VertexAuxContainer_v1* aux = poolReadObject< xAOD::VertexAuxContainer >(); - - if( aux->neutralParticleLinks.size() != aux->size() ) { - - aux->neutralParticleLinks.resize( aux->size() ); - - } - - if( aux->neutralWeights.size() != aux->size() ) { - - aux->neutralWeights.resize( aux->size() ); - - } - - - // It's the latest version, read it directly: - return aux; - } - - // If we didn't recognise the ID: - throw std::runtime_error( "Unsupported version of " - "xAOD::VertexAuxContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.h deleted file mode 100644 index 366ce06e9e14df5044133f09469adc268a35a450..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexAuxContainerCnv.h +++ /dev/null @@ -1,53 +0,0 @@ -// Dear emacs, this is -*- c++ -*- - -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODVertexAuxContainerCnv.h 597069 2014-05-14 16:35:38Z krasznaa $ -#ifndef XAODTRACKPARTICLEATHENAPOOL_XAODVERTEXAUXCONTAINERCNV_H -#define XAODTRACKPARTICLEATHENAPOOL_XAODVERTEXAUXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#define protected public -#define private public -#include "xAODTracking/VertexAuxContainer.h" -#undef private -#undef protected - -/// Base class for the converter -typedef T_AthenaPoolCustomCnv< xAOD::VertexAuxContainer, - xAOD::VertexAuxContainer > - xAODVertexAuxContainerCnvBase; - -/** - * @short POOL converter for the xAOD::VertexAuxContainer class - * - * This is the converter doing the actual schema evolution - * of the package... The converter for xAOD::VertexContainer - * doesn't do much, as the "interface classes" don't contain - * too much/any payload. Most of the payload is in the auxiliary - * containers like this one. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - */ -class xAODVertexAuxContainerCnv : - public xAODVertexAuxContainerCnvBase { - -public: - /// Converter constructor - xAODVertexAuxContainerCnv( ISvcLocator* svcLoc ); - -protected: - /// Function preparing the container to be written out - virtual xAOD::VertexAuxContainer* - createPersistent( xAOD::VertexAuxContainer* trans ); - /// Function reading in the object from the input file - virtual xAOD::VertexAuxContainer* createTransient(); - -}; // class xAODVertexAuxContainerCnv - -#endif diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.cxx b/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.cxx deleted file mode 100644 index 210d16f52333eb71b4ccb157c79aa9b65482acf2..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.cxx +++ /dev/null @@ -1,81 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: xAODVertexContainerCnv.cxx 625403 2014-10-31 13:39:56Z nstyles $ - -// System include(s): -#include <exception> - -// xAOD include(s): -#include "xAODTracking/TrackParticleContainer.h" - -// Local include(s): -#include "xAODVertexContainerCnv.h" - -namespace { - - /// Helper function setting up the container's link to its auxiliary store - void setStoreLink( SG::AuxVectorBase* cont, const std::string& key ) { - - // The link to set up: - DataLink< SG::IConstAuxStore > link( key + "Aux." ); - - // Give it to the container: - cont->setStore( link ); - - return; - } - -} // private namespace - -xAODVertexContainerCnv::xAODVertexContainerCnv( ISvcLocator* svcLoc ) - : xAODVertexContainerCnvBase( svcLoc ) { -} - -xAOD::VertexContainer* -xAODVertexContainerCnv:: -createPersistent( xAOD::VertexContainer* trans ) { - - // Create a view copy of the container: - xAOD::VertexContainer* result = - new xAOD::VertexContainer( trans->begin(), trans->end(), - SG::VIEW_ELEMENTS ); - - // Return the new container: - return result; -} - -/** - * This function needs to be re-implemented in order to figure out the StoreGate - * key of the container that's being created. After that's done, it lets the - * base class do its normal task. - */ -StatusCode xAODVertexContainerCnv::createObj( IOpaqueAddress* pAddr, - DataObject*& pObj ) { - - // Get the key of the container that we'll be creating: - m_key = *( pAddr->par() + 1 ); - ATH_MSG_VERBOSE( "Key of xAOD::VertexContainer: " << m_key ); - - // Let the base class do its thing now: - return AthenaPoolConverter::createObj( pAddr, pObj ); -} - -xAOD::VertexContainer* xAODVertexContainerCnv::createTransient() { - - // The known ID(s) for this container: - static pool::Guid v1_guid( "00B6DBA1-0E0D-4FDA-BFEF-F08EEFFE4BA0" ); - - // Check if we're reading the most up to date type: - if( compareClassGuid( v1_guid ) ) { - xAOD::VertexContainer* c = poolReadObject< xAOD::VertexContainer >(); - setStoreLink( c, m_key ); - return c; - } - - // If we didn't recognise the ID, let's complain: - throw std::runtime_error( "Unsupported version of " - "xAOD::VertexContainer found" ); - return 0; -} diff --git a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.h b/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.h deleted file mode 100644 index eb3fb23036d24f9f3c25160a23d2817364cb18c7..0000000000000000000000000000000000000000 --- a/Event/xAOD/xAODTrackingAthenaPool/src/xAODVertexContainerCnv.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -#ifndef XAODTRACKINGATHENAPOOL_XAODVERTEXCONTAINERCNV_H -#define XAODTRACKINGATHENAPOOL_XAODVERTEXCONTAINERCNV_H - -// Gaudi/Athena include(s): -#include "AthenaPoolCnvSvc/T_AthenaPoolCustomCnv.h" - -// EDM include(s): -#include "xAODTracking/VertexContainer.h" - -/// Type definition for the converter's base -typedef T_AthenaPoolCustomCnv< xAOD::VertexContainer, - xAOD::VertexContainer > - xAODVertexContainerCnvBase; - -/** - * @short POOL converter for the xAOD::VertexContainer class - * - * Simple converter class making the xAOD::VertexContainer - * class known to POOL. - * - * @author Edward Moyse <Edward.Moyse@cern.ch> - */ -class xAODVertexContainerCnv : public xAODVertexContainerCnvBase { - - // Declare the factory as our friend: - friend class CnvFactory< xAODVertexContainerCnv >; - -public: - /// Converter constructor - xAODVertexContainerCnv( ISvcLocator* svcLoc ); - - /// Re-implemented function in order to get access to the SG key - virtual StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& pObj ); - - /// Function preparing the container to be written out - virtual xAOD::VertexContainer* createPersistent( xAOD::VertexContainer* trans ); - - /// Function reading in the persistent object - virtual xAOD::VertexContainer* createTransient(); - -private: - - /// StoreGate key of the container just being created - std::string m_key; - -}; // class xAODVertexContainerCnv - -#endif