diff --git a/DetectorDescription/FaserDetDescr/FaserDetDescr/FaserDetectorIDBase.h b/DetectorDescription/FaserDetDescr/FaserDetDescr/FaserDetectorIDBase.h index 1d24d45fec8c66575e413ffa23ef51a8a5a0d186..a7fdbc623f6c647c7b697233789da5284aa8aeb8 100644 --- a/DetectorDescription/FaserDetDescr/FaserDetDescr/FaserDetectorIDBase.h +++ b/DetectorDescription/FaserDetDescr/FaserDetDescr/FaserDetectorIDBase.h @@ -181,13 +181,13 @@ public: /// @name Checks are performed by default in debug compilation and NOT in optimized compilation. One can switch or query this mode for any idHelper with the following methods: //@{ virtual bool do_checks (void) const; - virtual void set_do_checks (bool do_checks) const; + virtual void set_do_checks (bool do_checks); //@} /// @name neighbours are initialized by default. One can switch or query this mode with the following methods: //@{ virtual bool do_neighbours (void) const; - virtual void set_do_neighbours (bool do_neighbours) const; + virtual void set_do_neighbours (bool do_neighbours); //@} /// @name setting pointer to the MessageService diff --git a/DetectorDescription/FaserDetDescr/src/FaserDetectorIDBase.cxx b/DetectorDescription/FaserDetDescr/src/FaserDetectorIDBase.cxx index ead54e86ac589588cf94ca74c168cf6f8f2b253c..175c704494fd1bf8a6aa637975a9fa6564ac1cce 100644 --- a/DetectorDescription/FaserDetDescr/src/FaserDetectorIDBase.cxx +++ b/DetectorDescription/FaserDetDescr/src/FaserDetectorIDBase.cxx @@ -592,7 +592,7 @@ FaserDetectorIDBase::do_checks (void) const } void -FaserDetectorIDBase::set_do_checks (bool do_checks) const +FaserDetectorIDBase::set_do_checks (bool do_checks) { m_do_checks = do_checks; } @@ -604,7 +604,7 @@ FaserDetectorIDBase::do_neighbours (void) const } void -FaserDetectorIDBase::set_do_neighbours (bool do_neighbours) const +FaserDetectorIDBase::set_do_neighbours (bool do_neighbours) { m_do_neighbours = do_neighbours; } diff --git a/README.md b/README.md index 4e4449afc1ab375bb31403c6c8b5aeff795c14a1..a21a2d0b4831e8bfda57971358e7fe27b223856d 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,18 @@ -First barebone project for Calypso based on Athena 21.0. Only packages necessary to implement the current EDM in xAOD are included. The current build relies on Gaudi and AthenaExternals libraries. This should be okay for FASER, as we don.t want or need to build these two on our own. It currently also uses some of the ATLAS scripts to set environment variables . these can be replaced with either the spelled-out commands or our own scripts in the future. +First barebone project for Calypso based on Athena master. Only packages not included in atlas/athena are included. The current build relies on the entire ATLAS software library. -The following sequence will allow you to compile Calypso 1.0 on any machine with cvmfs access, and the necessary compiler libraries installed. +The following sequence will allow you to compile Calypso 1.0.0 on any machine with cvmfs access. ``` #clone the (forked) project to your local machine git clone https://:@gitlab.cern.ch:8443/username/calypso.git -cd calypso/EDM/ -#The next four lines are used to pick up the latest Gaudi and AthenaExternals libraries, and set the correct compiler +cd calypso/ + +#The next three lines are used to setup the ATLAS release environment export ATLAS_LOCAL_ROOT_BASE=/cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase source ${ATLAS_LOCAL_ROOT_BASE}/user/atlasLocalSetup.sh -asetup AthenaExternals,gcc62,latest,21.0 -source ./calypso/Build/AtlasBuildScripts/TDAQ_RELEASE_BASE.sh +asetup master,latest,Athena + +#create build directory mkdir build cd build #build calypso -cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCTEST_USE_LAUNCHERS=TRUE ../calypso/Projects/Calypso ; make -#run a unittest for xAOD::StripCluster -ctest -V -R xAODTracking_StripCluster_test -``` -If everything worked out, you should see the following printout: -``` -test 176 - Start 176: xAODTracking_xAODTracking_StripCluster_test_ctest - -176: Test command: /home/calypso/EDM/build/xAOD/xAODTracking/CMakeFiles/xAODTracking_StripCluster_test.sh -176: Test timeout computed to be: 120 -176: id = 0 -176: local x = 1, local y = 2, local x error = 0.2, local y error = 0.2, local xy correlation = 0.05 -176: global x = 225, global y = -151.4, global z = 144.4 -176: Dumping StripClusterAuxContainer -176: id:0, localX:1, localY:2, localXError:0.2, localYError:0.2, localXYCorrelation:0.05, globalX:225, globalY:-151.4, globalZ:144.4, -``` +cmake -DCMAKE_INSTALL_PREFIX=../run ../calypso ; make ; make install diff --git a/xAOD/xAODFaserBase/Root/FaserObjectType.cxx b/xAOD/xAODFaserBase/Root/FaserObjectType.cxx index 925d8b1521eb525a67893b4cb1f0cc0ac78a5aad..ba6d15006127f63cbffc1f3cde3c2a7cf2a702e9 100644 --- a/xAOD/xAODFaserBase/Root/FaserObjectType.cxx +++ b/xAOD/xAODFaserBase/Root/FaserObjectType.cxx @@ -32,10 +32,10 @@ std::ostream& operator<< ( std::ostream& out, xAOD::FaserType::ObjectType type ) PRINT_TYPE( xAOD::FaserType::Vertex ); - PRINT_TYPE( xAOD::FaserType::TruthParticle ); - PRINT_TYPE( xAOD::FaserType::TruthVertex ); - PRINT_TYPE( xAOD::FaserType::TruthEvent ); - PRINT_TYPE( xAOD::FaserType::TruthPileupEvent ); + PRINT_TYPE( xAOD::FaserType::FaserTruthParticle ); + PRINT_TYPE( xAOD::FaserType::FaserTruthVertex ); + PRINT_TYPE( xAOD::FaserType::FaserTruthEvent ); + PRINT_TYPE( xAOD::FaserType::FaserTruthPileupEvent ); PRINT_TYPE( xAOD::FaserType::EventInfo ); PRINT_TYPE( xAOD::FaserType::EventFormat ); diff --git a/xAOD/xAODFaserBase/xAODFaserBase/FaserObjectType.h b/xAOD/xAODFaserBase/xAODFaserBase/FaserObjectType.h index bf2abc663932f0fbc9c20d7f309bf3f91fa25d32..dbb5c696b0edb362c48aeb57c15233914a973c97 100644 --- a/xAOD/xAODFaserBase/xAODFaserBase/FaserObjectType.h +++ b/xAOD/xAODFaserBase/xAODFaserBase/FaserObjectType.h @@ -61,10 +61,10 @@ namespace xAOD { // Truth types // { - TruthParticle = 201, ///< The object is a truth particle - TruthVertex = 202, ///< The object is a truth vertex - TruthEvent = 203, ///< The object is a truth event - TruthPileupEvent = 204, ///< The object is a truth pileup event + FaserTruthParticle = 201, ///< The object is a truth particle + FaserTruthVertex = 202, ///< The object is a truth vertex + FaserTruthEvent = 203, ///< The object is a truth event + FaserTruthPileupEvent = 204, ///< The object is a truth pileup event // } diff --git a/xAOD/xAODFaserTruth/CMakeLists.txt b/xAOD/xAODFaserTruth/CMakeLists.txt index 4d63992e69e11bb11f78d216565560daf12c584a..c13ee74381c3ca7b950f88cb35f22510aed77fde 100644 --- a/xAOD/xAODFaserTruth/CMakeLists.txt +++ b/xAOD/xAODFaserTruth/CMakeLists.txt @@ -1,10 +1,10 @@ # $Id: CMakeLists.txt 761796 2016-07-14 08:06:02Z krasznaa $ ################################################################################ -# Package: xAODTruth +# Package: xAODFaserTruth ################################################################################ # Declare the package name: -atlas_subdir( xAODTruth ) +atlas_subdir( xAODFaserTruth ) # Declare the package's dependencies: atlas_depends_on_subdirs( @@ -12,26 +12,27 @@ atlas_depends_on_subdirs( Control/AthContainers Control/AthLinks Event/xAOD/xAODBase + Event/xAOD/xAODFaserBase Event/xAOD/xAODCore PRIVATE Generators/TruthUtils ) # Component(s) in the package: -atlas_add_library( xAODTruth - xAODTruth/*.h xAODTruth/versions/*.h Root/*.h Root/*.cxx - PUBLIC_HEADERS xAODTruth - LINK_LIBRARIES AthContainers AthLinks xAODBase xAODCore +atlas_add_library( xAODFaserTruth + xAODFaserTruth/*.h xAODFaserTruth/versions/*.h Root/*.h Root/*.cxx + PUBLIC_HEADERS xAODFaserTruth + LINK_LIBRARIES AthContainers AthLinks xAODBase xAODFaserBase xAODCore PRIVATE_LINK_LIBRARIES TruthUtils ) -atlas_add_dictionary( xAODTruthDict - xAODTruth/xAODTruthDict.h - xAODTruth/selection.xml - LINK_LIBRARIES xAODTruth +atlas_add_dictionary( xAODFaserTruthDict + xAODFaserTruth/xAODFaserTruthDict.h + xAODFaserTruth/selection.xml + LINK_LIBRARIES xAODFaserTruth EXTRA_FILES Root/dict/*.cxx ) -atlas_generate_cliddb( xAODTruth ) +atlas_generate_cliddb( xAODFaserTruth ) # Test(s) in the package: -atlas_add_test( ut_xaodtruth_particle_test - SOURCES test/ut_xaodtruth_particle_test.cxx - LINK_LIBRARIES xAODTruth ) +atlas_add_test( ut_xaodfasertruth_particle_test + SOURCES test/ut_xaodfasertruth_particle_test.cxx + LINK_LIBRARIES xAODFaserTruth ) diff --git a/xAOD/xAODFaserTruth/Root/TruthAccessors.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthAccessors.cxx similarity index 60% rename from xAOD/xAODFaserTruth/Root/TruthAccessors.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthAccessors.cxx index 0e8785e95a82cee519859354cc77bde790d61130..856c450b8ed97c0001517dd125cac986f52e8fc5 100644 --- a/xAOD/xAODFaserTruth/Root/TruthAccessors.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthAccessors.cxx @@ -2,7 +2,7 @@ #include <iostream> // Local include(s): -#include "TruthAccessors.h" +#include "FaserTruthAccessors.h" /// Helper macro for managing cluster moment Accessor objects #define DEFINE_ACCESSOR( PARENT, TYPE, NAME ) \ @@ -16,12 +16,12 @@ namespace xAOD { SG::AuxElement::Accessor< float >* - polarizationAccessor( TruthParticle::PolParam type ) { + polarizationAccessor( FaserTruthParticle::PolParam type ) { switch( type ) { - DEFINE_ACCESSOR( TruthParticle, float, polarizationTheta ); - DEFINE_ACCESSOR( TruthParticle, float, polarizationPhi ); + DEFINE_ACCESSOR( FaserTruthParticle, float, polarizationTheta ); + DEFINE_ACCESSOR( FaserTruthParticle, float, polarizationPhi ); default: std::cerr << "xAOD::polarizationAccessor ERROR Unknown PolParam (" @@ -33,14 +33,14 @@ namespace xAOD { } SG::AuxElement::Accessor< int >* - pdfInfoAccessorInt( TruthEvent::PdfParam type ) { + pdfInfoAccessorInt( FaserTruthEvent::PdfParam type ) { switch( type ) { - DEFINE_ACCESSOR( TruthEvent, int, PDGID1 ); - DEFINE_ACCESSOR( TruthEvent, int, PDGID2 ); - DEFINE_ACCESSOR( TruthEvent, int, PDFID1 ); - DEFINE_ACCESSOR( TruthEvent, int, PDFID2 ); + DEFINE_ACCESSOR( FaserTruthEvent, int, PDGID1 ); + DEFINE_ACCESSOR( FaserTruthEvent, int, PDGID2 ); + DEFINE_ACCESSOR( FaserTruthEvent, int, PDFID1 ); + DEFINE_ACCESSOR( FaserTruthEvent, int, PDFID2 ); default: std::cerr << "xAOD::pdfInfoAccessorInt ERROR Unknown PdfParam (" @@ -52,15 +52,15 @@ namespace xAOD { } SG::AuxElement::Accessor< float >* - pdfInfoAccessorFloat( TruthEvent::PdfParam type ) { + pdfInfoAccessorFloat( FaserTruthEvent::PdfParam type ) { switch( type ) { - DEFINE_ACCESSOR( TruthEvent, float, X1 ); - DEFINE_ACCESSOR( TruthEvent, float, X2 ); - DEFINE_ACCESSOR( TruthEvent, float, Q ); - DEFINE_ACCESSOR( TruthEvent, float, XF1 ); - DEFINE_ACCESSOR( TruthEvent, float, XF2 ); + DEFINE_ACCESSOR( FaserTruthEvent, float, X1 ); + DEFINE_ACCESSOR( FaserTruthEvent, float, X2 ); + DEFINE_ACCESSOR( FaserTruthEvent, float, Q ); + DEFINE_ACCESSOR( FaserTruthEvent, float, XF1 ); + DEFINE_ACCESSOR( FaserTruthEvent, float, XF2 ); default: std::cerr << "xAOD::pdfInfoAccessorFloat ERROR Unknown ParamDef (" diff --git a/xAOD/xAODFaserTruth/Root/TruthAccessors.h b/xAOD/xAODFaserTruth/Root/FaserTruthAccessors.h similarity index 68% rename from xAOD/xAODFaserTruth/Root/TruthAccessors.h rename to xAOD/xAODFaserTruth/Root/FaserTruthAccessors.h index 704ad790ae8d6a1d13ba3d420707678c794b463c..72d13bb048988f8dfe5496b0036e214d4c2c7da5 100644 --- a/xAOD/xAODFaserTruth/Root/TruthAccessors.h +++ b/xAOD/xAODFaserTruth/Root/FaserTruthAccessors.h @@ -12,24 +12,24 @@ #include "AthContainers/AuxElement.h" // Local include(s): -#include "xAODTruth/TruthEvent.h" -#include "xAODTruth/TruthParticle.h" +#include "xAODFaserTruth/FaserTruthEvent.h" +#include "xAODFaserTruth/FaserTruthParticle.h" namespace xAOD { /// This function holds on to Accessor objects that can be used by each - /// TruthParticle object at runtime to get/set parameter values on + /// FaserTruthParticle object at runtime to get/set parameter values on /// themselves. SG::AuxElement::Accessor< float >* - polarizationAccessor( TruthParticle::PolParam type ); + polarizationAccessor( FaserTruthParticle::PolParam type ); /// Helper function for getting accessors for integer type PDF information SG::AuxElement::Accessor< int >* - pdfInfoAccessorInt( TruthEvent::PdfParam type ); + pdfInfoAccessorInt( FaserTruthEvent::PdfParam type ); /// Helper function for getting accessors for floating point PDF information SG::AuxElement::Accessor< float >* - pdfInfoAccessorFloat( TruthEvent::PdfParam type ); + pdfInfoAccessorFloat( FaserTruthEvent::PdfParam type ); } // namespace xAOD diff --git a/xAOD/xAODFaserTruth/Root/TruthEvent.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthEvent.cxx similarity index 67% rename from xAOD/xAODFaserTruth/Root/TruthEvent.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthEvent.cxx index aa83accfca23d73aca89821b3b3503438b5d2ba8..512474bbec74ea5b87bc765f838b8f0e3bad29c4 100644 --- a/xAOD/xAODFaserTruth/Root/TruthEvent.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthEvent.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: TruthEvent.cxx 761798 2016-07-14 08:15:01Z krasznaa $ +// $Id: FaserTruthEvent.cxx 761798 2016-07-14 08:15:01Z krasznaa $ // System include(s): #include <cmath> @@ -11,13 +11,13 @@ #include "xAODCore/AuxStoreAccessorMacros.h" // Local include(s): -#include "xAODTruth/TruthEvent.h" -#include "TruthAccessors.h" +#include "xAODFaserTruth/FaserTruthEvent.h" +#include "FaserTruthAccessors.h" namespace xAOD { - TruthEvent::TruthEvent() + FaserTruthEvent::FaserTruthEvent() : SG::AuxElement() { } @@ -25,16 +25,16 @@ namespace xAOD { ///////////////////////////////////////////////////////////////////////////// // Implementation of the truth particle accessor functions - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthEvent, - TruthEvent::TruthParticleLinks_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthEvent, + FaserTruthEvent::FaserTruthParticleLinks_t, truthParticleLinks, - setTruthParticleLinks ) + setFaserTruthParticleLinks ) /// Accessor for the truth particles - static SG::AuxElement::Accessor< TruthEvent::TruthParticleLinks_t > + static SG::AuxElement::Accessor< FaserTruthEvent::FaserTruthParticleLinks_t > truthParticleLinksAcc( "truthParticleLinks" ); - size_t TruthEvent::nTruthParticles() const { + size_t FaserTruthEvent::nFaserTruthParticles() const { // If the variable is not available, we don't have any truth particles // associated... @@ -46,13 +46,13 @@ namespace xAOD { return truthParticleLinksAcc( *this ).size(); } - const TruthEvent::TruthParticleLink_t& - TruthEvent::truthParticleLink( size_t index ) const { + const FaserTruthEvent::FaserTruthParticleLink_t& + FaserTruthEvent::truthParticleLink( size_t index ) const { return truthParticleLinksAcc( *this ).at( index ); } - const TruthParticle* TruthEvent::truthParticle( size_t index ) const { + const FaserTruthParticle* FaserTruthEvent::truthParticle( size_t index ) const { // Check if the variable is available: if( ! truthParticleLinksAcc.isAvailable( *this ) ) { @@ -60,7 +60,7 @@ namespace xAOD { } // Check if the link is valid: - const TruthParticleLinks_t& links = truthParticleLinksAcc( *this ); + const FaserTruthParticleLinks_t& links = truthParticleLinksAcc( *this ); if( ! links[ index ].isValid() ) { return 0; } @@ -70,13 +70,13 @@ namespace xAOD { } void - TruthEvent::addTruthParticleLink( const TruthParticleLink_t& link ) { + FaserTruthEvent::addFaserTruthParticleLink( const FaserTruthParticleLink_t& link ) { truthParticleLinksAcc( *this ).push_back( link ); return; } - void TruthEvent::clearTruthParticleLinks() { + void FaserTruthEvent::clearFaserTruthParticleLinks() { truthParticleLinksAcc( *this ).clear(); return; @@ -87,16 +87,16 @@ namespace xAOD { ///////////////////////////////////////////////////////////////////////////// // Implementation of the truth vertex accessor functions - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthEvent, - TruthEvent::TruthVertexLinks_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthEvent, + FaserTruthEvent::FaserTruthVertexLinks_t, truthVertexLinks, - setTruthVertexLinks ) + setFaserTruthVertexLinks ) /// Accessor for the truth vertices - static SG::AuxElement::Accessor< TruthEvent::TruthVertexLinks_t > + static SG::AuxElement::Accessor< FaserTruthEvent::FaserTruthVertexLinks_t > truthVertexLinksAcc( "truthVertexLinks" ); - size_t TruthEvent::nTruthVertices() const { + size_t FaserTruthEvent::nTruthVertices() const { // If the variable is not available, we don't have any truth particles // associated... @@ -108,13 +108,13 @@ namespace xAOD { return truthVertexLinksAcc( *this ).size(); } - const TruthEvent::TruthVertexLink_t& - TruthEvent::truthVertexLink( size_t index ) const { + const FaserTruthEvent::FaserTruthVertexLink_t& + FaserTruthEvent::truthVertexLink( size_t index ) const { return truthVertexLinksAcc( *this ).at(index); } - const TruthVertex* TruthEvent::truthVertex( size_t index ) const { + const FaserTruthVertex* FaserTruthEvent::truthVertex( size_t index ) const { // Check if the variable is available: if( ! truthVertexLinksAcc.isAvailable( *this ) ) { @@ -122,7 +122,7 @@ namespace xAOD { } // Check if the link is valid: - const TruthVertexLinks_t& links = truthVertexLinksAcc( *this ); + const FaserTruthVertexLinks_t& links = truthVertexLinksAcc( *this ); if( ! links[ index ].isValid() ) { return 0; } @@ -131,13 +131,13 @@ namespace xAOD { return *( links[ index ] ); } - void TruthEvent::addTruthVertexLink( const TruthVertexLink_t& link ) { + void FaserTruthEvent::addFaserTruthVertexLink( const FaserTruthVertexLink_t& link ) { truthVertexLinksAcc( *this ).push_back( link ); return; } - void TruthEvent::clearTruthVertexLinks() { + void FaserTruthEvent::clearFaserTruthVertexLinks() { truthVertexLinksAcc( *this ).clear(); return; @@ -149,16 +149,16 @@ namespace xAOD { /// @todo Need upgrade to allow string-valued map-like access... or access a /// corresponding vector of names - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthEvent, std::vector< float >, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthEvent, std::vector< float >, weights, setWeights ) - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthEvent, float, crossSection, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthEvent, float, crossSection, setCrossSection ) - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthEvent, float, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthEvent, float, crossSectionError, setCrossSectionError ) - void TruthEvent::setCrossSection( float value, float error ) { + void FaserTruthEvent::setCrossSection( float value, float error ) { setCrossSection( value ); setCrossSectionError( error ); @@ -170,7 +170,7 @@ namespace xAOD { ///////////////////////////////////////////////////////////////////////////// // Optional PDF info accessors - bool TruthEvent::pdfInfoParameter( int& value, + bool FaserTruthEvent::pdfInfoParameter( int& value, PdfParam information ) const { // Look for the accessor object: @@ -182,7 +182,7 @@ namespace xAOD { return true; } - bool TruthEvent::pdfInfoParameter( float& value, + bool FaserTruthEvent::pdfInfoParameter( float& value, PdfParam information ) const { // Look for the accessor object: @@ -194,7 +194,7 @@ namespace xAOD { return true; } - bool TruthEvent::setPdfInfoParameter( int value, + bool FaserTruthEvent::setPdfInfoParameter( int value, PdfParam information ) { // Look for the accessor object: @@ -206,7 +206,7 @@ namespace xAOD { return true; } - bool TruthEvent::setPdfInfoParameter( float value, + bool FaserTruthEvent::setPdfInfoParameter( float value, PdfParam information ) { // Look for the accessor object: @@ -218,13 +218,13 @@ namespace xAOD { return true; } - TruthEvent::PdfInfo::PdfInfo() + FaserTruthEvent::PdfInfo::PdfInfo() : pdgId1( 0 ), pdgId2( 0 ), pdfId1( -1 ), pdfId2( -1 ), x1( NAN ), x2( NAN ), Q( NAN ), xf1( NAN ), xf2( NAN ) { } - bool TruthEvent::PdfInfo::valid() const { + bool FaserTruthEvent::PdfInfo::valid() const { return ( ( pdgId1 != 0 ) && ( pdgId2 != 0 ) && ( pdfId1 >= 0 ) && ( pdfId2 >= 0 ) && @@ -233,7 +233,7 @@ namespace xAOD { ( ! std::isnan( xf1 ) ) && ( ! std::isnan( xf2 ) ) ); } - TruthEvent::PdfInfo TruthEvent::pdfInfo() const { + FaserTruthEvent::PdfInfo FaserTruthEvent::pdfInfo() const { // The result object: PdfInfo rtn; @@ -258,10 +258,10 @@ namespace xAOD { // Implementation for the links to truth particles/vertices // Accessor for the signal vertex - static SG::AuxElement::Accessor< TruthEvent::TruthVertexLink_t > + static SG::AuxElement::Accessor< FaserTruthEvent::FaserTruthVertexLink_t > signalProcessVertexLinkAcc( "signalProcessVertexLink" ); - const TruthVertex* TruthEvent::signalProcessVertex() const { + const FaserTruthVertex* FaserTruthEvent::signalProcessVertex() const { // Check if the link variable is available: if( ! signalProcessVertexLinkAcc.isAvailable( *this ) ) { @@ -269,7 +269,7 @@ namespace xAOD { } // Get the link: - const TruthVertexLink_t& vertLink = signalProcessVertexLinkAcc( *this ); + const FaserTruthVertexLink_t& vertLink = signalProcessVertexLinkAcc( *this ); // Check if it's valid: if( ! vertLink.isValid() ) { @@ -280,31 +280,36 @@ namespace xAOD { return *vertLink; } - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthEvent, - TruthEvent::TruthVertexLink_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthEvent, + FaserTruthEvent::FaserTruthVertexLink_t, signalProcessVertexLink, setSignalProcessVertexLink ) // Accessors for the beam particles - static SG::AuxElement::Accessor< TruthEvent::TruthParticleLink_t > + static SG::AuxElement::Accessor< FaserTruthEvent::FaserTruthParticleLink_t > primaryParticleLinkLinkAcc( "primaryParticleLink" ); - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthEvent, - TruthEvent::TruthParticleLink_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthEvent, + FaserTruthEvent::FaserTruthParticleLink_t, primaryParticleLink, setPrimaryParticleLink ) ///////////////////////////////////////////////////////////////////////////// - Type::ObjectType TruthEvent::type() const { + FaserType::ObjectType FaserTruthEvent::faserType() const { - return Type::TruthEvent; + return FaserType::FaserTruthEvent; } - AUXSTORE_OBJECT_SETTER_AND_GETTER(TruthEvent, std::vector < std::string >, weightNames, setWeightNames ) - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(TruthEvent, uint32_t, mcChannelNumber, setMcChannelNumber ) + Type::ObjectType FaserTruthEvent::type() const { - void TruthEvent::toPersistent() { + return Type::Other; + } + + AUXSTORE_OBJECT_SETTER_AND_GETTER(FaserTruthEvent, std::vector < std::string >, weightNames, setWeightNames ) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(FaserTruthEvent, uint32_t, mcChannelNumber, setMcChannelNumber ) + + void FaserTruthEvent::toPersistent() { if( primaryParticleLinkLinkAcc.isAvailableWritable( *this ) ) { primaryParticleLinkLinkAcc( *this ).toPersistent(); @@ -316,9 +321,9 @@ namespace xAOD { // Prepare the truth particle links for writing: if( truthParticleLinksAcc.isAvailableWritable( *this ) ) { - TruthParticleLinks_t::iterator itr = + FaserTruthParticleLinks_t::iterator itr = truthParticleLinksAcc( *this ).begin(); - TruthParticleLinks_t::iterator end = + FaserTruthParticleLinks_t::iterator end = truthParticleLinksAcc( *this ).end(); for( ; itr != end; ++itr ) { itr->toPersistent(); @@ -327,9 +332,9 @@ namespace xAOD { // Prepare the truth vertex links for writing: if( truthVertexLinksAcc.isAvailableWritable( *this ) ) { - TruthVertexLinks_t::iterator itr = + FaserTruthVertexLinks_t::iterator itr = truthVertexLinksAcc( *this ).begin(); - TruthVertexLinks_t::iterator end = + FaserTruthVertexLinks_t::iterator end = truthVertexLinksAcc( *this ).end(); for( ; itr != end; ++itr ) { itr->toPersistent(); diff --git a/xAOD/xAODFaserTruth/Root/TruthEventAuxContainer.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthEventAuxContainer.cxx similarity index 77% rename from xAOD/xAODFaserTruth/Root/TruthEventAuxContainer.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthEventAuxContainer.cxx index 52bfe7e6cccee143a9a7b3b4825f48f2b7d4cf88..8beb4fa0623576b9548524fab860bf433e8d9d52 100644 --- a/xAOD/xAODFaserTruth/Root/TruthEventAuxContainer.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthEventAuxContainer.cxx @@ -1,9 +1,9 @@ // Local include(s): -#include "xAODTruth/TruthEventAuxContainer.h" +#include "xAODFaserTruth/FaserTruthEventAuxContainer.h" namespace xAOD { - TruthEventAuxContainer::TruthEventAuxContainer() + FaserTruthEventAuxContainer::FaserTruthEventAuxContainer() : AuxContainerBase() { AUX_VARIABLE( signalProcessVertexLink ); diff --git a/xAOD/xAODFaserTruth/Root/TruthParticle.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthParticle.cxx similarity index 71% rename from xAOD/xAODFaserTruth/Root/TruthParticle.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthParticle.cxx index 39142e928fc06561e65286ab96b65aa227cd5788..4f1fd7d79bd7d7621efa8c7fbb5641933d3b6de5 100644 --- a/xAOD/xAODFaserTruth/Root/TruthParticle.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthParticle.cxx @@ -4,7 +4,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: TruthParticle.cxx 690336 2015-08-20 10:54:57Z abuckley $ +// $Id: FaserTruthParticle.cxx 690336 2015-08-20 10:54:57Z abuckley $ // System include(s): #include <cmath> @@ -18,14 +18,14 @@ #include "xAODCore/AuxStoreAccessorMacros.h" // Local include(s): -#include "xAODTruth/TruthParticle.h" -#include "xAODTruth/TruthVertexContainer.h" -#include "TruthAccessors.h" +#include "xAODFaserTruth/FaserTruthParticle.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" +#include "FaserTruthAccessors.h" namespace xAOD { - TruthParticle::TruthParticle() - : IParticle(), m_p4(), m_p4Cached( false ) { + FaserTruthParticle::FaserTruthParticle() + : IParticle() { } @@ -34,17 +34,17 @@ namespace xAOD { // Implementation for functions identifying the particle in the MC record // - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthParticle, int, pdgId, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthParticle, int, pdgId, setPdgId ) - int TruthParticle::absPdgId() const { + int FaserTruthParticle::absPdgId() const { return std::abs( pdgId() ); } - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthParticle, int, barcode, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthParticle, int, barcode, setBarcode ) - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthParticle, int, status, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthParticle, int, status, setStatus ) // @@ -56,40 +56,40 @@ namespace xAOD { // /// Accessor for the production vertex - static SG::AuxElement::Accessor< ElementLink< TruthVertexContainer > > + static SG::AuxElement::Accessor< ElementLink< FaserTruthVertexContainer > > prodVtxLinkAcc( "prodVtxLink" ); /// Accessor for the decay vertex - static SG::AuxElement::Accessor< ElementLink< TruthVertexContainer > > + static SG::AuxElement::Accessor< ElementLink< FaserTruthVertexContainer > > decayVtxLinkAcc( "decayVtxLink" ); - bool TruthParticle::hasProdVtx() const { + bool FaserTruthParticle::hasProdVtx() const { return ( prodVtxLinkAcc.isAvailable( *this ) && prodVtxLinkAcc( *this ).isValid() ); } - const TruthVertex* TruthParticle::prodVtx() const { + const FaserTruthVertex* FaserTruthParticle::prodVtx() const { return hasProdVtx() ? *prodVtxLink() : 0; } - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthParticle, - ElementLink< TruthVertexContainer >, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthParticle, + ElementLink< FaserTruthVertexContainer >, prodVtxLink, setProdVtxLink ) - bool TruthParticle::hasDecayVtx() const { + bool FaserTruthParticle::hasDecayVtx() const { return ( decayVtxLinkAcc.isAvailable( *this ) && decayVtxLinkAcc( *this ).isValid() ); } - const TruthVertex* TruthParticle::decayVtx() const { + const FaserTruthVertex* FaserTruthParticle::decayVtx() const { return hasDecayVtx() ? *decayVtxLink() : 0; } - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthParticle, - ElementLink< TruthVertexContainer >, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthParticle, + ElementLink< FaserTruthVertexContainer >, decayVtxLink, setDecayVtxLink ) // @@ -100,22 +100,22 @@ namespace xAOD { // Direct access to parents and children // - size_t TruthParticle::nParents() const { + size_t FaserTruthParticle::nParents() const { return hasProdVtx() ? prodVtx()->nIncomingParticles() : 0; } - const TruthParticle* TruthParticle::parent( size_t i ) const { + const FaserTruthParticle* FaserTruthParticle::parent( size_t i ) const { return hasProdVtx() ? prodVtx()->incomingParticle( i ) : 0; } - size_t TruthParticle::nChildren() const { + size_t FaserTruthParticle::nChildren() const { return hasDecayVtx() ? decayVtx()->nOutgoingParticles() : 0; } - const TruthParticle* TruthParticle::child( size_t i ) const { + const FaserTruthParticle* FaserTruthParticle::child( size_t i ) const { return hasDecayVtx() ? decayVtx()->outgoingParticle( i ) : 0; } @@ -128,7 +128,7 @@ namespace xAOD { // Implementation of the IParticle interface // - double TruthParticle::pt() const { + double FaserTruthParticle::pt() const { // Do the calculation by hand: const double localPx = static_cast< double >( px() ); @@ -136,42 +136,40 @@ namespace xAOD { return std::sqrt( localPx * localPx + localPy * localPy ); } - double TruthParticle::eta() const { + double FaserTruthParticle::eta() const { // Calculate the pseudo-rapidity using TLorentzVector. // Could do something more lightweight later on. return p4().Eta(); } - double TruthParticle::phi() const { + double FaserTruthParticle::phi() const { // Calculate the azimuth angle using TLorentzVector. // Could do something more lightweight later on. return p4().Phi(); } - AUXSTORE_PRIMITIVE_GETTER_WITH_CAST( TruthParticle, float, double, m ) - AUXSTORE_PRIMITIVE_GETTER_WITH_CAST( TruthParticle, float, double, e ) + AUXSTORE_PRIMITIVE_GETTER_WITH_CAST( FaserTruthParticle, float, double, m ) + AUXSTORE_PRIMITIVE_GETTER_WITH_CAST( FaserTruthParticle, float, double, e ) - double TruthParticle::rapidity() const { + double FaserTruthParticle::rapidity() const { return p4().Rapidity(); } - const TruthParticle::FourMom_t& TruthParticle::p4() const { + FaserTruthParticle::FourMom_t FaserTruthParticle::p4() const { + return FourMom_t(px(), py(), pz(), e() ); + } - // Cache the 4-momentum if it's not already: - if( ! m_p4Cached ) { - m_p4.SetPxPyPzE( px(), py(), pz(), e() ); - m_p4Cached = true; - } + FaserType::ObjectType FaserTruthParticle::faserType() const { - return m_p4; + return FaserType::FaserTruthParticle; } + + Type::ObjectType FaserTruthParticle::type() const { - Type::ObjectType TruthParticle::type() const { - - return Type::TruthParticle; + return Type::Other; } // @@ -182,51 +180,47 @@ namespace xAOD { // Implementation of the truth particle specific 4-momentum functions // - double TruthParticle::abseta() const { + double FaserTruthParticle::abseta() const { return std::abs( eta() ); } - double TruthParticle::absrapidity() const { + double FaserTruthParticle::absrapidity() const { return std::abs( rapidity() ); } - AUXSTORE_PRIMITIVE_GETTER( TruthParticle, float, px ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthParticle, float, px ) - void TruthParticle::setPx( float value ) { + void FaserTruthParticle::setPx( float value ) { static Accessor< float > acc( "px" ); - m_p4Cached = false; acc( *this ) = value; return; } - AUXSTORE_PRIMITIVE_GETTER( TruthParticle, float, py ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthParticle, float, py ) - void TruthParticle::setPy( float value ) { + void FaserTruthParticle::setPy( float value ) { static Accessor< float > acc( "py" ); - m_p4Cached = false; acc( *this ) = value; return; } - AUXSTORE_PRIMITIVE_GETTER( TruthParticle, float, pz ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthParticle, float, pz ) - void TruthParticle::setPz( float value ) { + void FaserTruthParticle::setPz( float value ) { static Accessor< float > acc( "pz" ); - m_p4Cached = false; acc( *this ) = value; return; } - void TruthParticle::setE( float value ) { + void FaserTruthParticle::setE( float value ) { static Accessor< float > acc( "e" ); - m_p4Cached = false; acc( *this ) = value; return; } - void TruthParticle::setM( float value ) { + void FaserTruthParticle::setM( float value ) { static Accessor< float > acc( "m" ); // note: this does not invalidate the cache acc( *this ) = value; @@ -243,7 +237,7 @@ namespace xAOD { /// Helper macro to implement the functions that rely in functions from MC::PID #define MC_PID_HELPER( TYPE, FNAME ) \ - TYPE TruthParticle::FNAME() const { \ + TYPE FaserTruthParticle::FNAME() const { \ return MC::PID::FNAME( pdgId() ); \ } @@ -309,14 +303,14 @@ namespace xAOD { // Implementation of the optional polarization accessors // - bool TruthParticle::polarizationParameter( float& value, + bool FaserTruthParticle::polarizationParameter( float& value, PolParam param ) const { // Get the accessor object: Accessor< float >* acc = polarizationAccessor( param ); if( ! acc ) { // The user asked for a non-existent parameter type. o.O - std::cerr << "xAOD::TruthParticle::polarizationParameter ERROR " + std::cerr << "xAOD::FaserTruthParticle::polarizationParameter ERROR " << "Request for an unknown (" << param << ") polarization " << "parameter type" << std::endl; return false; @@ -332,14 +326,14 @@ namespace xAOD { return true; } - bool TruthParticle::setPolarizationParameter( float value, + bool FaserTruthParticle::setPolarizationParameter( float value, PolParam param ) { // Get the accessor object: Accessor< float >* acc = polarizationAccessor( param ); if( ! acc ) { // The user asked for a non-existent parameter type. o.O - std::cerr << "xAOD::TruthParticle::setPolarizationParameter ERROR " + std::cerr << "xAOD::FaserTruthParticle::setPolarizationParameter ERROR " << "Request for an unknown (" << param << ") polarization " << "parameter type" << std::endl; return false; @@ -350,7 +344,7 @@ namespace xAOD { return true; } - float TruthParticle::polarizationPatameter( PolParam param ) const { + float FaserTruthParticle::polarizationPatameter( PolParam param ) const { // Get the accessor object: Accessor< float >* acc = polarizationAccessor( param ); @@ -364,7 +358,7 @@ namespace xAOD { return ( *acc )( *this ); } - TruthParticle::Polarization TruthParticle::polarization() const { + FaserTruthParticle::Polarization FaserTruthParticle::polarization() const { // Construct the object: Polarization rtn; @@ -377,7 +371,7 @@ namespace xAOD { // ///////////////////////////////////////////////////////////////////////////// - void TruthParticle::toPersistent() { + void FaserTruthParticle::toPersistent() { if( prodVtxLinkAcc.isAvailableWritable( *this ) ) { prodVtxLinkAcc( *this ).toPersistent(); diff --git a/xAOD/xAODFaserTruth/Root/TruthParticleAuxContainer.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthParticleAuxContainer.cxx similarity index 75% rename from xAOD/xAODFaserTruth/Root/TruthParticleAuxContainer.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthParticleAuxContainer.cxx index 8a4fede3de464d9cb78628e8a34ab25b98ff82fe..d117a6d3ac1fe158e2fb9d734ec224ea0a468d2c 100644 --- a/xAOD/xAODFaserTruth/Root/TruthParticleAuxContainer.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthParticleAuxContainer.cxx @@ -1,9 +1,9 @@ // Local include(s): -#include "xAODTruth/TruthParticleAuxContainer.h" +#include "xAODFaserTruth/FaserTruthParticleAuxContainer.h" namespace xAOD { - TruthParticleAuxContainer::TruthParticleAuxContainer() + FaserTruthParticleAuxContainer::FaserTruthParticleAuxContainer() : AuxContainerBase() { AUX_VARIABLE( pdgId ); diff --git a/xAOD/xAODFaserTruth/Root/TruthVertex.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthVertex.cxx similarity index 72% rename from xAOD/xAODFaserTruth/Root/TruthVertex.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthVertex.cxx index fcc606097f29f9caae6a664be94ec454b7d59710..f4b0df46491d4b568cf6ef1503add64be499e646 100644 --- a/xAOD/xAODFaserTruth/Root/TruthVertex.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthVertex.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: TruthVertex.cxx 624338 2014-10-27 15:08:55Z krasznaa $ +// $Id: FaserTruthVertex.cxx 624338 2014-10-27 15:08:55Z krasznaa $ // System include(s): #include <cmath> @@ -11,12 +11,12 @@ #include "xAODCore/AuxStoreAccessorMacros.h" // Local include(s): -#include "xAODTruth/TruthVertex.h" -#include "xAODTruth/TruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthVertex.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" namespace xAOD { - TruthVertex::TruthVertex() + FaserTruthVertex::FaserTruthVertex() : SG::AuxElement(), m_v4(), m_v4Cached( false ) { } @@ -26,8 +26,8 @@ namespace xAOD { // Implementation for the "MC specific" functions // - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthVertex, int, id, setId ) - AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( TruthVertex, int, barcode, + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthVertex, int, id, setId ) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( FaserTruthVertex, int, barcode, setBarcode ) // @@ -38,15 +38,15 @@ namespace xAOD { // Implementation for the links to the truth particles // - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthVertex, TruthVertex::TPLinks_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthVertex, FaserTruthVertex::TPLinks_t, incomingParticleLinks, setIncomingParticleLinks ) /// Accessor for the incoming particles - static SG::AuxElement::Accessor< TruthVertex::TPLinks_t > + static SG::AuxElement::Accessor< FaserTruthVertex::TPLinks_t > incomingParticleLinksAcc( "incomingParticleLinks" ); - size_t TruthVertex::nIncomingParticles() const { + size_t FaserTruthVertex::nIncomingParticles() const { // Check if the variable is available: if( ! incomingParticleLinksAcc.isAvailable( *this ) ) { @@ -58,7 +58,7 @@ namespace xAOD { return incomingParticleLinksAcc( *this ).size(); } - const TruthParticle* TruthVertex::incomingParticle( size_t index ) const { + const FaserTruthParticle* FaserTruthVertex::incomingParticle( size_t index ) const { // Check that the variable exists, and that it has enough elements in it: if( ( ! incomingParticleLinksAcc.isAvailable( *this ) ) || @@ -76,27 +76,27 @@ namespace xAOD { return *ipl; } - void TruthVertex::addIncomingParticleLink( const TPLink_t& link ) { + void FaserTruthVertex::addIncomingParticleLink( const TPLink_t& link ) { incomingParticleLinksAcc( *this ).push_back( link ); return; } - void TruthVertex::clearIncomingParticleLinks() { + void FaserTruthVertex::clearIncomingParticleLinks() { incomingParticleLinksAcc( *this ).clear(); return; } - AUXSTORE_OBJECT_SETTER_AND_GETTER( TruthVertex, TruthVertex::TPLinks_t, + AUXSTORE_OBJECT_SETTER_AND_GETTER( FaserTruthVertex, FaserTruthVertex::TPLinks_t, outgoingParticleLinks, setOutgoingParticleLinks ) /// Accessor for the outgoing particles - static SG::AuxElement::Accessor< TruthVertex::TPLinks_t > + static SG::AuxElement::Accessor< FaserTruthVertex::TPLinks_t > outgoingParticleLinksAcc( "outgoingParticleLinks" ); - size_t TruthVertex::nOutgoingParticles() const { + size_t FaserTruthVertex::nOutgoingParticles() const { // Check if the variable is available: if( ! outgoingParticleLinksAcc.isAvailable( *this ) ) { @@ -108,7 +108,7 @@ namespace xAOD { return outgoingParticleLinksAcc( *this ).size(); } - const TruthParticle* TruthVertex::outgoingParticle( size_t index ) const { + const FaserTruthParticle* FaserTruthVertex::outgoingParticle( size_t index ) const { // Check that the variable exists, and that it has enough elements in it: if( ( ! outgoingParticleLinksAcc.isAvailable( *this ) ) || @@ -126,13 +126,13 @@ namespace xAOD { return *opl; } - void TruthVertex::addOutgoingParticleLink( const TPLink_t& link ) { + void FaserTruthVertex::addOutgoingParticleLink( const TPLink_t& link ) { outgoingParticleLinksAcc( *this ).push_back( link ); return; } - void TruthVertex::clearOutgoingParticleLinks() { + void FaserTruthVertex::clearOutgoingParticleLinks() { outgoingParticleLinksAcc( *this ).clear(); return; @@ -146,9 +146,9 @@ namespace xAOD { // Implementation of the functions specifying the vertex's position // - AUXSTORE_PRIMITIVE_GETTER( TruthVertex, float, x ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthVertex, float, x ) - void TruthVertex::setX( float x ) { + void FaserTruthVertex::setX( float x ) { static SG::AuxElement::Accessor< float > acc( "x" ); m_v4Cached = false; @@ -156,9 +156,9 @@ namespace xAOD { return; } - AUXSTORE_PRIMITIVE_GETTER( TruthVertex, float, y ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthVertex, float, y ) - void TruthVertex::setY( float y ) { + void FaserTruthVertex::setY( float y ) { static SG::AuxElement::Accessor< float > acc( "y" ); m_v4Cached = false; @@ -166,9 +166,9 @@ namespace xAOD { return; } - AUXSTORE_PRIMITIVE_GETTER( TruthVertex, float, z ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthVertex, float, z ) - void TruthVertex::setZ( float z ) { + void FaserTruthVertex::setZ( float z ) { static SG::AuxElement::Accessor< float > acc( "z" ); m_v4Cached = false; @@ -176,28 +176,28 @@ namespace xAOD { return; } - float TruthVertex::perp() const { + float FaserTruthVertex::perp() const { // Do the calculation by hand. Could make it faster than this even in a // future iteration... return std::sqrt( x() * x() + y() * y() ); } - float TruthVertex::eta() const { + float FaserTruthVertex::eta() const { // This is not necessarily what Andy was thinking about... return v4().Eta(); } - float TruthVertex::phi() const { + float FaserTruthVertex::phi() const { // This is not necessarily what Andy was thinking about... return v4().Phi(); } - AUXSTORE_PRIMITIVE_GETTER( TruthVertex, float, t ) + AUXSTORE_PRIMITIVE_GETTER( FaserTruthVertex, float, t ) - void TruthVertex::setT( float t ) { + void FaserTruthVertex::setT( float t ) { static SG::AuxElement::Accessor< float > acc( "t" ); m_v4Cached = false; @@ -205,7 +205,7 @@ namespace xAOD { return; } - const TruthVertex::FourVec_t& TruthVertex::v4() const { + const FaserTruthVertex::FourVec_t& FaserTruthVertex::v4() const { // Cache the 4-vector if it's not already: if( ! m_v4Cached ) { @@ -220,12 +220,17 @@ namespace xAOD { // ///////////////////////////////////////////////////////////////////////////// - Type::ObjectType TruthVertex::type() const { + FaserType::ObjectType FaserTruthVertex::faserType() const { - return Type::TruthVertex; + return FaserType::FaserTruthVertex; + } + + Type::ObjectType FaserTruthVertex::type() const { + + return Type::Other; } - void TruthVertex::toPersistent() { + void FaserTruthVertex::toPersistent() { // Prepare the incoming particle links for persistification: if( incomingParticleLinksAcc.isAvailableWritable( *this ) ) { diff --git a/xAOD/xAODFaserTruth/Root/TruthVertexAuxContainer.cxx b/xAOD/xAODFaserTruth/Root/FaserTruthVertexAuxContainer.cxx similarity index 67% rename from xAOD/xAODFaserTruth/Root/TruthVertexAuxContainer.cxx rename to xAOD/xAODFaserTruth/Root/FaserTruthVertexAuxContainer.cxx index a0b3f0d606f64ff8224cabeeb4760fb857acc548..6bf93f8160d9388e479271d45f2b87d20ae01a48 100644 --- a/xAOD/xAODFaserTruth/Root/TruthVertexAuxContainer.cxx +++ b/xAOD/xAODFaserTruth/Root/FaserTruthVertexAuxContainer.cxx @@ -2,14 +2,14 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: TruthVertexAuxContainer.cxx 624338 2014-10-27 15:08:55Z krasznaa $ +// $Id: FaserTruthVertexAuxContainer.cxx 624338 2014-10-27 15:08:55Z krasznaa $ // Local include(s): -#include "xAODTruth/TruthVertexAuxContainer.h" +#include "xAODFaserTruth/FaserTruthVertexAuxContainer.h" namespace xAOD { - TruthVertexAuxContainer::TruthVertexAuxContainer() + FaserTruthVertexAuxContainer::FaserTruthVertexAuxContainer() : AuxContainerBase() { AUX_VARIABLE( id ); diff --git a/xAOD/xAODFaserTruth/Root/dict/ContainerProxies.cxx b/xAOD/xAODFaserTruth/Root/dict/ContainerProxies.cxx index c3086181764205a40e47b54a7cabdde37ea85bbe..9d6e1383004047e4acf9f9e22f2b001d387a8b35 100644 --- a/xAOD/xAODFaserTruth/Root/dict/ContainerProxies.cxx +++ b/xAOD/xAODFaserTruth/Root/dict/ContainerProxies.cxx @@ -2,11 +2,11 @@ #include "xAODCore/AddDVProxy.h" // Local include(s): -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthVertexContainer.h" -#include "xAODTruth/TruthEventContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthEventContainer.h" // Set up the collection proxies: -ADD_NS_DV_PROXY( xAOD, TruthParticleContainer ); -ADD_NS_DV_PROXY( xAOD, TruthVertexContainer ); -ADD_NS_DV_PROXY( xAOD, TruthEventContainer ); +ADD_NS_DV_PROXY( xAOD, FaserTruthParticleContainer ); +ADD_NS_DV_PROXY( xAOD, FaserTruthVertexContainer ); +ADD_NS_DV_PROXY( xAOD, FaserTruthEventContainer ); diff --git a/xAOD/xAODFaserTruth/Root/xAODFaserTruthCLIDs.cxx b/xAOD/xAODFaserTruth/Root/xAODFaserTruthCLIDs.cxx new file mode 100644 index 0000000000000000000000000000000000000000..d293e724a4868ab287a5ff785a86044de4d5ecc8 --- /dev/null +++ b/xAOD/xAODFaserTruth/Root/xAODFaserTruthCLIDs.cxx @@ -0,0 +1,14 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + + +//simple includes to force the CLASS_DEF to be encountered during compile + +#include "xAODFaserTruth/FaserTruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthVertexAuxContainer.h" +#include "xAODFaserTruth/FaserTruthEventContainer.h" +#include "xAODFaserTruth/FaserTruthEventAuxContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthParticleAuxContainer.h" + diff --git a/xAOD/xAODFaserTruth/Root/xAODTruthHelpers.cxx b/xAOD/xAODFaserTruth/Root/xAODFaserTruthHelpers.cxx similarity index 85% rename from xAOD/xAODFaserTruth/Root/xAODTruthHelpers.cxx rename to xAOD/xAODFaserTruth/Root/xAODFaserTruthHelpers.cxx index 3d00de95e602944a5a772eff2a659cb1f4afe9cf..c6c398b4a3b300700ca327897d2b04c9a3b9b8c7 100644 --- a/xAOD/xAODFaserTruth/Root/xAODTruthHelpers.cxx +++ b/xAOD/xAODFaserTruth/Root/xAODFaserTruthHelpers.cxx @@ -2,7 +2,7 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: xAODTruthHelpers.cxx 668406 2015-05-19 15:32:15Z krasznaa $ +// $Id: xAODFaserTruthHelpers.cxx 668406 2015-05-19 15:32:15Z krasznaa $ // Core EDM include(s): #include "AthLinks/ElementLink.h" @@ -12,9 +12,9 @@ #include "xAODBase/IParticle.h" // Local include(s): -#include "xAODTruth/xAODTruthHelpers.h" -#include "xAODTruth/TruthParticle.h" -#include "xAODTruth/TruthParticleContainer.h" +#include "xAODFaserTruth/xAODFaserTruthHelpers.h" +#include "xAODFaserTruth/FaserTruthParticle.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" namespace xAOD { @@ -24,10 +24,10 @@ namespace xAOD { /// @returns A pointer to the associated truth particle if available, /// or a null pointer if not /// - const xAOD::TruthParticle* getTruthParticle( const xAOD::IParticle& p ) { + const xAOD::FaserTruthParticle* getFaserTruthParticle( const xAOD::IParticle& p ) { /// A convenience type declaration - typedef ElementLink< xAOD::TruthParticleContainer > Link_t; + typedef ElementLink< xAOD::FaserTruthParticleContainer > Link_t; /// A static accessor for the information static SG::AuxElement::ConstAccessor< Link_t > acc( "truthParticleLink" ); diff --git a/xAOD/xAODFaserTruth/Root/xAODTruthCLIDs.cxx b/xAOD/xAODFaserTruth/Root/xAODTruthCLIDs.cxx deleted file mode 100644 index 50c624ca9b6fe760a22eaba20505d412f3e02359..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/Root/xAODTruthCLIDs.cxx +++ /dev/null @@ -1,14 +0,0 @@ -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - - -//simple includes to force the CLASS_DEF to be encountered during compile - -#include "xAODTruth/TruthVertexContainer.h" -#include "xAODTruth/TruthVertexAuxContainer.h" -#include "xAODTruth/TruthEventContainer.h" -#include "xAODTruth/TruthEventAuxContainer.h" -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthParticleAuxContainer.h" - diff --git a/xAOD/xAODFaserTruth/share/ut_xaodtruth_particle_test.ref b/xAOD/xAODFaserTruth/share/ut_xaodfasertruth_particle_test.ref similarity index 100% rename from xAOD/xAODFaserTruth/share/ut_xaodtruth_particle_test.ref rename to xAOD/xAODFaserTruth/share/ut_xaodfasertruth_particle_test.ref diff --git a/xAOD/xAODFaserTruth/test/ut_xaodtruth_helpers_test.py b/xAOD/xAODFaserTruth/test/ut_xaodfasertruth_helpers_test.py similarity index 100% rename from xAOD/xAODFaserTruth/test/ut_xaodtruth_helpers_test.py rename to xAOD/xAODFaserTruth/test/ut_xaodfasertruth_helpers_test.py diff --git a/xAOD/xAODFaserTruth/test/ut_xaodtruth_particle_test.cxx b/xAOD/xAODFaserTruth/test/ut_xaodfasertruth_particle_test.cxx similarity index 88% rename from xAOD/xAODFaserTruth/test/ut_xaodtruth_particle_test.cxx rename to xAOD/xAODFaserTruth/test/ut_xaodfasertruth_particle_test.cxx index 363f3b15cb5bc712f1111babdea7cde394b23718..0550373aad3410f70e3beb69076d07feed775634 100644 --- a/xAOD/xAODFaserTruth/test/ut_xaodtruth_particle_test.cxx +++ b/xAOD/xAODFaserTruth/test/ut_xaodfasertruth_particle_test.cxx @@ -9,9 +9,9 @@ #include <cmath> // Local include(s): -#include "xAODTruth/TruthParticle.h" -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthParticleAuxContainer.h" +#include "xAODFaserTruth/FaserTruthParticle.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthParticleAuxContainer.h" /// Helper macro to test assertions #define SIMPLE_ASSERT( EXP ) \ @@ -25,8 +25,8 @@ int main() { // Create a container to test: - xAOD::TruthParticleContainer c; - xAOD::TruthParticleAuxContainer aux; + xAOD::FaserTruthParticleContainer c; + xAOD::FaserTruthParticleAuxContainer aux; c.setStore( &aux ); // Construct a particle that we can test. The values are chosen on purpose @@ -37,7 +37,7 @@ int main() { static const double PZ = std::sqrt( ( double ) 3.4567 ); static const double E = std::sqrt( ( double ) 4.5678 ); static const double M = std::sqrt( ( double ) 5.6789 ); - xAOD::TruthParticle* p = new xAOD::TruthParticle(); + xAOD::FaserTruthParticle* p = new xAOD::FaserTruthParticle(); c.push_back( p ); p->setPx( PX ); p->setPy( PY ); diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthEvent.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEvent.h similarity index 71% rename from xAOD/xAODFaserTruth/xAODTruth/TruthEvent.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEvent.h index 695f2eeb097704ae456024cb78084ceb9918c85b..b66e4b746f41c17b3f88bb543d782d923b151733 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthEvent.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEvent.h @@ -1,5 +1,5 @@ -#ifndef XAODTRUTH_TRUTHEVENT_H -#define XAODTRUTH_TRUTHEVENT_H +#ifndef XAODFASERTRUTH_TRUTHEVENT_H +#define XAODFASERTRUTH_TRUTHEVENT_H // System include(s): #include <utility> @@ -9,45 +9,46 @@ #include "AthContainers/AuxElement.h" #include "AthLinks/ElementLink.h" #include "xAODBase/ObjectType.h" +#include "xAODFaserBase/FaserObjectType.h" // Local include(s): -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" namespace xAOD { /// Class describing a signal truth event in the MC record /// - class TruthEvent : public SG::AuxElement { + class FaserTruthEvent : public SG::AuxElement { public: /// Default constructor - TruthEvent(); + FaserTruthEvent(); /// Virtual destructor, to make vtable happy - virtual ~TruthEvent() {} + virtual ~FaserTruthEvent() {} /// @name Access to all the particles associated with the event /// @{ /// Type of a single truth particle link - typedef ElementLink< TruthParticleContainer > TruthParticleLink_t; + typedef ElementLink< FaserTruthParticleContainer > FaserTruthParticleLink_t; /// Type of the truth particle links vector - typedef std::vector< TruthParticleLink_t > TruthParticleLinks_t; + typedef std::vector< FaserTruthParticleLink_t > FaserTruthParticleLinks_t; /// Get all the truth particles - const TruthParticleLinks_t& truthParticleLinks() const; + const FaserTruthParticleLinks_t& truthParticleLinks() const; /// Set all the truth particles - void setTruthParticleLinks( const TruthParticleLinks_t& plinks ); + void setFaserTruthParticleLinks( const FaserTruthParticleLinks_t& plinks ); /// Get the number of truth particles - size_t nTruthParticles() const; + size_t nFaserTruthParticles() const; /// Get the link to one of the truth particles - const TruthParticleLink_t& truthParticleLink( size_t index ) const; + const FaserTruthParticleLink_t& truthParticleLink( size_t index ) const; /// Get a pointer to one of the truth particles - const TruthParticle* truthParticle( size_t index ) const; + const FaserTruthParticle* truthParticle( size_t index ) const; /// Add one truth particle - void addTruthParticleLink( const TruthParticleLink_t& plink ); + void addFaserTruthParticleLink( const FaserTruthParticleLink_t& plink ); /// Remove all truth particles - void clearTruthParticleLinks(); + void clearFaserTruthParticleLinks(); /// @} @@ -55,24 +56,24 @@ namespace xAOD { /// @{ /// Type of a single truth vertex link - typedef ElementLink< TruthVertexContainer > TruthVertexLink_t; + typedef ElementLink< FaserTruthVertexContainer > FaserTruthVertexLink_t; /// Type of the truth particle links vector - typedef std::vector< TruthVertexLink_t > TruthVertexLinks_t; + typedef std::vector< FaserTruthVertexLink_t > FaserTruthVertexLinks_t; /// Get all the truth vertices - const TruthVertexLinks_t& truthVertexLinks() const; + const FaserTruthVertexLinks_t& truthVertexLinks() const; /// Set all the truth vertices - void setTruthVertexLinks( const TruthVertexLinks_t& links ); + void setFaserTruthVertexLinks( const FaserTruthVertexLinks_t& links ); /// Get the number of truth vertices size_t nTruthVertices() const; /// Get the link to one of the truth vertices - const TruthVertexLink_t& truthVertexLink( size_t index ) const; + const FaserTruthVertexLink_t& truthVertexLink( size_t index ) const; /// Get a pointer to one of the truth vertices - const TruthVertex* truthVertex( size_t index ) const; + const FaserTruthVertex* truthVertex( size_t index ) const; /// Add one truth vertex - void addTruthVertexLink( const TruthVertexLink_t& vlink ); + void addFaserTruthVertexLink( const FaserTruthVertexLink_t& vlink ); /// Remove all truth vertices - void clearTruthVertexLinks(); + void clearFaserTruthVertexLinks(); /// @} @@ -169,25 +170,27 @@ namespace xAOD { /// The naming of the function is a bit misleading. The returned vertex /// can only be interpreted as an interaction *position*. /// - const TruthVertex* signalProcessVertex() const; + const FaserTruthVertex* signalProcessVertex() const; /// Link to the vertex representing the primary interaction point - const TruthVertexLink_t& signalProcessVertexLink() const; + const FaserTruthVertexLink_t& signalProcessVertexLink() const; /// Set pointer to a vertex representing the primary interaction point - void setSignalProcessVertexLink( const TruthVertexLink_t& link ); + void setSignalProcessVertexLink( const FaserTruthVertexLink_t& link ); /// Pointer to the incoming primary particle - const TruthParticle* primaryParticle() const; + const FaserTruthParticle* primaryParticle() const; /// Get the link to the primary particle - const TruthParticleLink_t& primaryParticleLink() const; + const FaserTruthParticleLink_t& primaryParticleLink() const; /// Set incoming primary particle - void setPrimaryParticleLink( const TruthParticleLink_t& pcl); + void setPrimaryParticleLink( const FaserTruthParticleLink_t& pcl); /// @} - - /// The type of the object as a simple enumeration + /// The type for the IParticle, this should not be used virtual Type::ObjectType type() const; + + /// The type of the object as a simple enumeration + FaserType::ObjectType faserType() const; /// @name Simple truth meta data properties /// @{ @@ -203,8 +206,8 @@ namespace xAOD { /// Function making sure that the object is ready for persistification void toPersistent(); - }; // class TruthEvent + }; // class FaserTruthEvent } // namespace xAOD -#endif // XAODTRUTH_TRUTHEVENT_H +#endif // XAODFASERTRUTH_TRUTHEVENT_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthEventAuxContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventAuxContainer.h similarity index 60% rename from xAOD/xAODFaserTruth/xAODTruth/TruthEventAuxContainer.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventAuxContainer.h index 57c6e62ccd9de8455859654f3dbd3d2cc10a71fe..7b691588bf09f9c6f217a85b3497970097a6da20 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthEventAuxContainer.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventAuxContainer.h @@ -1,5 +1,5 @@ -#ifndef XAODTRUTH_TRUTHEVENTAUXCONTAINER_H -#define XAODTRUTH_TRUTHEVENTAUXCONTAINER_H +#ifndef XAODFASERTRUTH_TRUTHEVENTAUXCONTAINER_H +#define XAODFASERTRUTH_TRUTHEVENTAUXCONTAINER_H // System include(s): #include <vector> @@ -9,23 +9,23 @@ #include "xAODCore/AuxContainerBase.h" // Local include(s): -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" namespace xAOD { /// Auxiliary store for the truth vertices /// - class TruthEventAuxContainer : public AuxContainerBase { + class FaserTruthEventAuxContainer : public AuxContainerBase { public: /// Default constructor - TruthEventAuxContainer(); + FaserTruthEventAuxContainer(); private: /// @name Links to the interaction particles/vertices /// @{ - std::vector< ElementLink< TruthVertexContainer > > + std::vector< ElementLink< FaserTruthVertexContainer > > signalProcessVertexLink; /// @} @@ -40,9 +40,9 @@ namespace xAOD { /// @name Links to the generated/simulated particles/vertices /// @{ - std::vector< std::vector< ElementLink< TruthParticleContainer > > > + std::vector< std::vector< ElementLink< FaserTruthParticleContainer > > > truthParticleLinks; - std::vector< std::vector< ElementLink< TruthVertexContainer > > > + std::vector< std::vector< ElementLink< FaserTruthVertexContainer > > > truthVertexLinks; /// @} @@ -51,12 +51,12 @@ namespace xAOD { std::vector < std::vector < std::string > > weightNames; std::vector < uint32_t > mcChannelNumber; - }; // class TruthEventAuxContainer + }; // class FaserTruthEventAuxContainer } // namespace xAOD -// Declare the class's inheritance to StoreGate: -#include "xAODCore/BaseInfo.h" -SG_BASE( xAOD::TruthEventAuxContainer, xAOD::AuxContainerBase ); +// Declare a CLID for the class +#include "xAODCore/CLASS_DEF.h" +CLASS_DEF( xAOD::FaserTruthEventAuxContainer, 1254985314, 1 ) -#endif // XAODTRUTH_TRUTHEVENTAUXCONTAINER_H +#endif // XAODFASERTRUTH_TRUTHEVENTAUXCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventContainer.h new file mode 100644 index 0000000000000000000000000000000000000000..7d6f9eeea7bf137d3fed010b4652cd322936fb0a --- /dev/null +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthEventContainer.h @@ -0,0 +1,26 @@ +// -*- C++ -*- + +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +// $Id: FaserTruthEventContainer_v1.h 622193 2014-10-16 16:08:34Z krasznaa $ +#ifndef XAODFASERTRUTH_TRUTHEVENTCONTAINER_H +#define XAODFASERTRUTH_TRUTHEVENTCONTAINER_H + +// EDM include(s): +#include "AthContainers/DataVector.h" + +// Local include(s): +#include "xAODFaserTruth/FaserTruthEvent.h" + +namespace xAOD { + /// Alias + typedef DataVector< FaserTruthEvent > FaserTruthEventContainer; +} + +// Declare a CLID for the class for Athena: +#include "xAODCore/CLASS_DEF.h" +CLASS_DEF( xAOD::FaserTruthEventContainer, 1237345824, 1 ) + +#endif // XAODFASERTRUTH_TRUTHEVENTCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthParticle.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticle.h similarity index 90% rename from xAOD/xAODFaserTruth/xAODTruth/TruthParticle.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticle.h index 3a230b018d4e8ad54afe337312efe6de18b1aa34..f8290fd64bb3f95f0cc3b34289db72e06e2666e7 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthParticle.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticle.h @@ -1,5 +1,5 @@ -#ifndef XAODTRUTH_TRUTHPARTICLE_H -#define XAODTRUTH_TRUTHPARTICLE_H +#ifndef XAODFASERTRUTH_TRUTHPARTICLE_H +#define XAODFASERTRUTH_TRUTHPARTICLE_H // EDM include(s): #include "AthLinks/ElementLink.h" @@ -8,10 +8,11 @@ // xAOD include(s): #include "xAODBase/IParticle.h" #include "xAODBase/ObjectType.h" +#include "xAODFaserBase/FaserObjectType.h" namespace xAOD { - class TruthVertex; - typedef DataVector< TruthVertex > TruthVertexContainer; + class FaserTruthVertex; + typedef DataVector< FaserTruthVertex > FaserTruthVertexContainer; /// Class describing a truth particle in the MC record /// @@ -20,11 +21,11 @@ namespace xAOD { /// connected to a single production and decay vertex. And each vertex is /// connected to one or more incoming, and one or more outgoing particles. /// - class TruthParticle : public IParticle { + class FaserTruthParticle : public IParticle { public: /// Default constructor - TruthParticle(); + FaserTruthParticle(); /// @name Functions identifying the particle in the MC record /// @{ @@ -55,20 +56,20 @@ namespace xAOD { /// Check for a production vertex on this particle bool hasProdVtx() const; /// The production vertex of this particle - const TruthVertex* prodVtx() const; + const FaserTruthVertex* prodVtx() const; /// The production vertex link of this particle - const ElementLink< TruthVertexContainer >& prodVtxLink() const; + const ElementLink< FaserTruthVertexContainer >& prodVtxLink() const; /// Set the production vertex of the particle - void setProdVtxLink( const ElementLink< TruthVertexContainer >& link ); + void setProdVtxLink( const ElementLink< FaserTruthVertexContainer >& link ); /// Check for a decay vertex on this particle bool hasDecayVtx() const; /// The decay vertex of this particle - const TruthVertex* decayVtx() const; + const FaserTruthVertex* decayVtx() const; /// The decay vertex link of this particle - const ElementLink< TruthVertexContainer >& decayVtxLink() const; + const ElementLink< FaserTruthVertexContainer >& decayVtxLink() const; /// Set the decay vertex of the particle - void setDecayVtxLink( const ElementLink< TruthVertexContainer >& link ); + void setDecayVtxLink( const ElementLink< FaserTruthVertexContainer >& link ); /// @} @@ -78,14 +79,14 @@ namespace xAOD { /// Number of parents of this particle size_t nParents() const; - /// Retrieve the i-th mother (TruthParticle) of this TruthParticle - const TruthParticle* parent( size_t i = 0 ) const; + /// Retrieve the i-th mother (FaserTruthParticle) of this FaserTruthParticle + const FaserTruthParticle* parent( size_t i = 0 ) const; /// Number of children of this particle size_t nChildren() const; - /// Retrieve the i-th mother (TruthParticle) of this TruthParticle - const TruthParticle* child( size_t i = 0 ) const; + /// Retrieve the i-th mother (FaserTruthParticle) of this FaserTruthParticle + const FaserTruthParticle* child( size_t i = 0 ) const; /// @} @@ -116,10 +117,13 @@ namespace xAOD { /// Note that m may not be right, though, if not on mass shell. In which /// case <code>p4().M()</code> will be different from <code>m()</code>. /// - virtual const FourMom_t& p4() const; + virtual FourMom_t p4() const; - /// The type of the object as a simple enumeration + /// The type for the IParticle, this should not be used virtual Type::ObjectType type() const; + + /// The type of the object as a simple enumeration + FaserType::ObjectType faserType() const; /// @} @@ -348,12 +352,8 @@ namespace xAOD { void toPersistent(); private: - /// Cached four momentum - mutable FourMom_t m_p4; - /// Flag specifying if the four-momentum is cached - mutable bool m_p4Cached; - }; // class TruthParticle + }; // class FaserTruthParticle } // namespace xAOD diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthParticleAuxContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleAuxContainer.h similarity index 54% rename from xAOD/xAODFaserTruth/xAODTruth/TruthParticleAuxContainer.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleAuxContainer.h index ca8ec36160eec199005d0f664863ae426d4e74cb..3507766b2ed14f5a189564e8b04bae35ab3c9c45 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthParticleAuxContainer.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleAuxContainer.h @@ -1,13 +1,13 @@ -#ifndef XAODTRUTH_TRUTHPARTICLEAUXCONTAINER_H -#define XAODTRUTH_TRUTHPARTICLEAUXCONTAINER_H +#ifndef XAODFASERTRUTH_TRUTHPARTICLEAUXCONTAINER_H +#define XAODFASERTRUTH_TRUTHPARTICLEAUXCONTAINER_H #include <vector> #include "AthLinks/ElementLink.h" #include "xAODCore/AuxContainerBase.h" -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" namespace xAOD { @@ -18,30 +18,30 @@ namespace xAOD { /// @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> /// @author Jovan Mitrevski <Jovan.Mitrevski@cern.h> /// - class TruthParticleAuxContainer : public AuxContainerBase { + class FaserTruthParticleAuxContainer : public AuxContainerBase { public: /// Default constructor - TruthParticleAuxContainer(); + FaserTruthParticleAuxContainer(); private: std::vector< int > pdgId; std::vector< int > barcode; std::vector< int > status; - std::vector< ElementLink< TruthVertexContainer > > prodVtxLink; - std::vector< ElementLink< TruthVertexContainer > > decayVtxLink; + std::vector< ElementLink< FaserTruthVertexContainer > > prodVtxLink; + std::vector< ElementLink< FaserTruthVertexContainer > > decayVtxLink; std::vector< float > px; std::vector< float > py; std::vector< float > pz; std::vector< float > e; std::vector< float > m; // needed since not necessarily on shell - }; // class TruthParticleAuxContainer + }; // class FaserTruthParticleAuxContainer } // namespace xAOD // Declare a CLID for the class #include "xAODCore/CLASS_DEF.h" -CLASS_DEF( xAOD::TruthParticleAuxContainer, 1107340896, 1 ) +CLASS_DEF( xAOD::FaserTruthParticleAuxContainer, 1107850896, 1 ) -#endif // XAODTRUTH_TRUTHPARTICLEAUXCONTAINER_H +#endif // XAODFASERTRUTH_TRUTHPARTICLEAUXCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleContainer.h new file mode 100644 index 0000000000000000000000000000000000000000..0f484806ea5571a75a4c522ba407065c30b71de8 --- /dev/null +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthParticleContainer.h @@ -0,0 +1,26 @@ +// Dear emacs, this is -*- c++ -*- + +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +// $Id: FaserTruthParticleContainer.h 622193 2014-10-16 16:08:34Z krasznaa $ +#ifndef XAODFASERTRUTH_TRUTHPARTICLECONTAINER_H +#define XAODFASERTRUTH_TRUTHPARTICLECONTAINER_H + +// Local include(s): +#include "xAODFaserTruth/FaserTruthParticle.h" +// EDM include(s): +#include "AthContainers/DataVector.h" + + +namespace xAOD { + // Alias + typedef DataVector< FaserTruthParticle > FaserTruthParticleContainer; +} + +// Declare a CLID for the class for Athena: +#include "xAODCore/CLASS_DEF.h" +CLASS_DEF( xAOD::FaserTruthParticleContainer, 1237340784, 1 ) + +#endif // XAODFASERTRUTH_TRUTHPARTICLECONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthVertex.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertex.h similarity index 85% rename from xAOD/xAODFaserTruth/xAODTruth/TruthVertex.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertex.h index 6f24fbd975800bc3708c9256dccc1f32c931276e..291b87bf3b8c900566d01aa5ba0d4ca9f9371e4b 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthVertex.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertex.h @@ -1,5 +1,5 @@ -#ifndef XAODTRUTH_TRUTHVERTEX_H -#define XAODTRUTH_TRUTHVERTEX_H +#ifndef XAODFASERTRUTH_TRUTHVERTEX_H +#define XAODFASERTRUTH_TRUTHVERTEX_H // ROOT include(s): #include <TLorentzVector.h> @@ -10,9 +10,10 @@ // xAOD include(s): #include "xAODBase/ObjectType.h" +#include "xAODFaserBase/FaserObjectType.h" // Local include(s): -#include "xAODTruth/TruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" namespace xAOD { @@ -28,11 +29,11 @@ namespace xAOD { /// $Revision: 624338 $ /// $Date: 2014-10-27 16:08:55 +0100 (Mon, 27 Oct 2014) $ /// - class TruthVertex : public SG::AuxElement { + class FaserTruthVertex : public SG::AuxElement { public: /// Default constructor - TruthVertex(); + FaserTruthVertex(); /// @name Functions identifying the vertex in the MC record /// @{ @@ -53,7 +54,7 @@ namespace xAOD { /// @{ /// Type of one truth particle link - typedef ElementLink< TruthParticleContainer > TPLink_t; + typedef ElementLink< FaserTruthParticleContainer > TPLink_t; /// Type used to save the links to incoming and outgoing particles typedef std::vector< TPLink_t > TPLinks_t; @@ -64,7 +65,7 @@ namespace xAOD { /// Get the number of incoming particles size_t nIncomingParticles() const; /// Get one of the incoming particles - const TruthParticle* incomingParticle( size_t index ) const; + const FaserTruthParticle* incomingParticle( size_t index ) const; /// Add one incoming particle void addIncomingParticleLink( const TPLink_t& link ); /// Remove all incoming particles @@ -77,7 +78,7 @@ namespace xAOD { /// Get the number of outgoing particles size_t nOutgoingParticles() const; /// Get one of the outgoing particles - const TruthParticle* outgoingParticle( size_t index ) const; + const FaserTruthParticle* outgoingParticle( size_t index ) const; /// Add one outgoing particle void addOutgoingParticleLink( const TPLink_t& link ); /// Remove all outgoing particles @@ -123,8 +124,11 @@ namespace xAOD { /// @} + /// The type for the IParticle, this should not be used + virtual Type::ObjectType type() const; + /// The type of the object as a simple enumeration - Type::ObjectType type() const; + FaserType::ObjectType faserType() const; /// Function making sure that the object is ready for persistification void toPersistent(); @@ -135,7 +139,7 @@ namespace xAOD { /// Flag showing whether the four-vector is cached mutable bool m_v4Cached; - }; // class TruthVertex + }; // class FaserTruthVertex } // namespace xAOD diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthVertexAuxContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexAuxContainer.h similarity index 58% rename from xAOD/xAODFaserTruth/xAODTruth/TruthVertexAuxContainer.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexAuxContainer.h index b6098f4323eeee6a834f33495c00133a942571ea..520e69c1339207c6e65ba7480539f8535ff7b62e 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthVertexAuxContainer.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexAuxContainer.h @@ -1,5 +1,5 @@ -#ifndef XAODTRUTH_TRUTHVERTEXAUXCONTAINER_H -#define XAODTRUTH_TRUTHVERTEXAUXCONTAINER_H +#ifndef XAODFASERTRUTH_TRUTHVERTEXAUXCONTAINER_H +#define XAODFASERTRUTH_TRUTHVERTEXAUXCONTAINER_H // System include(s): #include <vector> @@ -9,7 +9,7 @@ #include "xAODCore/AuxContainerBase.h" // Local include(s): -#include "xAODTruth/TruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthParticleContainer.h" namespace xAOD { @@ -21,30 +21,30 @@ namespace xAOD { /// $Revision: 624338 $ /// $Date: 2014-10-27 16:08:55 +0100 (Mon, 27 Oct 2014) $ /// - class TruthVertexAuxContainer : public AuxContainerBase { + class FaserTruthVertexAuxContainer : public AuxContainerBase { public: /// Default constructor - TruthVertexAuxContainer(); + FaserTruthVertexAuxContainer(); private: std::vector< int > id; std::vector< int > barcode; - std::vector< std::vector< ElementLink< TruthParticleContainer > > > + std::vector< std::vector< ElementLink< FaserTruthParticleContainer > > > incomingParticleLinks; - std::vector< std::vector< ElementLink< TruthParticleContainer > > > + std::vector< std::vector< ElementLink< FaserTruthParticleContainer > > > outgoingParticleLinks; std::vector< float > x; std::vector< float > y; std::vector< float > z; std::vector< float > t; - }; // class TruthVertexAuxContainer + }; // class FaserTruthVertexAuxContainer } // namespace xAOD // Declare a CLID for the class #include "xAODCore/CLASS_DEF.h" -CLASS_DEF( xAOD::TruthVertexAuxContainer, 1254939514, 1 ) +CLASS_DEF( xAOD::FaserTruthVertexAuxContainer, 1254974514, 1 ) -#endif // XAODTRUTH_TRUTHVERTEXAUXCONTAINER_H +#endif // XAODFASERTRUTH_TRUTHVERTEXAUXCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexContainer.h b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexContainer.h new file mode 100644 index 0000000000000000000000000000000000000000..e338f963bbe7624aa77193c9bcc838f00695a04d --- /dev/null +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/FaserTruthVertexContainer.h @@ -0,0 +1,25 @@ +// Dear emacs, this is -*- c++ -*- + +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +// $Id: FaserTruthVertexContainer.h 622193 2014-10-16 16:08:34Z krasznaa $ +#ifndef XAODFASERTRUTH_TRUTHVERTEXCONTAINER_H +#define XAODFASERTRUTH_TRUTHVERTEXCONTAINER_H + +// Local include(s): +#include "xAODFaserTruth/FaserTruthVertex.h" +// EDM include(s): +#include "AthContainers/DataVector.h" + +namespace xAOD { + // Alias + typedef DataVector< FaserTruthVertex > FaserTruthVertexContainer; +} + +// Declare a CLID for the class for Athena: +#include "xAODCore/CLASS_DEF.h" +CLASS_DEF( xAOD::FaserTruthVertexContainer, 1239726537, 1 ) + +#endif // XAODFASERTRUTH_TRUTHVERTEXCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODFaserTruth/selection.xml b/xAOD/xAODFaserTruth/xAODFaserTruth/selection.xml new file mode 100644 index 0000000000000000000000000000000000000000..a82ac5270ddb67bf1e28156f87367eb0ce3fef5a --- /dev/null +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/selection.xml @@ -0,0 +1,53 @@ +<!-- $Id: selection.xml 670153 2015-05-27 11:42:29Z tbisanz $ --> +<lcgdict> + + <!-- The FaserTruthVertex class: --> + <class name="xAOD::FaserTruthVertex" > + <field name="m_v4" transient="true" /> + <field name="m_v4Cached" transient="true" /> + </class> + <read sourceClass="xAOD::FaserTruthVertex" version="[1-]" + targetClass="xAOD::FaserTruthVertex" source="" target="m_v4Cached" > + <![CDATA[ + m_v4Cached = false; + ]]> + </read> + + <!-- The FaserTruthEvent class(es): --> + <class name="xAOD::FaserTruthEvent" /> + <class name="xAOD::FaserTruthEvent::PdfInfo" /> + <class name="xAOD::TruthMetaData" /> + + <!-- The persistent classes: --> + <class name="xAOD::FaserTruthParticleContainer" + id="58F98A16-E465-4CA5-A099-73033206D8E3" /> + <class name="xAOD::FaserTruthVertexContainer" + id="5FBAE0AB-09F7-4B6C-B066-0A003FC38ECF" /> + <class name="xAOD::FaserTruthEventContainer" + id="6290F297-F529-40EE-9FE5-1C577678306D" /> + + <class name="xAOD::FaserTruthParticleAuxContainer" + id="BA8FA08F-8DD6-420D-97D5-8B54EABECD65" /> + <class name="xAOD::FaserTruthVertexAuxContainer" + id="B6BD3B02-C411-4EB9-903F-5B099D3B1A3E" /> + <class name="xAOD::FaserTruthEventAuxContainer" + id="1B945EFD-4F7D-4BDD-9FB1-6FB975315961" /> + + <!-- Smart pointers for FaserTruthParticle: --> + <class name="DataLink<xAOD::FaserTruthParticleContainer>" /> + <class name="std::vector<DataLink<xAOD::FaserTruthParticleContainer> >" /> + <class name="ElementLink<xAOD::FaserTruthParticleContainer>" /> + <class name="std::vector<ElementLink<xAOD::FaserTruthParticleContainer> >" /> + <class name="std::vector<std::vector<ElementLink<xAOD::FaserTruthParticleContainer> > >" /> + + <!-- Smart pointers for FaserTruthVertex: --> + <class name="DataLink<xAOD::FaserTruthVertexContainer>" /> + <class name="std::vector<DataLink<xAOD::FaserTruthVertexContainer> >" /> + <class name="ElementLink<xAOD::FaserTruthVertexContainer>" /> + <class name="std::vector<ElementLink<xAOD::FaserTruthVertexContainer> >" /> + <class name="std::vector<std::vector<ElementLink<xAOD::FaserTruthVertexContainer> > >" /> + + <!-- The helper functions: --> + <function pattern="xAOD::TruthHelpers::*" /> + +</lcgdict> diff --git a/xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthDict.h b/xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthDict.h new file mode 100644 index 0000000000000000000000000000000000000000..d1606bc55f9b4a345a685e9815963440e1ffb76d --- /dev/null +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthDict.h @@ -0,0 +1,41 @@ +#ifndef XAODFASERTRUTH_XAODFASERTRUTHDICT_H +#define XAODFASERTRUTH_XAODFASERTRUTHDICT_H + +// System include(s): +#include <vector> + +// EDM include(s): +#include "AthLinks/DataLink.h" +#include "AthLinks/ElementLink.h" + +// Local include(s): +#include "xAODFaserTruth/FaserTruthParticleContainer.h" +#include "xAODFaserTruth/FaserTruthParticleAuxContainer.h" +#include "xAODFaserTruth/FaserTruthVertexContainer.h" +#include "xAODFaserTruth/FaserTruthVertexAuxContainer.h" +#include "xAODFaserTruth/FaserTruthEventContainer.h" +#include "xAODFaserTruth/FaserTruthEventAuxContainer.h" +#include "xAODFaserTruth/xAODFaserTruthHelpers.h" + +namespace { + struct GCCXML_DUMMY_INSTANTIATION_XAODFASERTRUTH { + // The DataVector types: + xAOD::FaserTruthParticleContainer c1; + xAOD::FaserTruthVertexContainer c2; + xAOD::FaserTruthEventContainer c3; + + // The smart pointer types: + DataLink< xAOD::FaserTruthParticleContainer > dl1; + std::vector< DataLink< xAOD::FaserTruthParticleContainer > > dl2; + DataLink< xAOD::FaserTruthVertexContainer > dl3; + std::vector< DataLink< xAOD::FaserTruthVertexContainer > > dl4; + ElementLink< xAOD::FaserTruthParticleContainer > el1; + std::vector< ElementLink< xAOD::FaserTruthParticleContainer > > el2; + std::vector< std::vector< ElementLink< xAOD::FaserTruthParticleContainer > > > el3; + ElementLink< xAOD::FaserTruthVertexContainer > el4; + std::vector< ElementLink< xAOD::FaserTruthVertexContainer > > el5; + std::vector< std::vector< ElementLink< xAOD::FaserTruthVertexContainer > > > el6; + }; +} + +#endif // XAODFASERTRUTH_XAODFASERTRUTHDICT_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/xAODTruthHelpers.h b/xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthHelpers.h similarity index 68% rename from xAOD/xAODFaserTruth/xAODTruth/xAODTruthHelpers.h rename to xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthHelpers.h index cb8ca9cdb3ffee257b1af09c0d2427f8d177e8ff..42ec83ab264c536fbab7bba6afeccd10101db011 100644 --- a/xAOD/xAODFaserTruth/xAODTruth/xAODTruthHelpers.h +++ b/xAOD/xAODFaserTruth/xAODFaserTruth/xAODFaserTruthHelpers.h @@ -4,12 +4,12 @@ Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */ -// $Id: xAODTruthHelpers.h 668406 2015-05-19 15:32:15Z krasznaa $ -#ifndef XAODTRUTH_XAODTRUTHHELPERS_H -#define XAODTRUTH_XAODTRUTHHELPERS_H +// $Id: xAODFaserTruthHelpers.h 668406 2015-05-19 15:32:15Z krasznaa $ +#ifndef XAODFASERTRUTH_XAODFASERTRUTHHELPERS_H +#define XAODFASERTRUTH_XAODFASERTRUTHHELPERS_H // Local include(s): -#include "xAODTruth/TruthParticle.h" +#include "xAODFaserTruth/FaserTruthParticle.h" namespace xAOD { @@ -20,7 +20,7 @@ namespace xAOD { namespace TruthHelpers { /// Return the truthParticle associated to the given IParticle (if any) - const TruthParticle* getTruthParticle( const xAOD::IParticle& p ); + const FaserTruthParticle* getFaserTruthParticle( const xAOD::IParticle& p ); /// Return the particle's truth type (as defined by the MC Truth /// Classifier) @@ -34,4 +34,4 @@ namespace xAOD { } // namespace xAOD -#endif // XAODTRUTH_XAODTRUTHHELPERS_H +#endif // XAODFASERTRUTH_XAODFASERTRUTHHELPERS_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthEventContainer.h b/xAOD/xAODFaserTruth/xAODTruth/TruthEventContainer.h deleted file mode 100644 index eb99877bae90dab0f76ace26b4fff0b3f7371d2b..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthEventContainer.h +++ /dev/null @@ -1,22 +0,0 @@ -// -*- C++ -*- - -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: TruthEventContainer_v1.h 622193 2014-10-16 16:08:34Z krasznaa $ -#ifndef XAODTRUTH_TRUTHEVENTCONTAINER_H -#define XAODTRUTH_TRUTHEVENTCONTAINER_H - -// EDM include(s): -#include "AthContainers/DataVector.h" - -// Local include(s): -#include "xAODTruth/TruthEvent.h" - -namespace xAOD { - /// Alias - typedef DataVector< TruthEvent > TruthEventContainer; -} - -#endif // XAODTRUTH_TRUTHEVENTCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthParticleContainer.h b/xAOD/xAODFaserTruth/xAODTruth/TruthParticleContainer.h deleted file mode 100644 index 89dc05cb0e73d2cf5914a7a11b2858d17d365af4..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthParticleContainer.h +++ /dev/null @@ -1,26 +0,0 @@ -// Dear emacs, this is -*- c++ -*- - -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: TruthParticleContainer.h 622193 2014-10-16 16:08:34Z krasznaa $ -#ifndef XAODTRUTH_TRUTHPARTICLECONTAINER_H -#define XAODTRUTH_TRUTHPARTICLECONTAINER_H - -// Local include(s): -#include "xAODTruth/TruthParticle.h" -// EDM include(s): -#include "AthContainers/DataVector.h" - - -namespace xAOD { - // Alias - typedef DataVector< TruthParticle > TruthParticleContainer; -} - -// Declare a CLID for the class for Athena: -#include "xAODCore/CLASS_DEF.h" -CLASS_DEF( xAOD::TruthParticleContainer, 1237340765, 1 ) - -#endif // XAODTRUTH_TRUTHPARTICLECONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/TruthVertexContainer.h b/xAOD/xAODFaserTruth/xAODTruth/TruthVertexContainer.h deleted file mode 100644 index 464ffd7766ce27c26973140b316cb2d0682f7463..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/xAODTruth/TruthVertexContainer.h +++ /dev/null @@ -1,25 +0,0 @@ -// Dear emacs, this is -*- c++ -*- - -/* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration -*/ - -// $Id: TruthVertexContainer.h 622193 2014-10-16 16:08:34Z krasznaa $ -#ifndef XAODTRUTH_TRUTHVERTEXCONTAINER_H -#define XAODTRUTH_TRUTHVERTEXCONTAINER_H - -// Local include(s): -#include "xAODTruth/TruthVertex.h" -// EDM include(s): -#include "AthContainers/DataVector.h" - -namespace xAOD { - // Alias - typedef DataVector< TruthVertex > TruthVertexContainer; -} - -// Declare a CLID for the class for Athena: -#include "xAODCore/CLASS_DEF.h" -CLASS_DEF( xAOD::TruthVertexContainer, 1239726567, 1 ) - -#endif // XAODTRUTH_TRUTHVERTEXCONTAINER_H diff --git a/xAOD/xAODFaserTruth/xAODTruth/selection.xml b/xAOD/xAODFaserTruth/xAODTruth/selection.xml deleted file mode 100644 index f1ab8990a0e2c13bf7ef2154c6f593a9368805aa..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/xAODTruth/selection.xml +++ /dev/null @@ -1,66 +0,0 @@ -<!-- $Id: selection.xml 670153 2015-05-27 11:42:29Z tbisanz $ --> -<lcgdict> - - <!-- The TruthParticle class(es): --> - <class name="xAOD::TruthParticle" > - <field name="m_p4" transient="true" /> - <field name="m_p4Cached" transient="true" /> - </class> - <read sourceClass="xAOD::TruthParticle" version="[1-]" - targetClass="xAOD::TruthParticle" source="" target="m_p4Cached" > - <![CDATA[ - m_p4Cached = false; - ]]> - </read> - <class name="xAOD::TruthParticle::Polarization" /> - - <!-- The TruthVertex class: --> - <class name="xAOD::TruthVertex" > - <field name="m_v4" transient="true" /> - <field name="m_v4Cached" transient="true" /> - </class> - <read sourceClass="xAOD::TruthVertex" version="[1-]" - targetClass="xAOD::TruthVertex" source="" target="m_v4Cached" > - <![CDATA[ - m_v4Cached = false; - ]]> - </read> - - <!-- The TruthEvent class(es): --> - <class name="xAOD::TruthEvent" /> - <class name="xAOD::TruthEvent::PdfInfo" /> - <class name="xAOD::TruthMetaData" /> - - <!-- The persistent classes: --> - <class name="xAOD::TruthParticleContainer" - id="58F98A16-E465-4CA5-A099-73033206D8E3" /> - <class name="xAOD::TruthVertexContainer" - id="5FBAE0AB-09F7-4B6C-B066-0A003FC38ECF" /> - <class name="xAOD::TruthEventContainer" - id="6290F297-F529-40EE-9FE5-1C577678306D" /> - - <class name="xAOD::TruthParticleAuxContainer" - id="BA8FA08F-8DD6-420D-97D5-8B54EABECD65" /> - <class name="xAOD::TruthVertexAuxContainer" - id="B6BD3B02-C411-4EB9-903F-5B099D3B1A3E" /> - <class name="xAOD::TruthEventAuxContainer" - id="1B945EFD-4F7D-4BDD-9FB1-6FB975315961" /> - - <!-- Smart pointers for TruthParticle: --> - <class name="DataLink<xAOD::TruthParticleContainer>" /> - <class name="std::vector<DataLink<xAOD::TruthParticleContainer> >" /> - <class name="ElementLink<xAOD::TruthParticleContainer>" /> - <class name="std::vector<ElementLink<xAOD::TruthParticleContainer> >" /> - <class name="std::vector<std::vector<ElementLink<xAOD::TruthParticleContainer> > >" /> - - <!-- Smart pointers for TruthVertex: --> - <class name="DataLink<xAOD::TruthVertexContainer>" /> - <class name="std::vector<DataLink<xAOD::TruthVertexContainer> >" /> - <class name="ElementLink<xAOD::TruthVertexContainer>" /> - <class name="std::vector<ElementLink<xAOD::TruthVertexContainer> >" /> - <class name="std::vector<std::vector<ElementLink<xAOD::TruthVertexContainer> > >" /> - - <!-- The helper functions: --> - <function pattern="xAOD::TruthHelpers::*" /> - -</lcgdict> diff --git a/xAOD/xAODFaserTruth/xAODTruth/xAODTruthDict.h b/xAOD/xAODFaserTruth/xAODTruth/xAODTruthDict.h deleted file mode 100644 index e7aec67bad32a4ef53afa3f23e493bc4ad0696a7..0000000000000000000000000000000000000000 --- a/xAOD/xAODFaserTruth/xAODTruth/xAODTruthDict.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef XAODTRUTH_XAODTRUTHDICT_H -#define XAODTRUTH_XAODTRUTHDICT_H - -// System include(s): -#include <vector> - -// EDM include(s): -#include "AthLinks/DataLink.h" -#include "AthLinks/ElementLink.h" - -// Local include(s): -#include "xAODTruth/TruthParticleContainer.h" -#include "xAODTruth/TruthParticleAuxContainer.h" -#include "xAODTruth/TruthVertexContainer.h" -#include "xAODTruth/TruthVertexAuxContainer.h" -#include "xAODTruth/TruthEventContainer.h" -#include "xAODTruth/TruthEventAuxContainer.h" -#include "xAODTruth/xAODTruthHelpers.h" - -namespace { - struct GCCXML_DUMMY_INSTANTIATION_XAODTRUTH { - // The DataVector types: - xAOD::TruthParticleContainer c1; - xAOD::TruthVertexContainer c2; - xAOD::TruthEventContainer c3; - - // The smart pointer types: - DataLink< xAOD::TruthParticleContainer > dl1; - std::vector< DataLink< xAOD::TruthParticleContainer > > dl2; - DataLink< xAOD::TruthVertexContainer > dl3; - std::vector< DataLink< xAOD::TruthVertexContainer > > dl4; - ElementLink< xAOD::TruthParticleContainer > el1; - std::vector< ElementLink< xAOD::TruthParticleContainer > > el2; - std::vector< std::vector< ElementLink< xAOD::TruthParticleContainer > > > el3; - ElementLink< xAOD::TruthVertexContainer > el4; - std::vector< ElementLink< xAOD::TruthVertexContainer > > el5; - std::vector< std::vector< ElementLink< xAOD::TruthVertexContainer > > > el6; - }; -} - -#endif // XAODTRUTH_XAODTRUTHDICT_H