ATLAS Offline Software
Loading...
Searching...
No Matches
TruthCollectionMakerPhotonSim.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
6// TruthCollectionMakerPhotonSim.cxx
7// Create truth photonsim collection decorated with photonsim decay specific variables
8
9// Class header file
13#include "GaudiKernel/SystemOfUnits.h"
14
16 static const SG::ConstAccessor<unsigned int> classifierParticleOriginAcc("classifierParticleOrigin");
17 std::vector<int> entries;
18 entries.reserve(truthParticles->size());
19 for (const auto* truthParticle : *truthParticles) {
20 const unsigned int origin = classifierParticleOriginAcc(*truthParticle);
21 entries.push_back( ((std::abs(truthParticle->pdgId()) == MC::PHOTON) && truthParticle->isGenStable() && ((origin != 42 && origin != 23 ) || (truthParticle->pt() > 20.0*Gaudi::Units::GeV))) ? 1 : 0);
22 }
23 return entries;
24}
Helper class to provide constant type-safe access to aux data.
ATLAS-specific HepMC functions.
size_type size() const noexcept
Returns the number of elements in the collection.
virtual std::vector< int > updateMask(const xAOD::TruthParticleContainer *) const override final
Helper class to provide constant type-safe access to aux data.
double entries
Definition listroot.cxx:49
static const int PHOTON
TruthParticleContainer_v1 TruthParticleContainer
Declare the latest version of the truth particle container.