10#define TAUTRACK_V1_ACCESSORS
58 return Type::CompositeParticle;
80 return thisTracksFlags[
flag];
86 return ((f&flags)==flags);
93 thisTracksFlags[
flag] = value;
94 f = thisTracksFlags.to_ulong();
106 return ( ( xTrackParticle->
z0() + xTrackParticle->
vz() - zv ) *
107 std::sin( xTrackParticle->
theta() ) );
109 std::cerr <<
"ERROR xAOD::TauTrack::z0sinThetaTJVA cannot get TauJet" << std::endl;
135 return std::sqrt(std::fabs(this->
d0TJVA())*this->
pt()/(0.3 ));
145 return tau->
jet()->
p4().DeltaR(this->
p4());
147 std::cerr <<
"ERROR xAOD::TauTrack::z0sinThetaTJVA cannot get TauJet" << std::endl;
155 if( !
acc )
return false;
156 if( !
acc->isAvailable( *
this ) )
return false;
159 value = ( *acc )( *this );
165 ( *( xAODTau::trackDetailsAccessorV3<float>(
detail ) ) )( *
this ) = value;
177 return bdtScoreAcc(*this).at(i);
182 return bdtScoreAcc( *this ).size();
187 bdtScoreAcc( *this ).push_back(
score);
192 bdtScoreAcc( *this ).clear();
Scalar eta() const
pseudorapidity method
#define AUXSTORE_PRIMITIVE_GETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME)
Macro creating a getter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of primitive auxiliary properties.
#define AUXSTORE_OBJECT_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of complex auxiliary properties.
A number of constexpr particle constants to avoid hardcoding them directly in various places.
bool isValid() const
Test to see if the link can be dereferenced.
Class providing the definition of the 4-vector interface.
TLorentzVector FourMom_t
Definition of the 4-momentum type.
SG::Accessor< T, ALLOC > Accessor
virtual FourMom_t p4() const
The full 4-momentum of the particle.
const VertexLink_t & vertexLink() const
const Vertex * vertex() const
virtual double e() const
The total energy of the particle.
void addBdtScore(const float score)
add a cluster to the tau
virtual double rapidity() const
The true rapidity (y) of the particle.
size_t nBdtScores() const
bool detail(TauJetParameters::TrackDetail detail, float &value) const
virtual FourMom_t p4() const
The full 4-momentum of the particle.
void clearTrackLinks()
Remove all tracks from the collection.
virtual double eta() const
The pseudorapidity ( ) of the particle.
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal taus type.
float bdtScore(size_t i) const
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for taus.
TauTrack_v1()
Default constructor.
void setFlag(TauJetParameters::TauTrackFlag flag, bool value)
bool flag(TauJetParameters::TauTrackFlag flag) const
float z0sinthetaSigTJVA() const
void clearBdtScores()
Remove all clusters from the tau.
void setP4(double pt, double eta, double phi, double m)
Set methods for IParticle values.
float z0sinthetaTJVA() const
virtual double phi() const
The azimuthal angle ( ) of the particle.
bool flagWithMask(unsigned int) const
virtual double pt() const
The transverse momentum ( ) of the particle.
void addTrackLink(const ElementLink< TrackParticleContainer > &tr)
add a track to the collection
void setDetail(TauJetParameters::TrackDetail detail, float value)
float dRJetSeedAxis(const xAOD::IParticle &) const
std::vector< ElementLink< xAOD::TrackParticleContainer > > TrackParticleLinks_t
float z0sinThetaTJVA(const xAOD::IParticle &) const
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
const TrackParticle * track() const
virtual double m() const
The invariant mass of the particle.
float z0() const
Returns the parameter.
float theta() const
Returns the parameter, which has range 0 to .
float vz() const
The z origin for the parameters.
float charge() const
Returns the charge.
float z() const
Returns the z position.
TauTrackFlag
Enum for tau track flags.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
static const SG::Accessor< float > d0TJVAAcc("d0TJVA")
setStrategy setMatchFlag ElementLink< TrackParticleContainer >
static const SG::AuxElement::Accessor< Vertex_v1::TrackParticleLinks_t > trackAcc("trackParticleLinks")
Accessor for the track links.
setRcore setEtHad setFside pt
static const SG::Accessor< float > z0sinthetaTJVAAcc("z0sinthetaTJVA")
static const double PION_MASS
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TauJet_v3 TauJet
Definition of the current "tau version".
setBGCode setTAP setLVL2ErrorBits bool
static const SG::AuxElement::Accessor< ElementLink< IParticleContainer > > acc("originalObjectLink")
Object used for setting/getting the dynamic decoration in question.
static const SG::Accessor< float > d0SigTJVAAcc("d0SigTJVA")
static const SG::Accessor< float > z0sinthetaSigTJVAAcc("z0sinthetaSigTJVA")