ATLAS Offline Software
Loading...
Searching...
No Matches
TrackCaloCluster_v1.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2/*
3 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
4*/
5// $Id: TrackCaloCluster_v1.h $
6#ifndef XAODPFLOW_VERSIONS_TRACKCALOCLUSTER_V1_H
7#define XAODPFLOW_VERSIONS_TRACKCALOCLUSTER_V1_H
8
9// Core include(s):
11#include "AthLinks/ElementLink.h"
12
13// xAOD include(s):
14#include "xAODBase/IParticle.h"
17
18namespace xAOD {
24
26
27 public:
28
30 enum Taste { Charged = 0, Neutral, Combined };
31
32 // Default Constructor
34 // Destuctor
36
40 virtual double pt() const;
42 virtual double eta() const;
44 virtual double phi() const;
46 virtual double m() const;
48 virtual double e() const;
50 virtual double rapidity() const;
52 virtual int taste() const;
53
56
58 virtual FourMom_t p4() const;
59
61 typedef ROOT::Math::LorentzVector<ROOT::Math::PtEtaPhiM4D<double> > GenVecFourMom_t;
62
65
67 virtual Type::ObjectType type() const;
69
75 void setParameters(float pt, float eta, float phi, float m, TrackCaloCluster_v1::Taste taste,
77 const std::vector< ElementLink< xAOD::CaloClusterContainer > >& clusters);
79
89 const std::vector< ElementLink<xAOD::CaloClusterContainer> > & caloClusterLinks() const;
93
94 };
95
96}
97
98#endif // XAODPFLOW_VERSIONS_TRACKCALOCLUSTER_V1_H
An STL vector of pointers that by default owns its pointed-to elements.
IParticle()=default
TLorentzVector FourMom_t
Definition of the 4-momentum type.
virtual double m() const
The invariant mass of the particle..
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type (GenVector version)
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : GenVector version.
virtual double phi() const
The azimuthal angle ( ) of the particle (has range to .)
virtual int taste() const
The taste of the particle.
Taste
Type of TrackCaloCluster - Charged - Neutral - Combined.
const ElementLink< xAOD::TrackParticleContainer > & trackParticleLink() const
virtual double pt() const
The transverse momentum ( ) of the particle.
virtual double eta() const
The pseudorapidity ( ) of the particle.
void setCaloClusterLinks(const std::vector< ElementLink< xAOD::CaloClusterContainer > > &caloClusterLinks)
Set the links to the CaloClusters.
const xAOD::TrackParticle * trackParticle() const
Returns a pointer (which can be NULL) to the xAOD::TrackParticle associated with this TrackCaloCluste...
virtual double rapidity() const
The true rapidity (y) of the particle.
IParticle::FourMom_t FourMom_t
Definition of the 4-momentum type.
virtual FourMom_t p4() const
The full 4-momentum of the particle.
virtual double e() const
The total energy of the particle.
void setTrackParticleLink(const ElementLink< xAOD::TrackParticleContainer > &particle)
Set the link to the TrackParticle.
const std::vector< ElementLink< xAOD::CaloClusterContainer > > & caloClusterLinks() const
Returns a vector to the links (which can be invalid) to the xAOD::CaloClusters associated with this T...
void setParameters(float pt, float eta, float phi, float m, TrackCaloCluster_v1::Taste taste, const ElementLink< xAOD::TrackParticleContainer > &particle, const std::vector< ElementLink< xAOD::CaloClusterContainer > > &clusters)
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
TrackParticle_v1 TrackParticle
Reference the current persistent version: