31 return StatusCode::SUCCESS;
46 if (pfo->
eta() != pfo->
eta() || pfo->
phi() != pfo->
phi() || pfo->
e() != pfo->
e()) {
47 ATH_MSG_ERROR(
"Will not convert PFO with eta value of " << pfo->
eta() <<
" -> return to Tool_TauConstituentGetter");
48 return StatusCode::FAILURE;
56 ATH_MSG_ERROR(
"Input neutral PFO should have null mass. If reconstruction runs from AOD, PFOs must be rebuilt!");
57 return StatusCode::FAILURE;
63 return StatusCode::SUCCESS;
67 double constituentMass = pfo->
m();
76 TLorentzVector momentum;
87 double deltaR_toTauJet = tlv_intAxis.DeltaR( pfo->
p4() );
106 int nPi0sPerCluster = 0;
108 ATH_MSG_WARNING(
"WARNING: Could not retrieve nPi0Proto. Will set it to 1.");
121 std::vector<const xAOD::IParticle*> list_TauShots = std::vector<const xAOD::IParticle*>(0);
123 ATH_MSG_DEBUG(
"WARNING: Could not get shots from current pfo");
126 for (
unsigned int iShot=0; iShot<list_TauShots.size(); iShot++) {
128 if (list_TauShots.at(iShot) ==
nullptr) {
134 TLorentzVector shotMomentum;
143 ATH_MSG_DEBUG(
"WARNING: Could not get nPhotons for this shot! Set to -1");
146 tauConstituent->
addShot(shotConstituent);
149 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
A number of constexpr particle constants to avoid hardcoding them directly in various places.
static StatusCode bindToolHandle(ToolHandle< T > &, std::string)
void addShot(TauConstituent *shot)
static double DefaultBDTValue()
void setNPhotonsInShot(int nPhotons)
void makePrivateStore()
Create a new (empty) private store for this object.
bool attribute(PFODetails::PFOAttributes AttributeType, T &anAttribute) const
get a PFO Variable via enum
bool isCharged() const
is a charged PFO
bool associatedParticles(PFODetails::PFOParticleType ParticleType, std::vector< const IParticle * > &theParticles) const
get a vector of PFO constituent particle types via enum
float bdtPi0Score() const
get BDT Score used to classify clusters as Pi0 like or not
virtual FourMom_t p4() const
The full 4-momentum of the particle.
virtual double eta() const
The pseudorapidity ( ) of the particle.
virtual double m() const
The invariant mass of the particle.
virtual double e() const
The total energy of the particle.
float charge() const
get charge of PFO
virtual double phi() const
The azimuthal angle ( ) of the particle.
virtual FourMom_t p4() const
The full 4-momentum of the particle.
static void SetP4EEtaPhiM(TLorentzVector &hlv, double e, double eta, double phi, double m)
constexpr double piZeroMassInMeV
the mass of the pi zero (in MeV)
PFO_v1 PFO
Definition of the current "pfo version".
TauJet_v3 TauJet
Definition of the current "tau version".