diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/CMakeLists.txt b/PhysicsAnalysis/TruthParticleID/McParticleTools/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..be474d1fb09cfb535fff4b286a61e3344b8dbaeb --- /dev/null +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/CMakeLists.txt @@ -0,0 +1,38 @@ +################################################################################ +# Package: McParticleTools +################################################################################ + +# Declare the package name: +atlas_subdir( McParticleTools ) + +# Declare the package's dependencies: +atlas_depends_on_subdirs( PRIVATE + Control/AthenaBaseComps + Control/CxxUtils + Control/DataModel + Control/StoreGate + Event/EventKernel + GaudiKernel + Generators/GenAnalysisTools/TruthHelper + Generators/GeneratorObjects + PhysicsAnalysis/TruthParticleID/McParticleEvent + PhysicsAnalysis/TruthParticleID/McParticleKernel + PhysicsAnalysis/TruthParticleID/McParticleUtils ) + +# External dependencies: +find_package( Boost COMPONENTS filesystem thread system ) +find_package( CLHEP ) +find_package( HepMC ) +find_package( HepPDT ) +find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread ) + +# Component(s) in the package: +atlas_add_component( McParticleTools + src/*.cxx + src/components/*.cxx + INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS} + LINK_LIBRARIES ${Boost_LIBRARIES} ${HEPPDT_LIBRARIES} ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} AthenaBaseComps CxxUtils DataModel StoreGateLib SGtests EventKernel GaudiKernel TruthHelper GeneratorObjects McParticleEvent McParticleKernel McParticleUtils ) + +# Install files from the package: +atlas_install_headers( McParticleTools ) + diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx index df610602df7570587689e55184ab92d8666cab26..f439b289f7bc1958218e5e95da57727cd03de601 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx @@ -346,6 +346,7 @@ StatusCode EtaPtFilterTool::addVertex( const HepMC::GenVertex* srcVtx, HepMC::Ge if ( 0 == p ) { p = new HepMC::GenParticle; p->set_momentum( (*parent)->momentum() ); + p->set_generated_mass( (*parent)->generated_mass() ); p->set_pdg_id( (*parent)->pdg_id() ); p->set_status( (*parent)->status() ); p->set_flow( (*parent)->flow() ); @@ -368,6 +369,7 @@ StatusCode EtaPtFilterTool::addVertex( const HepMC::GenVertex* srcVtx, HepMC::Ge if ( 0 == p ) { p = new HepMC::GenParticle; p->set_momentum( (*child)->momentum() ); + p->set_generated_mass( (*child)->generated_mass() ); p->set_pdg_id( (*child)->pdg_id() ); if ( m_butKeepAllGeneratorStable && !isAccepted(*child) && (*child)->status() == 2 ) p->set_status( 10902 ) ; diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx index 2a34276d882a81d946eede3d39639a37649d4f0f..0668549bcceb3fefe2ee3de02669ef6477148813 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/McVtxFilterTool.cxx @@ -343,6 +343,7 @@ void McVtxFilterTool::addVertex( const HepMC::GenVertex* srcVtx, if ( 0 == mother ) { mother = new HepMC::GenParticle; mother->set_momentum( (*parent)->momentum() ); + mother->set_generated_mass( (*parent)->generated_mass() ); mother->set_pdg_id( (*parent)->pdg_id() ); mother->set_status( (*parent)->status() ); mother->set_flow( (*parent)->flow() ); @@ -369,6 +370,7 @@ void McVtxFilterTool::addVertex( const HepMC::GenVertex* srcVtx, } else { daughter = new HepMC::GenParticle; daughter->set_momentum( (*child)->momentum() ); + daughter->set_generated_mass( (*child)->generated_mass() ); daughter->set_pdg_id( (*child)->pdg_id() ); daughter->set_status( (*child)->status() ); daughter->set_flow( (*child)->flow() ); diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx index 1c6dba85bfd0239689e8c0f7326cb866573b8b73..d565d0bc841246ef2027132193422c0cf55070da 100755 --- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx +++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx @@ -208,6 +208,7 @@ StatusCode VtxBasedFilterTool::addVertex( const HepMC::GenVertex* srcVtx, if ( 0 == p ) { p = new HepMC::GenParticle; p->set_momentum( (*parent)->momentum() ); + p->set_generated_mass( (*parent)->generated_mass() ); p->set_pdg_id( (*parent)->pdg_id() ); p->set_status( (*parent)->status() ); p->set_flow( (*parent)->flow() ); @@ -230,6 +231,7 @@ StatusCode VtxBasedFilterTool::addVertex( const HepMC::GenVertex* srcVtx, if ( 0 == p ) { p = new HepMC::GenParticle; p->set_momentum( (*child)->momentum() ); + p->set_generated_mass( (*child)->generated_mass() ); p->set_pdg_id( (*child)->pdg_id() ); p->set_flow( (*child)->flow() ); p->set_polarization( (*child)->polarization() );