ATLAS Offline Software
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
xAOD::TauJet_v3 Class Reference

Class describing a tau jet. More...

#include <TauJet_v3.h>

Inheritance diagram for xAOD::TauJet_v3:
Collaboration diagram for xAOD::TauJet_v3:

Public Types

typedef ElementLink< xAOD::JetContainerJetLink_t
 
typedef ElementLink< xAOD::VertexContainerVertexLink_t
 
typedef std::vector< ElementLink< xAOD::TauTrackContainer > > TauTrackLinks_t
 
typedef std::vector< ElementLink< xAOD::IParticleContainer > > IParticleLinks_t
 
typedef std::vector< ElementLink< xAOD::PFOContainer > > PFOLinks_t
 
using TypelessConstAccessor = ConstAuxElement::TypelessConstAccessor
 
template<class T , class ALLOC = AuxAllocator_t<T>>
using ConstAccessor = SG::ConstAccessor< T, ALLOC >
 
template<class T , class ALLOC = AuxAllocator_t<T>>
using Accessor = SG::Accessor< T, ALLOC >
 
template<class T , class ALLOC = AuxAllocator_t<T>>
using Decorator = SG::Decorator< T, ALLOC >
 

Public Member Functions

 TauJet_v3 ()
 Default constructor. More...
 
float charge () const
 
void setCharge (float)
 
unsigned int ROIWord () const
 the ROIWord, in case TauJet is used in EF trigger More...
 
void setROIWord (unsigned int)
 
bool hasDiscriminant (TauJetParameters::TauID discID) const
 Check if class contains requested discriminant. More...
 
double discriminant (TauJetParameters::TauID discID) const
 Get value of discriminant. More...
 
void setDiscriminant (TauJetParameters::TauID discID, double disc)
 Set value of discriminant. More...
 
bool isTau (TauJetParameters::IsTauFlag flag) const
 Get Flag for tau acceptance based on predefined arbitrary criteria. More...
 
void setIsTau (TauJetParameters::IsTauFlag flag, bool value)
 Set Flag for tau acceptance based on predefined arbitrary criteria. More...
 
bool detail (TauJetParameters::Detail detail, int &value) const
 Get and set values of common details variables via enum. More...
 
bool detail (TauJetParameters::Detail detail, float &value) const
 
bool detail (TauJetParameters::Detail detail, const IParticle *&value) const
 
void setDetail (TauJetParameters::Detail detail, int value)
 
void setDetail (TauJetParameters::Detail detail, float value)
 
void setDetail (TauJetParameters::Detail detail, const IParticle *value, const IParticleContainer *cont=0)
 
template<class T >
xAODTAU_return_type< T >::type detail (TauJetParameters::Detail detail) const
 
bool panTauDetail (TauJetParameters::PanTauDetails panTauDetail, int &value) const
 Get and set values of pantau details variables via enum. More...
 
bool panTauDetail (TauJetParameters::PanTauDetails panTauDetail, float &value) const
 
void setPanTauDetail (TauJetParameters::PanTauDetails panTauDetail, int value)
 
void setPanTauDetail (TauJetParameters::PanTauDetails panTauDetail, float value)
 
template<class T >
xAODTAU_return_type< T >::type panTauDetail (TauJetParameters::PanTauDetails panTauDetail) const
 
const JetLink_tjetLink () const
 
void setJetLink (const JetLink_t &jetLink)
 
void setJet (const xAOD::JetContainer *cont, const xAOD::Jet *jet)
 
const Jetjet () const
 
const VertexLink_tvertexLink () const
 
void setVertexLink (const VertexLink_t &vertexLink)
 
void setVertex (const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
 
const Vertexvertex () const
 
const VertexLink_tsecondaryVertexLink () const
 
void setSecondaryVertexLink (const VertexLink_t &vertexLink)
 
void setSecondaryVertex (const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
 
const VertexsecondaryVertex () const
 
const TauTrackLinks_t tauTrackLinks (TauJetParameters::TauTrackFlag=TauJetParameters::TauTrackFlag::classifiedCharged) const
 
const TauTrackLinks_t tauTrackLinksWithMask (unsigned int) const
 
TauTrackLinks_tallTauTrackLinksNonConst ()
 In order to sort track links. More...
 
const TauTrackLinks_tallTauTrackLinks () const
 
void setAllTauTrackLinks (const TauTrackLinks_t &tauTracks)
 
const TauTracktrack (size_t i, TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged, int *container_index=0) const
 Get the pointer to a given tauTrack associated with this tau /*container index needed by trackNonConst*‍/. More...
 
const TauTracktrackWithMask (size_t i, unsigned int mask, int *container_index=0) const
 
TauTracktrackNonConst (size_t i, TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged)
 
std::vector< const TauTrack * > tracks (TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
 Get the v<const pointer> to a given tauTrack collection associated with this tau. More...
 
std::vector< const TauTrack * > tracksWithMask (unsigned int mask) const
 Get the v<const pointer> to a given tauTrack collection associated with this tau. More...
 
std::vector< const TauTrack * > allTracks () const
 Get the v<const pointer> to all tracks associated with this tau, regardless of classification. More...
 
size_t nTracks (TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
 
size_t nTracksCharged () const
 
size_t nTracksIsolation () const
 
size_t nTracksWithMask (unsigned int classification) const
 
size_t nAllTracks () const
 
void addTauTrackLink (const ElementLink< TauTrackContainer > &tr)
 add a TauTrack to the tau More...
 
void clearTauTrackLinks ()
 Remove all tracks from the tau. More...
 
const IParticleLinks_tclusterLinks () const
 
void setClusterLinks (const IParticleLinks_t &clusters)
 
const IParticlecluster (size_t i) const
 Get the pointer to a given cluster associated with this tau. More...
 
std::vector< const IParticle * > clusters () const
 
FourMom_t calibratedCluster (size_t i, xAOD::CaloCluster::State state=xAOD::CaloCluster::State::CALIBRATED) const
 Get TLV to a given cluster in calibrated state. More...
 
size_t nClusters () const
 
void addClusterLink (const ElementLink< IParticleContainer > &tr)
 add a cluster link to the tau More...
 
void clearClusterLinks ()
 Remove all clusters from the tau. More...
 
std::vector< xAOD::CaloVertexedTopoClustervertexedClusters () const
 
const IParticleLinks_tpi0Links () const
 
void setPi0Links (const IParticleLinks_t &pi0s)
 
const IParticlepi0 (size_t i) const
 Get the pointer to a given pi0 associated with this tau. More...
 
size_t nPi0s () const
 
void addPi0Link (const ElementLink< IParticleContainer > &tr)
 add a pi0 link to the tau More...
 
void clearPi0Links ()
 Remove all pi0s from the tau. More...
 
int trackFilterProngs () const
 
void setTrackFilterProngs (int)
 
int trackFilterQuality () const
 
void setTrackFilterQuality (int)
 
float pi0ConeDR () const
 
void setPi0ConeDR (float)
 
const PFOLinks_thadronicPFOLinks () const
 
void setHadronicPFOLinks (const PFOLinks_t &hadronicPFOs)
 
const PFOhadronicPFO (size_t i) const
 Get the pointer to a given hadronic PFO associated with this tau. More...
 
size_t nHadronicPFOs () const
 Get the number of hadronic PFO particles associated with this tau. More...
 
void addHadronicPFOLink (const ElementLink< PFOContainer > &pfo)
 add a hadronic PFO to the tau More...
 
void clearHadronicPFOLinks ()
 Remove all hadronic PFOs from the tau. More...
 
const PFOLinks_tshotPFOLinks () const
 
void setShotPFOLinks (const PFOLinks_t &shotPFOs)
 
const PFOshotPFO (size_t i) const
 Get the pointer to a given shot PFO associated with this tau. More...
 
size_t nShotPFOs () const
 Get the number of shot PFO particles associated with this tau. More...
 
void addShotPFOLink (const ElementLink< PFOContainer > &pfo)
 add a shot PFO to the tau More...
 
void clearShotPFOLinks ()
 Remove all shot PFOs from the tau. More...
 
const PFOLinks_tchargedPFOLinks () const
 default pfos More...
 
void setChargedPFOLinks (const PFOLinks_t &chargedPFOs)
 
const PFOchargedPFO (size_t i) const
 Get the pointer to a given charged PFO associated with this tau. More...
 
size_t nChargedPFOs () const
 Get the number of charged PFO particles associated with this tau. More...
 
void addChargedPFOLink (const ElementLink< PFOContainer > &pfo)
 add a charged PFO to the tau More...
 
void clearChargedPFOLinks ()
 Remove all charged PFOs from the tau. More...
 
const PFOLinks_tneutralPFOLinks () const
 
void setNeutralPFOLinks (const PFOLinks_t &neutralPFOs)
 
const PFOneutralPFO (size_t i) const
 Get the pointer to a given neutral PFO associated with this tau. More...
 
size_t nNeutralPFOs () const
 Get the number of neutral PFO particles associated with this tau. More...
 
void addNeutralPFOLink (const ElementLink< PFOContainer > &pfo)
 add a neutral PFO to the tau More...
 
void clearNeutralPFOLinks ()
 Remove all neutral PFOs from the tau. More...
 
const PFOLinks_tpi0PFOLinks () const
 
void setPi0PFOLinks (const PFOLinks_t &pi0PFOs)
 
const PFOpi0PFO (size_t i) const
 Get the pointer to a given pi0 PFO associated with this tau. More...
 
size_t nPi0PFOs () const
 Get the number of pi0 PFO particles associated with this tau. More...
 
void addPi0PFOLink (const ElementLink< PFOContainer > &pfo)
 add a pi0 PFO to the tau More...
 
void clearPi0PFOLinks ()
 Remove all pi0 PFOs from the tau. More...
 
const PFOLinks_tprotoChargedPFOLinks () const
 cellbased pfos More...
 
void setProtoChargedPFOLinks (const PFOLinks_t &protoChargedPFOs)
 
const PFOprotoChargedPFO (size_t i) const
 Get the pointer to a given cellbased_charged PFO associated with this tau. More...
 
size_t nProtoChargedPFOs () const
 Get the number of cellbased_charged PFO particles associated with this tau. More...
 
void addProtoChargedPFOLink (const ElementLink< PFOContainer > &pfo)
 add a cellbased_charged PFO to the tau More...
 
void clearProtoChargedPFOLinks ()
 Remove all cellbased_charged PFOs from the tau. More...
 
const PFOLinks_tprotoNeutralPFOLinks () const
 
void setProtoNeutralPFOLinks (const PFOLinks_t &protoNeutralPFOs)
 
const PFOprotoNeutralPFO (size_t i) const
 Get the pointer to a given cellbased_neutral PFO associated with this tau. More...
 
size_t nProtoNeutralPFOs () const
 Get the number of cellbased_neutral PFO particles associated with this tau. More...
 
void addProtoNeutralPFOLink (const ElementLink< PFOContainer > &pfo)
 add a cellbased_neutral PFO to the tau More...
 
void clearProtoNeutralPFOLinks ()
 Remove all cellbased_neutral PFOs from the tau. More...
 
const PFOLinks_tprotoPi0PFOLinks () const
 
void setProtoPi0PFOLinks (const PFOLinks_t &protoPi0PFOs)
 
const PFOprotoPi0PFO (size_t i) const
 Get the pointer to a given cellbased_pi0 PFO associated with this tau. More...
 
size_t nProtoPi0PFOs () const
 Get the number of cellbased_pi0 PFO particles associated with this tau. More...
 
void addProtoPi0PFOLink (const ElementLink< PFOContainer > &pfo)
 add a cellbased_pi0 PFO to the tau More...
 
void clearProtoPi0PFOLinks ()
 Remove all cellbased_pi0 PFOs from the tau. More...
 
void dump () const
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor< T, ALLOC >::reference_type auxdata (const std::string &name)
 Fetch an aux data variable, as a non-const reference. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor< T, ALLOC >::const_reference_type auxdata (const std::string &name) const
 Fetch an aux data variable, as a const reference. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED bool isAvailableWritable (const std::string &name, const std::string &clsname="")
 Check if an aux variable is available for writing. More...
 
void assign (const AuxElement &other, bool warnUnlocked=false)
 Assignment. More...
 
const SG::AuxVectorDatacontainer () const
 Return the container holding this element. More...
 
SG::AuxVectorDatacontainer ()
 Return the container holding this element. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor< T, ALLOC >::const_reference_type auxdataConst (const std::string &name) const
 Fetch an aux data variable, as a const reference. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor< T, ALLOC >::const_reference_type auxdataConst (const std::string &name, const std::string &clsname) const
 Fetch an aux data variable, as a const reference. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED bool isAvailableWritableAsDecoration (const std::string &name, const std::string &clsname="") const
 Check if an aux variable is available for writing as a decoration. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Decorator< T, ALLOC >::reference_type auxdecor (const std::string &name) const
 Fetch an aux decoration, as a non-const reference. More...
 
template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Decorator< T, ALLOC >::reference_type auxdecor (const std::string &name, const std::string &clsname) const
 Fetch an aux decoration, as a non-const reference. More...
 
void makePrivateStore ()
 Create a new (empty) private store for this object. More...
 
template<class U1 >
void makePrivateStore (const U1 &other, bool warnUnlocked=false)
 Create a new private store for this object and copy aux data. More...
 
template<class U1 >
void makePrivateStore (const U1 *other, bool warnUnlocked=false)
 Create a new private store for this object and copy aux data. More...
 
void releasePrivateStore ()
 Release and free any private store associated with this object. More...
 
void setStore (const SG::IConstAuxStore *store)
 Set the store associated with this object. More...
 
void setStore (SG::IAuxStore *store)
 Set the store associated with this object. More...
 
void setStore (const DataLink< SG::IConstAuxStore > &store)
 Set the store associated with this object. More...
 
void setConstStore (const SG::IConstAuxStore *store)
 Synonym for setStore with IConstAuxStore. More...
 
void setNonConstStore (SG::IAuxStore *store)
 Synonym for setStore with IAuxStore. More...
 
bool usingPrivateStore () const
 Test to see if this object is currently using a private store. More...
 
bool usingStandaloneStore () const
 Test to see if this object is currently using a standalone store. More...
 
const SG::IConstAuxStoregetConstStore () const
 Return the current store, as a const interface. More...
 
SG::IAuxStoregetStore () const
 Return the current store, as a non-const interface. More...
 
void clearCache ()
 Clear the cached aux data pointers. More...
 
const SG::auxid_set_tgetAuxIDs () const
 Return a set of identifiers for existing data items for this object. More...
 
const SG::auxid_set_tgetDecorIDs () const
 Return a set of identifiers for decorations for this object. More...
 
bool hasStore () const
 Return true if this object has an associated store. More...
 
bool hasNonConstStore () const
 Return true if this object has an associated non-const store. More...
 
bool clearDecorations () const
 Clear all decorations. More...
 
bool trackIndices () const
 Return true if index tracking is enabled for this object. More...
 
size_t index () const
 Return the index of this element within its container. More...
 
size_t index () const
 Return the index of this element within its container. More...
 

Static Public Attributes

static constexpr bool supportsThinning = true
 Mark that this type supports thinning operations. More...
 

Protected Member Functions

bool noPrivateData () const
 True if this element has no private data. More...
 
bool havePrivateData () const
 True if this element currently has private data. More...
 
bool hadPrivateData () const
 True if this element had private data before it was added to its current container. More...
 

Private Types

enum  PrivateStoreState : uint8_t { PrivateStoreState::NO_PRIVATE = 0, PrivateStoreState::HAVE_PRIVATE = 1, PrivateStoreState::HAD_PRIVATE = 2 }
 The current private data state. More...
 

Private Member Functions

void releasePrivateStoreForDtor ()
 Out-of-line portion of destructor. More...
 
void setIndex (size_t index, SG::AuxVectorData *container)
 Set the index/container for this element. More...
 
bool setIndexPrivate (size_t index, SG::AuxVectorData *container)
 Set the index/container for this element. More...
 
void makePrivateStore1 (const void *other, bool warnUnlocked)
 Create a new private store for this object and copy aux data. More...
 
void makePrivateStore1 (const AuxElement *other, bool warnUnlocked)
 Create a new private store for this object and copy aux data. More...
 
AuxElementStandaloneData * setStore1 (const SG::IConstAuxStore *store)
 Set the store associated with this object. More...
 
void clearAux ()
 Clear all aux data associated with this element. More...
 
void copyAux (const ConstAuxElement &other, bool warnUnlocked=false)
 Copy aux data from another object. More...
 
void setNoPrivateData ()
 Record that this element does not have private data. More...
 
void setHavePrivateData ()
 Record that this element currently has private data. More...
 
void setHadPrivateData ()
 Record that this element used to have private data. More...
 

Static Private Member Functions

static void clearAuxHelper (AuxVectorData &container, size_t index)
 Clear all aux data associated with an element. More...
 
static void copyAuxHelper (AuxVectorData &container, size_t index, const ConstAuxElement &other, bool warnUnlocked)
 Copy aux data from another object. More...
 

Private Attributes

const SG::AuxVectorDatam_container
 The container of which this object is an element. More...
 
size_t m_index
 The index of this element within its container. More...
 
PrivateStoreState m_privateStoreState
 

xAOD::IParticle functions

typedef ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
 Base 4 Momentum type for taus. More...
 
virtual double pt () const
 The transverse momentum ( \(p_T\)) of the particle. More...
 
virtual double eta () const
 The pseudorapidity ( \(\eta\)) of the particle. More...
 
virtual double phi () const
 The azimuthal angle ( \(\phi\)) of the particle. More...
 
virtual double e () const
 The total energy of the particle. More...
 
virtual double m () const
 The invariant mass of the particle. More...
 
virtual double rapidity () const
 The true rapidity (y) of the particle. More...
 
virtual FourMom_t p4 () const
 The full 4-momentum of the particle. More...
 
virtual FourMom_t p4 (const TauJetParameters::TauCalibType calib) const
 
GenVecFourMom_t genvecP4 () const
 The full 4-momentum of the particle : internal taus type. More...
 
GenVecFourMom_t genvecP4 (const TauJetParameters::TauCalibType calib) const
 
void setP4 (double pt, double eta, double phi, double m)
 Set methods for IParticle values. More...
 
bool setP4 (const TauJetParameters::TauCalibType calib, double pt, double eta, double phi, double m)
 
double ptJetSeed () const
 
double etaJetSeed () const
 
double phiJetSeed () const
 
double mJetSeed () const
 
double ptDetectorAxis () const
 
double etaDetectorAxis () const
 
double phiDetectorAxis () const
 
double mDetectorAxis () const
 
double ptIntermediateAxis () const
 
double etaIntermediateAxis () const
 
double phiIntermediateAxis () const
 
double mIntermediateAxis () const
 
double ptTauEnergyScale () const
 
double etaTauEnergyScale () const
 
double phiTauEnergyScale () const
 
double mTauEnergyScale () const
 
double ptTauEtaCalib () const
 
double etaTauEtaCalib () const
 
double phiTauEtaCalib () const
 
double mTauEtaCalib () const
 
double ptPanTauCellBasedProto () const
 
double etaPanTauCellBasedProto () const
 
double phiPanTauCellBasedProto () const
 
double mPanTauCellBasedProto () const
 
double ptPanTauCellBased () const
 
double etaPanTauCellBased () const
 
double phiPanTauCellBased () const
 
double mPanTauCellBased () const
 
double ptTrigCaloOnly () const
 
double etaTrigCaloOnly () const
 
double phiTrigCaloOnly () const
 
double mTrigCaloOnly () const
 
double ptFinalCalib () const
 
double etaFinalCalib () const
 
double phiFinalCalib () const
 
double mFinalCalib () const
 
virtual Type::ObjectType type () const
 The type of the object as a simple enumeration. More...
 

Detailed Description

Class describing a tau jet.

More details of how xAOD::TauJet is supposed to work...

Author
Michel Janus janus.nosp@m.@cer.nosp@m.n.ch

Definition at line 41 of file TauJet_v3.h.

Member Typedef Documentation

◆ Accessor

template<class T , class ALLOC = AuxAllocator_t<T>>
using SG::AuxElement::Accessor = SG::Accessor<T, ALLOC>
inherited

Definition at line 572 of file AuxElement.h.

◆ ConstAccessor

template<class T , class ALLOC = AuxAllocator_t<T>>
using SG::AuxElement::ConstAccessor = SG::ConstAccessor<T, ALLOC>
inherited

Definition at line 569 of file AuxElement.h.

◆ Decorator

template<class T , class ALLOC = AuxAllocator_t<T>>
using SG::AuxElement::Decorator = SG::Decorator<T, ALLOC>
inherited

Definition at line 575 of file AuxElement.h.

◆ FourMom_t

typedef TLorentzVector xAOD::IParticle::FourMom_t
inherited

Definition of the 4-momentum type.

Definition at line 69 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.

◆ GenVecFourMom_t

typedef ROOT::Math::LorentzVector<ROOT::Math::PtEtaPhiM4D<double> > xAOD::TauJet_v3::GenVecFourMom_t

Base 4 Momentum type for taus.

Definition at line 69 of file TauJet_v3.h.

◆ IParticleLinks_t

Definition at line 273 of file TauJet_v3.h.

◆ JetLink_t

Definition at line 197 of file TauJet_v3.h.

◆ PFOLinks_t

Definition at line 325 of file TauJet_v3.h.

◆ TauTrackLinks_t

Definition at line 232 of file TauJet_v3.h.

◆ TypelessConstAccessor

using SG::AuxElement::TypelessConstAccessor = ConstAuxElement::TypelessConstAccessor
inherited

Definition at line 566 of file AuxElement.h.

◆ VertexLink_t

Definition at line 209 of file TauJet_v3.h.

Member Enumeration Documentation

◆ PrivateStoreState

enum SG::IAuxElement::PrivateStoreState : uint8_t
strongprivateinherited

The current private data state.

Enumerator
NO_PRIVATE 
HAVE_PRIVATE 
HAD_PRIVATE 

Definition at line 131 of file IAuxElement.h.

132  {
133  NO_PRIVATE = 0,
134  HAVE_PRIVATE = 1,
135  HAD_PRIVATE = 2,
136  };

Constructor & Destructor Documentation

◆ TauJet_v3()

xAOD::TauJet_v3::TauJet_v3 ( )

Default constructor.

Definition at line 21 of file TauJet_v3.cxx.

22  : IParticle() {
23  }

Member Function Documentation

◆ addChargedPFOLink()

void xAOD::TauJet_v3::addChargedPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a charged PFO to the tau

Definition at line 782 of file TauJet_v3.cxx.

782  {
783 
784  chargedPFOAcc( *this ).push_back( pfo );
785  return;
786  }

◆ addClusterLink()

void xAOD::TauJet_v3::addClusterLink ( const ElementLink< IParticleContainer > &  tr)

add a cluster link to the tau

add a cluster to the tau

Definition at line 575 of file TauJet_v3.cxx.

575  {
576  clusterAcc( *this ).push_back(tr);
577  }

◆ addHadronicPFOLink()

void xAOD::TauJet_v3::addHadronicPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a hadronic PFO to the tau

Definition at line 723 of file TauJet_v3.cxx.

723  {
724 
725  hadronicPFOAcc( *this ).push_back( pfo );
726  return;
727  }

◆ addNeutralPFOLink()

void xAOD::TauJet_v3::addNeutralPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a neutral PFO to the tau

Definition at line 813 of file TauJet_v3.cxx.

813  {
814 
815  neutralPFOAcc( *this ).push_back( pfo );
816  return;
817  }

◆ addPi0Link()

void xAOD::TauJet_v3::addPi0Link ( const ElementLink< IParticleContainer > &  tr)

add a pi0 link to the tau

add a pi0 to the tau

Definition at line 609 of file TauJet_v3.cxx.

609  {
610  pi0Acc( *this ).push_back(tr);
611  }

◆ addPi0PFOLink()

void xAOD::TauJet_v3::addPi0PFOLink ( const ElementLink< PFOContainer > &  pfo)

add a pi0 PFO to the tau

Definition at line 844 of file TauJet_v3.cxx.

844  {
845 
846  pi0PFOAcc( *this ).push_back( pfo );
847  return;
848  }

◆ addProtoChargedPFOLink()

void xAOD::TauJet_v3::addProtoChargedPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a cellbased_charged PFO to the tau

Definition at line 878 of file TauJet_v3.cxx.

878  {
879 
880  protoChargedPFOAcc( *this ).push_back( pfo );
881  return;
882  }

◆ addProtoNeutralPFOLink()

void xAOD::TauJet_v3::addProtoNeutralPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a cellbased_neutral PFO to the tau

Definition at line 908 of file TauJet_v3.cxx.

908  {
909 
910  protoNeutralPFOAcc( *this ).push_back( pfo );
911  return;
912  }

◆ addProtoPi0PFOLink()

void xAOD::TauJet_v3::addProtoPi0PFOLink ( const ElementLink< PFOContainer > &  pfo)

add a cellbased_pi0 PFO to the tau

Definition at line 939 of file TauJet_v3.cxx.

939  {
940 
941  protoPi0PFOAcc( *this ).push_back( pfo );
942  return;
943  }

◆ addShotPFOLink()

void xAOD::TauJet_v3::addShotPFOLink ( const ElementLink< PFOContainer > &  pfo)

add a shot PFO to the tau

Definition at line 752 of file TauJet_v3.cxx.

752  {
753 
754  shotPFOAcc( *this ).push_back( pfo );
755  return;
756  }

◆ addTauTrackLink()

void xAOD::TauJet_v3::addTauTrackLink ( const ElementLink< TauTrackContainer > &  tr)

add a TauTrack to the tau

Definition at line 523 of file TauJet_v3.cxx.

523  {
524  tauTrackAcc( *this ).push_back(tr);
525  }

◆ allTauTrackLinks()

const TauJet_v3::TauTrackLinks_t & xAOD::TauJet_v3::allTauTrackLinks ( ) const

Definition at line 392 of file TauJet_v3.cxx.

392  {
393  return tauTrackAcc(*this);
394  }

◆ allTauTrackLinksNonConst()

TauJet_v3::TauTrackLinks_t & xAOD::TauJet_v3::allTauTrackLinksNonConst ( )

In order to sort track links.

Definition at line 418 of file TauJet_v3.cxx.

418  {
419  return tauTrackAcc(*this);
420  }

◆ allTracks()

std::vector< const TauTrack * > xAOD::TauJet_v3::allTracks ( ) const

Get the v<const pointer> to all tracks associated with this tau, regardless of classification.

Definition at line 482 of file TauJet_v3.cxx.

482  {
484  return tracksWithMask( mask );
485  }

◆ assign()

void SG::AuxElement::assign ( const AuxElement other,
bool  warnUnlocked = false 
)
inherited

Assignment.

Parameters
otherThe object from which we're assigning.
warnUnlockedIf true, then warn when we skip unlocked decorations.

We don't copy container/index, as assignment doesn't change where this object is. However, if we have aux data, then we copy aux data if we're copying from an object that also has it; otherwise, if we're copying from an object with no aux data, then we clear ours.

◆ auxdata() [1/4]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor<T, ALLOC>::reference_type SG::AuxElement::auxdata ( const std::string &  name)
inherited

Fetch an aux data variable, as a non-const reference.

Parameters
nameName of the aux variable.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor class.

◆ auxdata() [2/4]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor<T, ALLOC>::const_reference_type SG::AuxElement::auxdata ( const std::string &  name) const
inherited

Fetch an aux data variable, as a const reference.

Parameters
nameName of the aux variable.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor or ConstAccessor classes.

◆ auxdata() [3/4]

template<class T >
XAOD_AUXDATA_DEPRECATED T& xAOD::IParticle::auxdata ( const std::string &  name,
const std::string &  clsname = "" 
)
inlineinherited

Fetch an aux data variable, as a non-const reference.

This function provides an easy way for users to decorate objects with auxiliary data.

Take note that this function is slow. Should not be used inside time-critical code.

Parameters
nameName of the aux variable
clsnameThe name of the associated class. May be blank
Returns
A modifiable reference to the decoration

Definition at line 98 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.

99  {
100 
101  return SG::Accessor< T >(name, clsname)(*this);
102  }

◆ auxdata() [4/4]

template<class T >
XAOD_AUXDATA_DEPRECATED const T& xAOD::IParticle::auxdata ( const std::string &  name,
const std::string &  clsname = "" 
) const
inlineinherited

Fetch an aux data variable, as a const reference.

This function provides an easy way for users to retrieve auxiliary decorations from an object.

Take note that this function is slow. Should not be used inside time-critical code.

Parameters
nameName of the aux variable
clsnameThe name of the associated class. May be blank
Returns
A constant reference to the decoration

Definition at line 118 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.

119  {
120 
121  return SG::ConstAccessor< T >( name, clsname )( *this );
122  }

◆ auxdataConst() [1/2]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor<T, ALLOC>::const_reference_type SG::AuxElement::auxdataConst ( const std::string &  name) const
inherited

Fetch an aux data variable, as a const reference.

Parameters
nameName of the aux variable.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the ConstAccessor class.

◆ auxdataConst() [2/2]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Accessor<T, ALLOC>::const_reference_type SG::AuxElement::auxdataConst ( const std::string &  name,
const std::string &  clsname 
) const
inherited

Fetch an aux data variable, as a const reference.

Parameters
nameName of the aux variable.
clsnameThe name of the associated class. May be blank.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the ConstAccessor class.

◆ auxdecor() [1/2]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Decorator<T, ALLOC>::reference_type SG::AuxElement::auxdecor ( const std::string &  name) const
inherited

Fetch an aux decoration, as a non-const reference.

Parameters
nameName of the aux variable.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor class.

If the container is locked, this will allow fetching only variables that do not yet exist (in which case they will be marked as decorations) or variables already marked as decorations.

◆ auxdecor() [2/2]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED Decorator<T, ALLOC>::reference_type SG::AuxElement::auxdecor ( const std::string &  name,
const std::string &  clsname 
) const
inherited

Fetch an aux decoration, as a non-const reference.

Parameters
nameName of the aux variable.
clsnameThe name of the associated class. May be blank.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor class.

If the container is locked, this will allow fetching only variables that do not yet exist (in which case they will be marked as decorations) or variables already marked as decorations.

◆ calibratedCluster()

TauJet_v3::FourMom_t xAOD::TauJet_v3::calibratedCluster ( size_t  i,
xAOD::CaloCluster::State  state = xAOD::CaloCluster::State::CALIBRATED 
) const

Get TLV to a given cluster in calibrated state.

Definition at line 561 of file TauJet_v3.cxx.

561  {
562  const xAOD::IParticle* part = this->cluster(i);
563  if(!part) return FourMom_t();
564  const xAOD::CaloCluster* clus=dynamic_cast<const xAOD::CaloCluster*> (part);
565  if(!clus) return FourMom_t();
566  return clus->p4(state);
567  }

◆ charge()

float xAOD::TauJet_v3::charge ( ) const

◆ chargedPFO()

const PFO* xAOD::TauJet_v3::chargedPFO ( size_t  i) const

Get the pointer to a given charged PFO associated with this tau.

◆ chargedPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::chargedPFOLinks ( ) const

default pfos

◆ clearAux()

void SG::AuxElement::clearAux ( )
privateinherited

Clear all aux data associated with this element.

If this object has no associated store, this does nothing. If the associated aux data is const, this throws ExcConstAuxData.

Definition at line 580 of file AuxElement.cxx.

581 {
582  if (!m_container) return;
584 }

◆ clearAuxHelper()

void SG::AuxElement::clearAuxHelper ( AuxVectorData container,
size_t  index 
)
staticprivateinherited

Clear all aux data associated with an element.

Parameters
containerContainer of the element.
indexIndex of this element within the container.

If the associated aux data is const, this throws ExcConstAuxData.

Definition at line 639 of file AuxElement.cxx.

640 {
641  if (!container.hasStore()) return;
642  if (!container.hasNonConstStore()) {
643  throw SG::ExcConstAuxData ("clearAux", SG::null_auxid);
644  }
645 
647  for (SG::auxid_t auxid : container.getWritableAuxIDs()) {
648  r.clear (auxid, container, index, 1);
649  }
650 }

◆ clearCache()

void SG::AuxElement::clearCache ( )
inherited

Clear the cached aux data pointers.

You should call this any time something changes in the aux store that could invalidate the vector pointers.

Definition at line 339 of file AuxElement.cxx.

340 {
341  if (container())
342  container()->clearCache();
343 }

◆ clearChargedPFOLinks()

void xAOD::TauJet_v3::clearChargedPFOLinks ( )

Remove all charged PFOs from the tau.

Definition at line 788 of file TauJet_v3.cxx.

788  {
789  chargedPFOAcc( *this ).clear();
790  return;
791  }

◆ clearClusterLinks()

void xAOD::TauJet_v3::clearClusterLinks ( )

Remove all clusters from the tau.

Definition at line 580 of file TauJet_v3.cxx.

580  {
581  clusterAcc( *this ).clear();
582  }

◆ clearDecorations()

bool SG::AuxElement::clearDecorations ( ) const
inherited

Clear all decorations.

Erase all decorations from an associated store, restoring the state to when lock was called.

Returns true if there were any decorations that were cleared, false if the store did not contain any decorations.

Definition at line 428 of file AuxElement.cxx.

429 {
430  if (havePrivateData())
431  return m_container->clearDecorations();
432  return false;
433 }

◆ clearHadronicPFOLinks()

void xAOD::TauJet_v3::clearHadronicPFOLinks ( )

Remove all hadronic PFOs from the tau.

Definition at line 729 of file TauJet_v3.cxx.

729  {
730  hadronicPFOAcc( *this ).clear();
731  return;
732  }

◆ clearNeutralPFOLinks()

void xAOD::TauJet_v3::clearNeutralPFOLinks ( )

Remove all neutral PFOs from the tau.

Definition at line 819 of file TauJet_v3.cxx.

819  {
820  neutralPFOAcc( *this ).clear();
821  return;
822  }

◆ clearPi0Links()

void xAOD::TauJet_v3::clearPi0Links ( )

Remove all pi0s from the tau.

Definition at line 614 of file TauJet_v3.cxx.

614  {
615  pi0Acc( *this ).clear();
616  }

◆ clearPi0PFOLinks()

void xAOD::TauJet_v3::clearPi0PFOLinks ( )

Remove all pi0 PFOs from the tau.

Definition at line 850 of file TauJet_v3.cxx.

850  {
851  pi0PFOAcc( *this ).clear();
852  return;
853  }

◆ clearProtoChargedPFOLinks()

void xAOD::TauJet_v3::clearProtoChargedPFOLinks ( )

Remove all cellbased_charged PFOs from the tau.

Definition at line 884 of file TauJet_v3.cxx.

884  {
885  protoChargedPFOAcc( *this ).clear();
886  return;
887  }

◆ clearProtoNeutralPFOLinks()

void xAOD::TauJet_v3::clearProtoNeutralPFOLinks ( )

Remove all cellbased_neutral PFOs from the tau.

Definition at line 914 of file TauJet_v3.cxx.

914  {
915  protoNeutralPFOAcc( *this ).clear();
916  return;
917  }

◆ clearProtoPi0PFOLinks()

void xAOD::TauJet_v3::clearProtoPi0PFOLinks ( )

Remove all cellbased_pi0 PFOs from the tau.

Definition at line 945 of file TauJet_v3.cxx.

945  {
946  protoPi0PFOAcc( *this ).clear();
947  return;
948  }

◆ clearShotPFOLinks()

void xAOD::TauJet_v3::clearShotPFOLinks ( )

Remove all shot PFOs from the tau.

Definition at line 758 of file TauJet_v3.cxx.

758  {
759  shotPFOAcc( *this ).clear();
760  return;
761  }

◆ clearTauTrackLinks()

void xAOD::TauJet_v3::clearTauTrackLinks ( )

Remove all tracks from the tau.

Definition at line 527 of file TauJet_v3.cxx.

527  {
528  tauTrackAcc( *this ).clear();
529  }

◆ cluster()

const IParticle* xAOD::TauJet_v3::cluster ( size_t  i) const

Get the pointer to a given cluster associated with this tau.

◆ clusterLinks()

const IParticleLinks_t& xAOD::TauJet_v3::clusterLinks ( ) const

◆ clusters()

std::vector< const IParticle * > xAOD::TauJet_v3::clusters ( ) const

Definition at line 545 of file TauJet_v3.cxx.

545  {
546  std::vector<const IParticle*> particleList;
547 
548  for (const auto& link : clusterAcc(*this)) {
549  if (!link) {
550  continue;
551  }
552  const IParticle* particle = *link;
553  particleList.push_back(particle);
554  }
555 
556  return particleList;
557  }

◆ container() [1/2]

SG::AuxVectorData* SG::AuxElement::container ( )
inherited

Return the container holding this element.

◆ container() [2/2]

const SG::AuxVectorData* SG::AuxElement::container ( ) const
inherited

Return the container holding this element.

◆ copyAux()

void SG::AuxElement::copyAux ( const ConstAuxElement other,
bool  warnUnlocked = false 
)
privateinherited

Copy aux data from another object.

Parameters
otherThe object from which to copy.
warnUnlockedIf true, then warn when we skip unlocked decorations.

If this object has no associated store, this does nothing. If the associated aux data is const, this throws ExcConstAuxData.

All aux data items from other are copied to this object. Any aux data items associated with this object that are not present in other are cleared. (If other has no aux data, then all aux data items for this object are cleared.)

Definition at line 600 of file AuxElement.cxx.

602 {
603  if (!m_container) return;
604  copyAuxHelper (*container(), index(), other, warnUnlocked);
605 }

◆ copyAuxHelper()

void SG::AuxElement::copyAuxHelper ( AuxVectorData container,
size_t  index,
const ConstAuxElement other,
bool  warnUnlocked 
)
staticprivateinherited

Copy aux data from another object.

Parameters
containerContainer of the element.
indexIndex of this element within the container.
otherThe object from which to copy.
warnUnlockedIf true, then warn when we skip unlocked decorations.

If the associated aux data is const, this throws ExcConstAuxData.

All aux data items from other are copied to this object. Any aux data items associated with this object that are not present in other are cleared. (If other has no aux data, then all aux data items for this object are cleared.)

Definition at line 667 of file AuxElement.cxx.

671 {
672  if (!container.hasStore()) return;
674  throw SG::ExcConstAuxData ("copyAux");
675 
676  const SG::AuxVectorData* ocont = other.container();
677 
678  if (!ocont || !ocont->hasStore()) {
680  return;
681  }
682 
683 #ifndef XAOD_STANDALONE
684  const SG::auxid_set_t& other_decors = ocont->getDecorIDs();
685 #endif
686  SG::auxid_set_t other_ids = ocont->getAuxIDs();
687 
688  size_t oindex = other.index();
690 
691  for (SG::auxid_t auxid : other_ids) {
692 #ifndef XAOD_STANDALONE
693  if (other_decors.test (auxid)) {
694  // Don't copy decorations --- another thread may be modifying them.
695  other_ids.reset (auxid);
696  // Warn if we skip a decoration (except for mcEventWeights,
697  // for which this is expected).
698  if (warnUnlocked && r.getName(auxid) != "mcEventWeights") {
699  std::ostringstream ss;
700  ss << "skipped unlocked decoration " << r.getName(auxid)
701  << " (" << auxid << ")";
702  ATHCONTAINERS_WARNING("copyAux", ss.str());
703  }
704  }
705  else
706 #endif
707  if (!r.isLinked (auxid)) {
708  r.copy (auxid, container, index, *ocont, oindex, 1);
709  }
710  }
711 
712  for (SG::auxid_t auxid : container.getWritableAuxIDs()) {
713  if (!other_ids.test (auxid)) {
714  r.clear (auxid, container, index, 1);
715  }
716  }
717 }

◆ detail() [1/4]

template<class T >
xAODTAU_return_type<T>::type xAOD::TauJet_v3::detail ( TauJetParameters::Detail  detail) const
inline

Definition at line 174 of file TauJet_v3.h.

175  {
176  T temp;
177  if (this->detail(detail,temp)) return temp;
178  else return 0;
179  }

◆ detail() [2/4]

bool xAOD::TauJet_v3::detail ( TauJetParameters::Detail  detail,
const IParticle *&  value 
) const

Definition at line 292 of file TauJet_v3.cxx.

292  {
293  // Get the detail accessor:
294  value=nullptr;
295  const Accessor< ElementLink<IParticleContainer> >* acc = xAODTau::detailsAccessorV3<ElementLink<IParticleContainer> >( detail );
296  if( ! acc ) return false;
297  if( ! acc->isAvailable( *this ) ) return false;
298 
299  // Retrieve the detail value:
300  ElementLink< IParticleContainer > link = ( *acc )( *this );
301  if( ! link.isValid() ) return false;
302  value = *link;
303  return true;
304  }

◆ detail() [3/4]

bool xAOD::TauJet_v3::detail ( TauJetParameters::Detail  detail,
float value 
) const

Definition at line 278 of file TauJet_v3.cxx.

278  {
279  // Get the detail accessor:
280  const Accessor< float >* acc = xAODTau::detailsAccessorV3<float>( detail );
281  if( ! acc ) return false;
282  if( ! acc->isAvailable( *this ) ) return false;
283 
284  // Retrieve the detail value:
285  value = ( *acc )( *this );
286  return true;
287  }

◆ detail() [4/4]

bool xAOD::TauJet_v3::detail ( TauJetParameters::Detail  detail,
int value 
) const

Get and set values of common details variables via enum.

Definition at line 264 of file TauJet_v3.cxx.

264  {
265  // Get the detail accessor:
266  const Accessor< int >* acc = xAODTau::detailsAccessorV3<int>( detail );
267  if( ! acc ) return false;
268  if( ! acc->isAvailable( *this ) ) return false;
269 
270  // Retrieve the detail value:
271  value = ( *acc )( *this );
272  return true;
273  }

◆ discriminant()

double xAOD::TauJet_v3::discriminant ( TauJetParameters::TauID  discID) const

Get value of discriminant.

Parameters
discIDdiscriminant id requested

Definition at line 225 of file TauJet_v3.cxx.

225  {
226  // Get the discriminant accessor:
228  if( ! acc ) return -1111.0;
229 
230  // Retrieve the discriminant value:
231  return ( *acc )( *this );
232  }

◆ dump()

void xAOD::TauJet_v3::dump ( ) const

Definition at line 953 of file TauJet_v3.cxx.

953  {
954  /* keep these two lines to create the template methods. Otherwise they are optimzed away
955  * later: move these two lines into a dummy method, which nobody is calling
956  */
957  std::cout << this->detail<float>(xAOD::TauJetParameters::ipSigLeadTrk) << std::endl;
958  std::cout << this->detail<int>(xAOD::TauJetParameters::numTopoClusters) << std::endl;
959  }

◆ e()

double xAOD::TauJet_v3::e ( ) const
virtual

The total energy of the particle.

Implements xAOD::IParticle.

Definition at line 87 of file TauJet_v3.cxx.

87  {
88  return genvecP4().E();
89  }

◆ eta()

virtual double xAOD::TauJet_v3::eta ( ) const
virtual

The pseudorapidity ( \(\eta\)) of the particle.

Implements xAOD::IParticle.

◆ etaDetectorAxis()

double xAOD::TauJet_v3::etaDetectorAxis ( ) const

◆ etaFinalCalib()

double xAOD::TauJet_v3::etaFinalCalib ( ) const

◆ etaIntermediateAxis()

double xAOD::TauJet_v3::etaIntermediateAxis ( ) const

◆ etaJetSeed()

double xAOD::TauJet_v3::etaJetSeed ( ) const

◆ etaPanTauCellBased()

double xAOD::TauJet_v3::etaPanTauCellBased ( ) const

◆ etaPanTauCellBasedProto()

double xAOD::TauJet_v3::etaPanTauCellBasedProto ( ) const

◆ etaTauEnergyScale()

double xAOD::TauJet_v3::etaTauEnergyScale ( ) const

◆ etaTauEtaCalib()

double xAOD::TauJet_v3::etaTauEtaCalib ( ) const

◆ etaTrigCaloOnly()

double xAOD::TauJet_v3::etaTrigCaloOnly ( ) const

◆ genvecP4() [1/2]

TauJet_v3::GenVecFourMom_t xAOD::TauJet_v3::genvecP4 ( ) const

The full 4-momentum of the particle : internal taus type.

Definition at line 102 of file TauJet_v3.cxx.

102  {
103  return GenVecFourMom_t(pt(), eta(), phi(), m());
104  }

◆ genvecP4() [2/2]

TauJet_v3::GenVecFourMom_t xAOD::TauJet_v3::genvecP4 ( const TauJetParameters::TauCalibType  calib) const

Definition at line 144 of file TauJet_v3.cxx.

◆ getAuxIDs()

const SG::auxid_set_t & SG::AuxElement::getAuxIDs ( ) const
inherited

Return a set of identifiers for existing data items for this object.

If this object has a private or standalone store, then information from that will be returned. Otherwise, if this element is part of a container, then information for the container will be returned. Otherwise, return an empty set.

Definition at line 355 of file AuxElement.cxx.

356 {
357 #ifdef ATHCONTAINERS_R21_COMPAT
358  if (havePrivateData())
359  return m_container->getConstStore()->getAuxIDs();
360  if (container())
361  return container()->getAuxIDs();
362  static const SG::auxid_set_t null_set;
363  return null_set;
364 #else
366 #endif
367 }

◆ getConstStore()

const SG::IConstAuxStore * SG::AuxElement::getConstStore ( ) const
inherited

Return the current store, as a const interface.

This will be non-zero if either a const or non-const store is associated with this object. This will fetch either a private or standalone store.

Definition at line 304 of file AuxElement.cxx.

305 {
306  if (havePrivateData()) {
307  return m_container->getConstStore();
308  }
309  return 0;
310 }

◆ getDecorIDs()

const SG::auxid_set_t & SG::AuxElement::getDecorIDs ( ) const
inherited

Return a set of identifiers for decorations for this object.

   If this object has a private or standalone store, then information
   from that will be returned.  Otherwise, if this element
   is part of a container, then information for the container
   will be returned.  Otherwise, return an empty set.

Definition at line 378 of file AuxElement.cxx.

379 {
380 #ifdef ATHCONTAINERS_R21_COMPAT
381  if (havePrivateData())
383  if (container())
384  return container()->getDecorIDs();
385  static const SG::auxid_set_t null_set;
386  return null_set;
387 #else
389 #endif
390 }

◆ getStore()

SG::IAuxStore * SG::AuxElement::getStore ( ) const
inherited

Return the current store, as a non-const interface.

This will be non-zero if a non-const store is associated with this object. This will fetch either a private or standalone store.

Definition at line 319 of file AuxElement.cxx.

320 {
321  if (havePrivateData()) {
322 #ifdef ATHCONTAINERS_R21_COMPAT
324 #else
325  SG::AuxVectorData* container_nc ATLAS_THREAD_SAFE = const_cast<SG::AuxVectorData*>(container());
326 #endif
327  return container_nc->getStore();
328  }
329  return 0;
330 }

◆ hadPrivateData()

bool SG::IAuxElement::hadPrivateData ( ) const
protectedinherited

True if this element had private data before it was added to its current container.

◆ hadronicPFO()

const PFO* xAOD::TauJet_v3::hadronicPFO ( size_t  i) const

Get the pointer to a given hadronic PFO associated with this tau.

◆ hadronicPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::hadronicPFOLinks ( ) const

◆ hasDiscriminant()

bool xAOD::TauJet_v3::hasDiscriminant ( TauJetParameters::TauID  discID) const

Check if class contains requested discriminant.

Parameters
discIDdiscriminant id requested

Definition at line 214 of file TauJet_v3.cxx.

215  {
216  // Get the discriminant accessor:
218  return acc != nullptr;
219  }

◆ hasNonConstStore()

bool SG::AuxElement::hasNonConstStore ( ) const
inherited

Return true if this object has an associated non-const store.

This will be true for either a private or standalone store.

Definition at line 411 of file AuxElement.cxx.

412 {
413  if (havePrivateData())
414  return m_container->hasNonConstStore();
415  return false;
416 }

◆ hasStore()

bool SG::AuxElement::hasStore ( ) const
inherited

Return true if this object has an associated store.

This will be true for either a private or standalone store.

Definition at line 398 of file AuxElement.cxx.

399 {
400  if (havePrivateData())
401  return m_container->hasStore();
402  return false;
403 }

◆ havePrivateData()

bool SG::IAuxElement::havePrivateData ( ) const
protectedinherited

True if this element currently has private data.

◆ index() [1/2]

size_t SG::IAuxElement::index ( ) const
inherited

Return the index of this element within its container.

◆ index() [2/2]

size_t SG::IAuxElement::index
inherited

Return the index of this element within its container.

Inherited from IAuxElement.

◆ isAvailable()

template<class T >
XAOD_AUXDATA_DEPRECATED bool xAOD::IParticle::isAvailable ( const std::string &  name,
const std::string &  clsname = "" 
) const
inlineinherited

Check if a user property is available for reading or not.

This function should be used to check if a user property which may or may not exist, is set on the object.

Parameters
nameName of the auxiliary variable
clsnameThe name of the associated class. May be blank
Returns
Whether the decoration exists or not

Definition at line 135 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.

136  {
137 
138  return SG::ConstAccessor< T >(name, clsname).isAvailable(*this);
139  }

◆ isAvailableWritable() [1/2]

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED bool SG::AuxElement::isAvailableWritable ( const std::string &  name,
const std::string &  clsname = "" 
)
inherited

Check if an aux variable is available for writing.

Parameters
nameName of the aux variable.
clsnameThe name of the associated class. May be blank.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor class.

◆ isAvailableWritable() [2/2]

template<class T >
XAOD_AUXDATA_DEPRECATED bool xAOD::IParticle::isAvailableWritable ( const std::string &  name,
const std::string &  clsname = "" 
) const
inlineinherited

Check if a user property is available for writing or not.

This function can be used to check whether it will be possible to set a user property on the object.

Parameters
nameName of the auxiliary variable
clsnameThe name of the associated class. May be blank
Returns
Whether the decoration is possible to set

Definition at line 152 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.

153  {
154 
155  return SG::Accessor< T >(name, clsname).isAvailableWritable(*this);
156  }

◆ isAvailableWritableAsDecoration()

template<class T , class ALLOC = AuxAllocator_t<T>>
XAOD_AUXDATA_DEPRECATED bool SG::AuxElement::isAvailableWritableAsDecoration ( const std::string &  name,
const std::string &  clsname = "" 
) const
inherited

Check if an aux variable is available for writing as a decoration.

Parameters
nameName of the aux variable.
clsnameThe name of the associated class. May be blank.

This method has to translate from the aux data name to the internal representation each time it is called. Using this method inside of loops is discouraged; instead use the Accessor class.

◆ isTau()

bool xAOD::TauJet_v3::isTau ( TauJetParameters::IsTauFlag  flag) const

Get Flag for tau acceptance based on predefined arbitrary criteria.

Parameters
flagflag to check

Definition at line 245 of file TauJet_v3.cxx.

246  {
247  static const Accessor< uint32_t > acc( "isTauFlags" );
248  std::bitset<32> isTauFlags( acc( *this ) );
249  return isTauFlags[flag];
250  }

◆ jet()

const Jet* xAOD::TauJet_v3::jet ( ) const

◆ jetLink()

const JetLink_t& xAOD::TauJet_v3::jetLink ( ) const

◆ m()

virtual double xAOD::TauJet_v3::m ( ) const
virtual

The invariant mass of the particle.

Implements xAOD::IParticle.

◆ makePrivateStore() [1/3]

void SG::AuxElement::makePrivateStore ( )
inherited

Create a new (empty) private store for this object.

ExcBadPrivateStore will be thrown if this object is already associated with a store.

Definition at line 192 of file AuxElement.cxx.

193 {
194  if (m_container) {
195  throw SG::ExcBadPrivateStore ("store already exists");
196  }
197 
201 }

◆ makePrivateStore() [2/3]

template<class U1 >
void SG::AuxElement::makePrivateStore ( const U1 &  other,
bool  warnUnlocked = false 
)
inherited

Create a new private store for this object and copy aux data.

Parameters
otherThe object from which aux data should be copied.
warnUnlockedIf true, then warn when we skip unlocked decorations.

ExcBadPrivateStore will be thrown if this object is already associated with a store.

If other is an object that has aux data, then those data will be copied; otherwise, nothing will be done.

◆ makePrivateStore() [3/3]

template<class U1 >
void SG::AuxElement::makePrivateStore ( const U1 *  other,
bool  warnUnlocked = false 
)
inherited

Create a new private store for this object and copy aux data.

Parameters
otherThe object from which aux data should be copied.
warnUnlockedIf true, then warn when we skip unlocked decorations.

ExcBadPrivateStore will be thrown if this object is already associated with a store.

If other is an object that has aux data, then those data will be copied; otherwise, nothing will be done.

◆ makePrivateStore1() [1/2]

void SG::AuxElement::makePrivateStore1 ( const AuxElement other,
bool  warnUnlocked 
)
privateinherited

Create a new private store for this object and copy aux data.

Parameters
otherThe object from which aux data should be copied.
warnUnlockedIf true, then warn when we skip unlocked decorations.

ExcBadPrivateStore will be thrown if this object is already associated with a store.

This overload handles the case where other does have aux data.

Definition at line 565 of file AuxElement.cxx.

567 {
569  if (other)
570  this->copyAux (*other, warnUnlocked);
571 }

◆ makePrivateStore1() [2/2]

void SG::AuxElement::makePrivateStore1 ( const void *  other,
bool  warnUnlocked 
)
privateinherited

Create a new private store for this object and copy aux data.

Parameters
otherThe object from which aux data should be copied.
warnUnlockedIf true, then warn when we skip unlocked decorations.

ExcBadPrivateStore will be thrown if this object is already associated with a store.

This overload handles the case where other does not have aux data.

◆ mDetectorAxis()

double xAOD::TauJet_v3::mDetectorAxis ( ) const

◆ mFinalCalib()

double xAOD::TauJet_v3::mFinalCalib ( ) const

◆ mIntermediateAxis()

double xAOD::TauJet_v3::mIntermediateAxis ( ) const

◆ mJetSeed()

double xAOD::TauJet_v3::mJetSeed ( ) const

◆ mPanTauCellBased()

double xAOD::TauJet_v3::mPanTauCellBased ( ) const

◆ mPanTauCellBasedProto()

double xAOD::TauJet_v3::mPanTauCellBasedProto ( ) const

◆ mTauEnergyScale()

double xAOD::TauJet_v3::mTauEnergyScale ( ) const

◆ mTauEtaCalib()

double xAOD::TauJet_v3::mTauEtaCalib ( ) const

◆ mTrigCaloOnly()

double xAOD::TauJet_v3::mTrigCaloOnly ( ) const

◆ nAllTracks()

size_t xAOD::TauJet_v3::nAllTracks ( ) const

Definition at line 516 of file TauJet_v3.cxx.

516  {
517  // return the number of tracks with valid element link
519  return nTracksWithMask( mask );
520  }

◆ nChargedPFOs()

size_t xAOD::TauJet_v3::nChargedPFOs ( ) const

Get the number of charged PFO particles associated with this tau.

Definition at line 778 of file TauJet_v3.cxx.

778  {
779  return chargedPFOAcc( *this ).size();
780  }

◆ nClusters()

size_t xAOD::TauJet_v3::nClusters ( ) const

Definition at line 570 of file TauJet_v3.cxx.

570  {
571  return clusterAcc( *this ).size();
572  }

◆ neutralPFO()

const PFO* xAOD::TauJet_v3::neutralPFO ( size_t  i) const

Get the pointer to a given neutral PFO associated with this tau.

◆ neutralPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::neutralPFOLinks ( ) const

◆ nHadronicPFOs()

size_t xAOD::TauJet_v3::nHadronicPFOs ( ) const

Get the number of hadronic PFO particles associated with this tau.

Definition at line 719 of file TauJet_v3.cxx.

719  {
720  return hadronicPFOAcc( *this ).size();
721  }

◆ nNeutralPFOs()

size_t xAOD::TauJet_v3::nNeutralPFOs ( ) const

Get the number of neutral PFO particles associated with this tau.

Definition at line 809 of file TauJet_v3.cxx.

809  {
810  return neutralPFOAcc( *this ).size();
811  }

◆ noPrivateData()

bool SG::IAuxElement::noPrivateData ( ) const
protectedinherited

True if this element has no private data.

◆ nPi0PFOs()

size_t xAOD::TauJet_v3::nPi0PFOs ( ) const

Get the number of pi0 PFO particles associated with this tau.

Definition at line 840 of file TauJet_v3.cxx.

840  {
841  return pi0PFOAcc( *this ).size();
842  }

◆ nPi0s()

size_t xAOD::TauJet_v3::nPi0s ( ) const

Definition at line 604 of file TauJet_v3.cxx.

604  {
605  return pi0Acc( *this ).size();
606  }

◆ nProtoChargedPFOs()

size_t xAOD::TauJet_v3::nProtoChargedPFOs ( ) const

Get the number of cellbased_charged PFO particles associated with this tau.

Definition at line 874 of file TauJet_v3.cxx.

874  {
875  return protoChargedPFOAcc( *this ).size();
876  }

◆ nProtoNeutralPFOs()

size_t xAOD::TauJet_v3::nProtoNeutralPFOs ( ) const

Get the number of cellbased_neutral PFO particles associated with this tau.

Definition at line 904 of file TauJet_v3.cxx.

904  {
905  return protoNeutralPFOAcc( *this ).size();
906  }

◆ nProtoPi0PFOs()

size_t xAOD::TauJet_v3::nProtoPi0PFOs ( ) const

Get the number of cellbased_pi0 PFO particles associated with this tau.

Definition at line 935 of file TauJet_v3.cxx.

935  {
936  return protoPi0PFOAcc( *this ).size();
937  }

◆ nShotPFOs()

size_t xAOD::TauJet_v3::nShotPFOs ( ) const

Get the number of shot PFO particles associated with this tau.

Definition at line 748 of file TauJet_v3.cxx.

748  {
749  return shotPFOAcc( *this ).size();
750  }

◆ nTracks()

size_t xAOD::TauJet_v3::nTracks ( TauJetParameters::TauTrackFlag  flag = TauJetParameters::TauTrackFlag::classifiedCharged) const

Definition at line 488 of file TauJet_v3.cxx.

488  {
490  return nTracksWithMask(mask);
491  }

◆ nTracksCharged()

size_t xAOD::TauJet_v3::nTracksCharged ( ) const

Definition at line 494 of file TauJet_v3.cxx.

◆ nTracksIsolation()

size_t xAOD::TauJet_v3::nTracksIsolation ( ) const

Definition at line 498 of file TauJet_v3.cxx.

◆ nTracksWithMask()

size_t xAOD::TauJet_v3::nTracksWithMask ( unsigned int  classification) const

Definition at line 504 of file TauJet_v3.cxx.

504  {
505  size_t n(0);
506  for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){
507  // protection against tau track thinning
508  if(!link.isValid()) continue;
509  const TauTrack* trk = *link;
510  if(trk->flagWithMask(flags)) n++;
511  }
512  return n;
513  }

◆ p4() [1/2]

TauJet_v3::FourMom_t xAOD::TauJet_v3::p4 ( ) const
virtual

The full 4-momentum of the particle.

Implements xAOD::IParticle.

Definition at line 96 of file TauJet_v3.cxx.

96  {
97  FourMom_t p4{};
98  p4.SetPtEtaPhiM( pt(), eta(), phi(),m());
99  return p4;
100  }

◆ p4() [2/2]

TauJet_v3::FourMom_t xAOD::TauJet_v3::p4 ( const TauJetParameters::TauCalibType  calib) const
virtual

Definition at line 106 of file TauJet_v3.cxx.

106  {
107  FourMom_t p4;
108 
109  switch(calib) {
111  p4.SetPtEtaPhiM( ptJetSeed(), etaJetSeed(), phiJetSeed(), mJetSeed());
112  break;
115  break;
118  break;
121  break;
123  p4.SetPtEtaPhiM( ptTauEtaCalib(), etaTauEtaCalib(), phiTauEtaCalib(), mTauEtaCalib());
124  break;
127  break;
130  break;
133  break;
135  p4.SetPtEtaPhiM( ptFinalCalib(), etaFinalCalib(), phiFinalCalib(), mFinalCalib());
136  break;
137  default:
138  p4.SetPtEtaPhiM( pt(), eta(), phi(), m());
139  }
140 
141  return p4;
142  }

◆ panTauDetail() [1/3]

template<class T >
xAODTAU_return_type<T>::type xAOD::TauJet_v3::panTauDetail ( TauJetParameters::PanTauDetails  panTauDetail) const
inline

Definition at line 189 of file TauJet_v3.h.

190  {
191  T temp;
192  if (this->panTauDetail(panTauDetail,temp)) return temp;
193  else return 0;
194  }

◆ panTauDetail() [2/3]

bool xAOD::TauJet_v3::panTauDetail ( TauJetParameters::PanTauDetails  panTauDetail,
float value 
) const

Definition at line 353 of file TauJet_v3.cxx.

353  {
354  // Get the panTauDetail accessor:
355  const Accessor< float >* acc = xAODTau::panTauDetailsAccessorV3<float>( panTauDetail );
356  if( ! acc ) return false;
357  if( ! acc->isAvailable( *this ) ) return false;
358 
359  // Retrieve the panTauDetail value:
360  value = ( *acc )( *this );
361  return true;
362  }

◆ panTauDetail() [3/3]

bool xAOD::TauJet_v3::panTauDetail ( TauJetParameters::PanTauDetails  panTauDetail,
int value 
) const

Get and set values of pantau details variables via enum.

Definition at line 339 of file TauJet_v3.cxx.

339  {
340  // Get the panTauDetail accessor:
341  const Accessor< int >* acc = xAODTau::panTauDetailsAccessorV3<int>( panTauDetail );
342  if( ! acc ) return false;
343  if( ! acc->isAvailable( *this ) ) return false;
344 
345  // Retrieve the panTauDetail value:
346  value = ( *acc )( *this );
347  return true;
348  }

◆ phi()

virtual double xAOD::TauJet_v3::phi ( ) const
virtual

The azimuthal angle ( \(\phi\)) of the particle.

Implements xAOD::IParticle.

◆ phiDetectorAxis()

double xAOD::TauJet_v3::phiDetectorAxis ( ) const

◆ phiFinalCalib()

double xAOD::TauJet_v3::phiFinalCalib ( ) const

◆ phiIntermediateAxis()

double xAOD::TauJet_v3::phiIntermediateAxis ( ) const

◆ phiJetSeed()

double xAOD::TauJet_v3::phiJetSeed ( ) const

◆ phiPanTauCellBased()

double xAOD::TauJet_v3::phiPanTauCellBased ( ) const

◆ phiPanTauCellBasedProto()

double xAOD::TauJet_v3::phiPanTauCellBasedProto ( ) const

◆ phiTauEnergyScale()

double xAOD::TauJet_v3::phiTauEnergyScale ( ) const

◆ phiTauEtaCalib()

double xAOD::TauJet_v3::phiTauEtaCalib ( ) const

◆ phiTrigCaloOnly()

double xAOD::TauJet_v3::phiTrigCaloOnly ( ) const

◆ pi0()

const IParticle* xAOD::TauJet_v3::pi0 ( size_t  i) const

Get the pointer to a given pi0 associated with this tau.

◆ pi0ConeDR()

float xAOD::TauJet_v3::pi0ConeDR ( ) const

◆ pi0Links()

const IParticleLinks_t& xAOD::TauJet_v3::pi0Links ( ) const

◆ pi0PFO()

const PFO* xAOD::TauJet_v3::pi0PFO ( size_t  i) const

Get the pointer to a given pi0 PFO associated with this tau.

◆ pi0PFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::pi0PFOLinks ( ) const

◆ protoChargedPFO()

const PFO* xAOD::TauJet_v3::protoChargedPFO ( size_t  i) const

Get the pointer to a given cellbased_charged PFO associated with this tau.

◆ protoChargedPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::protoChargedPFOLinks ( ) const

cellbased pfos

◆ protoNeutralPFO()

const PFO* xAOD::TauJet_v3::protoNeutralPFO ( size_t  i) const

Get the pointer to a given cellbased_neutral PFO associated with this tau.

◆ protoNeutralPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::protoNeutralPFOLinks ( ) const

◆ protoPi0PFO()

const PFO* xAOD::TauJet_v3::protoPi0PFO ( size_t  i) const

Get the pointer to a given cellbased_pi0 PFO associated with this tau.

◆ protoPi0PFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::protoPi0PFOLinks ( ) const

◆ pt()

virtual double xAOD::TauJet_v3::pt ( ) const
virtual

The transverse momentum ( \(p_T\)) of the particle.

Implements xAOD::IParticle.

◆ ptDetectorAxis()

double xAOD::TauJet_v3::ptDetectorAxis ( ) const

◆ ptFinalCalib()

double xAOD::TauJet_v3::ptFinalCalib ( ) const

◆ ptIntermediateAxis()

double xAOD::TauJet_v3::ptIntermediateAxis ( ) const

◆ ptJetSeed()

double xAOD::TauJet_v3::ptJetSeed ( ) const

◆ ptPanTauCellBased()

double xAOD::TauJet_v3::ptPanTauCellBased ( ) const

◆ ptPanTauCellBasedProto()

double xAOD::TauJet_v3::ptPanTauCellBasedProto ( ) const

◆ ptTauEnergyScale()

double xAOD::TauJet_v3::ptTauEnergyScale ( ) const

◆ ptTauEtaCalib()

double xAOD::TauJet_v3::ptTauEtaCalib ( ) const

◆ ptTrigCaloOnly()

double xAOD::TauJet_v3::ptTrigCaloOnly ( ) const

◆ rapidity()

double xAOD::TauJet_v3::rapidity ( ) const
virtual

The true rapidity (y) of the particle.

Implements xAOD::IParticle.

Definition at line 92 of file TauJet_v3.cxx.

92  {
93  return genvecP4().Rapidity();
94  }

◆ releasePrivateStore()

void SG::AuxElement::releasePrivateStore ( )
inherited

Release and free any private store associated with this object.

ExcBadPrivateStore will be thrown if this object does not have a private store.

Definition at line 210 of file AuxElement.cxx.

211 {
212  if (hadPrivateData()) {
213  // We had a private store, but it was released because this object
214  // was added to a container. Just forget about it.
216  return;
217  }
218 
219  if (!havePrivateData() ||
220  !m_container ||
221  typeid(*m_container) != typeid(AuxElementPrivateData))
222  {
223  throw SG::ExcBadPrivateStore ("no private store exists");
224  }
225 
228  delete m_container;
229  m_container = 0;
230 }

◆ releasePrivateStoreForDtor()

void SG::AuxElement::releasePrivateStoreForDtor ( )
privateinherited

Out-of-line portion of destructor.

Delete a private store if we have one.

Definition at line 441 of file AuxElement.cxx.

442 {
443 #ifdef ATHCONTAINERS_R21_COMPAT
444  if (havePrivateData()) {
445  delete m_container;
446  }
447 #else
449 #endif
450 }

◆ ROIWord()

unsigned int xAOD::TauJet_v3::ROIWord ( ) const

the ROIWord, in case TauJet is used in EF trigger

◆ secondaryVertex()

const Vertex* xAOD::TauJet_v3::secondaryVertex ( ) const

◆ secondaryVertexLink()

const VertexLink_t& xAOD::TauJet_v3::secondaryVertexLink ( ) const

◆ setAllTauTrackLinks()

void xAOD::TauJet_v3::setAllTauTrackLinks ( const TauTrackLinks_t tauTracks)

Definition at line 396 of file TauJet_v3.cxx.

396  {
397  tauTrackAcc(*this) = links;
398  return;
399  }

◆ setCharge()

void xAOD::TauJet_v3::setCharge ( float  )

◆ setChargedPFOLinks()

void xAOD::TauJet_v3::setChargedPFOLinks ( const PFOLinks_t chargedPFOs)

◆ setClusterLinks()

void xAOD::TauJet_v3::setClusterLinks ( const IParticleLinks_t clusters)

◆ setConstStore()

void SG::AuxElement::setConstStore ( const SG::IConstAuxStore store)
inherited

Synonym for setStore with IConstAuxStore.

Parameters
storeThe new store.

◆ setDetail() [1/3]

void xAOD::TauJet_v3::setDetail ( TauJetParameters::Detail  detail,
const IParticle value,
const IParticleContainer cont = 0 
)

Definition at line 323 of file TauJet_v3.cxx.

323  {
324  if(value==nullptr){
326  ( *( xAODTau::detailsAccessorV3<ElementLink < IParticleContainer > >( detail ) ) )( *this ) = lParticleLink;
327  }
328  else{
329  if(!cont) cont=static_cast<const IParticleContainer*> (value->container());
330  ElementLink < IParticleContainer > lParticleLink(value, *cont);
331  ( *( xAODTau::detailsAccessorV3<ElementLink < IParticleContainer > >( detail ) ) )( *this ) = lParticleLink;
332  }
333  }

◆ setDetail() [2/3]

void xAOD::TauJet_v3::setDetail ( TauJetParameters::Detail  detail,
float  value 
)

Definition at line 316 of file TauJet_v3.cxx.

316  {
317  ( *( xAODTau::detailsAccessorV3<float>( detail ) ) )( *this ) = value;
318  }

◆ setDetail() [3/3]

void xAOD::TauJet_v3::setDetail ( TauJetParameters::Detail  detail,
int  value 
)

Definition at line 309 of file TauJet_v3.cxx.

309  {
310  ( *( xAODTau::detailsAccessorV3<int>( detail ) ) )( *this ) = value;
311  }

◆ setDiscriminant()

void xAOD::TauJet_v3::setDiscriminant ( TauJetParameters::TauID  discID,
double  disc 
)

Set value of discriminant.

Parameters
discIDdiscriminant id requested
discdiscriminant value

Definition at line 237 of file TauJet_v3.cxx.

237  {
238  ( *( xAODTau::discriminantAccessorV3( discriminant ) ) )( *this ) = value;
239  return;
240  }

◆ setHadPrivateData()

void SG::IAuxElement::setHadPrivateData ( )
privateinherited

Record that this element used to have private data.

◆ setHadronicPFOLinks()

void xAOD::TauJet_v3::setHadronicPFOLinks ( const PFOLinks_t hadronicPFOs)

◆ setHavePrivateData()

void SG::IAuxElement::setHavePrivateData ( )
privateinherited

Record that this element currently has private data.

◆ setIndex()

void SG::AuxElement::setIndex ( size_t  index,
SG::AuxVectorData container 
)
privateinherited

Set the index/container for this element.

Parameters
indexThe index of this object within the container.
containerThe container holding this object. May be null if this object is being removed from a container.

Usually this simply sets the index and container members of this object. However, in the case where this object has an associated private store, then we need to deal with releasing the store if the object is being added to a container, or making a new store if the object is being removed from a container.

◆ setIndexPrivate()

bool SG::AuxElement::setIndexPrivate ( size_t  index,
SG::AuxVectorData container 
)
privateinherited

Set the index/container for this element.

Parameters
indexThe index of this object within the container.
containerThe container holding this object. May be null if this object is being removed from a container.

This is called from setIndex when we have a private store to deal with.

Definition at line 505 of file AuxElement.cxx.

506 {
507 #ifdef ATHCONTAINERS_R21_COMPAT
508  if (hadPrivateData()) {
509  // We had a private store, but it was released because we were added
510  // to a container.
511 
512  if (container == 0) {
513  // We're being moved out of the container. Make a new private
514  // store, copy the data, and switch to it.
515  auto privateData = new SG::AuxElementPrivateData;
516  AuxElement to (privateData, 0);
517  to.copyAux (*this);
520  m_container = privateData;
521  return true;
522  }
523  }
524  else if (havePrivateData() &&
525  typeid(*m_container) == typeid(AuxElementPrivateData))
526  {
527  // We currently have a private store.
528 
529  if (container != 0 && container != m_container) {
530  // We're being added to a container.
531  // Aux data has already been copied.
532  // Release private store.
535  delete m_container;
537  return false;
538  }
539  }
540  else {
541  // We have a standalone store.
542  throw SG::ExcBadPrivateStore ("Attempt to add/remove a standalone object "
543  "from a container.");
544  }
545 
548  return false;
549 #else
551 #endif
552 }

◆ setIsTau()

void xAOD::TauJet_v3::setIsTau ( TauJetParameters::IsTauFlag  flag,
bool  value 
)

Set Flag for tau acceptance based on predefined arbitrary criteria.

Parameters
flagflag to set
valuevalue to set

Definition at line 252 of file TauJet_v3.cxx.

253  {
254  static const Accessor< uint32_t > acc( "isTauFlags" );
255  std::bitset<32> isTauFlags( acc( *this ) );
256  isTauFlags[flag] = value;
257  acc( *this ) = isTauFlags.to_ulong();
258  }

◆ setJet()

void xAOD::TauJet_v3::setJet ( const xAOD::JetContainer cont,
const xAOD::Jet jet 
)

Definition at line 643 of file TauJet_v3.cxx.

643  {
644  if( jetAcc( *this ).isValid() )
645  jetAcc( *this ).reset();
646  jetAcc( *this ).toContainedElement( *cont, jet );
647  }

◆ setJetLink()

void xAOD::TauJet_v3::setJetLink ( const JetLink_t jetLink)

◆ setNeutralPFOLinks()

void xAOD::TauJet_v3::setNeutralPFOLinks ( const PFOLinks_t neutralPFOs)

◆ setNonConstStore()

void SG::AuxElement::setNonConstStore ( SG::IAuxStore store)
inherited

Synonym for setStore with IAuxStore.

Parameters
storeThe new store.

◆ setNoPrivateData()

void SG::IAuxElement::setNoPrivateData ( )
privateinherited

Record that this element does not have private data.

◆ setP4() [1/2]

bool xAOD::TauJet_v3::setP4 ( const TauJetParameters::TauCalibType  calib,
double  pt,
double  eta,
double  phi,
double  m 
)

Definition at line 182 of file TauJet_v3.cxx.

182  {
183  TauJetCalibTypeMapper_v1 typeMapper;
184  std::string calibString = "";
185  bool result = typeMapper.getValue(calib, calibString);
186  if (result) {
187  Accessor< float > accTauPtCalib( "pt"+calibString );
188  Accessor< float > accTauEtaCalib( "eta"+calibString );
189  Accessor< float > accTauPhiCalib( "phi"+calibString );
190  Accessor< float > accTauMCalib( "m"+calibString );
191  accTauPtCalib( *this )=pt;
192  accTauEtaCalib( *this )=eta;
193  accTauPhiCalib( *this )=phi;
194  accTauMCalib( *this )=m;
195  return true;
196  }
197  else {
198  return false;
199  }
200 
201  }

◆ setP4() [2/2]

void xAOD::TauJet_v3::setP4 ( double  pt,
double  eta,
double  phi,
double  m 
)

Set methods for IParticle values.

Definition at line 171 of file TauJet_v3.cxx.

171  {
172  static const Accessor< float > acc1( "pt" );
173  static const Accessor< float > acc2( "eta" );
174  static const Accessor< float > acc3( "phi" );
175  static const Accessor< float > acc4( "m" );
176  acc1( *this )=pt;
177  acc2( *this )=eta;
178  acc3( *this )=phi;
179  acc4( *this )=m;
180  }

◆ setPanTauDetail() [1/2]

void xAOD::TauJet_v3::setPanTauDetail ( TauJetParameters::PanTauDetails  panTauDetail,
float  value 
)

Definition at line 374 of file TauJet_v3.cxx.

374  {
375  ( *( xAODTau::panTauDetailsAccessorV3<float>( panTauDetail ) ) )( *this ) = value;
376  }

◆ setPanTauDetail() [2/2]

void xAOD::TauJet_v3::setPanTauDetail ( TauJetParameters::PanTauDetails  panTauDetail,
int  value 
)

Definition at line 367 of file TauJet_v3.cxx.

367  {
368  ( *( xAODTau::panTauDetailsAccessorV3<int>( panTauDetail ) ) )( *this ) = value;
369  }

◆ setPi0ConeDR()

void xAOD::TauJet_v3::setPi0ConeDR ( float  )

◆ setPi0Links()

void xAOD::TauJet_v3::setPi0Links ( const IParticleLinks_t pi0s)

◆ setPi0PFOLinks()

void xAOD::TauJet_v3::setPi0PFOLinks ( const PFOLinks_t pi0PFOs)

◆ setProtoChargedPFOLinks()

void xAOD::TauJet_v3::setProtoChargedPFOLinks ( const PFOLinks_t protoChargedPFOs)

◆ setProtoNeutralPFOLinks()

void xAOD::TauJet_v3::setProtoNeutralPFOLinks ( const PFOLinks_t protoNeutralPFOs)

◆ setProtoPi0PFOLinks()

void xAOD::TauJet_v3::setProtoPi0PFOLinks ( const PFOLinks_t protoPi0PFOs)

◆ setROIWord()

void xAOD::TauJet_v3::setROIWord ( unsigned int  )

◆ setSecondaryVertex()

void xAOD::TauJet_v3::setSecondaryVertex ( const xAOD::VertexContainer cont,
const xAOD::Vertex vertex 
)

Definition at line 695 of file TauJet_v3.cxx.

695  {
696  if( secondaryVertexAcc( *this ).isValid() )
697  secondaryVertexAcc( *this ).reset();
698  secondaryVertexAcc( *this ).toContainedElement( *cont, vertex );
699  }

◆ setSecondaryVertexLink()

void xAOD::TauJet_v3::setSecondaryVertexLink ( const VertexLink_t vertexLink)

◆ setShotPFOLinks()

void xAOD::TauJet_v3::setShotPFOLinks ( const PFOLinks_t shotPFOs)

◆ setStore() [1/3]

void SG::AuxElement::setStore ( const DataLink< SG::IConstAuxStore > &  store)
inherited

Set the store associated with this object.

Parameters
storeThe new store.

If store is nonzero, this adds a standalone store to the object. The object must not be in a container and must not have a private store. If store is zero, this removes a standalone store.

Parameters
storeLink to the new store.

Definition at line 269 of file AuxElement.cxx.

270 {
271  AuxElementStandaloneData* data = setStore1 (store);
272  if (store)
273  data->setStore (store);
274 }

◆ setStore() [2/3]

void SG::AuxElement::setStore ( const SG::IConstAuxStore store)
inherited

Set the store associated with this object.

Parameters
storeThe new store.

If store is nonzero, this adds a standalone store to the object. The object must not be in a container and must not have a private store. If store is zero, this removes a standalone store.

Definition at line 241 of file AuxElement.cxx.

242 {
243  AuxElementStandaloneData* data = setStore1 (store);
244  if (store)
245  data->setStore (store);
246 }

◆ setStore() [3/3]

void SG::AuxElement::setStore ( SG::IAuxStore store)
inherited

Set the store associated with this object.

Parameters
storeThe new store.

If store is nonzero, this adds a standalone store to the object. The object must not be in a container and must not have a private store. If store is zero, this removes a standalone store.

Definition at line 257 of file AuxElement.cxx.

258 {
259  AuxElementStandaloneData* data = setStore1 (store);
260  if (store)
261  data->setStore (store);
262 }

◆ setStore1()

AuxElementStandaloneData * SG::AuxElement::setStore1 ( const SG::IConstAuxStore store)
privateinherited

Set the store associated with this object.

Parameters
storeThe new store.

Helper for setStore. Creates the AuxElementStandaloneData object if needed and returns it.

Parameters
storeThe new store.

Helper for setStore. Creates the @x AuxElementStandaloneData object if needed and returns it.

Definition at line 461 of file AuxElement.cxx.

462 {
463  if (store) {
464  // Want this object be standalone.
465  if (!m_container) {
466  // Not in a container (and no private store). Make a new object.
467  AuxElementStandaloneData* data = new AuxElementStandaloneData;
469  m_container = data;
470  return data;
471  }
472  if (usingStandaloneStore()) {
473  // Standalone --- return existing object.
474  return static_cast<AuxElementStandaloneData*> (container());
475  }
476  // Otherwise, it's an error.
477  throw ExcBadPrivateStore ("Attempt to attach a standalone store to an "
478  "object in a container or with a private store.");
479  }
480 
481  else {
482  // Getting rid of a standalone store.
483  if (usingStandaloneStore()) {
485  delete m_container;
486  m_container = 0;
487  }
488  else if (m_container != 0)
489  throw ExcBadPrivateStore ("Attempt to remove a standalone store from an "
490  "object in a container or with a private store.");
491  return 0;
492  }
493 }

◆ setTrackFilterProngs()

void xAOD::TauJet_v3::setTrackFilterProngs ( int  )

◆ setTrackFilterQuality()

void xAOD::TauJet_v3::setTrackFilterQuality ( int  )

◆ setVertex()

void xAOD::TauJet_v3::setVertex ( const xAOD::VertexContainer cont,
const xAOD::Vertex vertex 
)

Definition at line 667 of file TauJet_v3.cxx.

667  {
668  if( vertexAcc( *this ).isValid() )
669  vertexAcc( *this ).reset();
670  vertexAcc( *this ).toContainedElement( *cont, vertex );
671  }

◆ setVertexLink()

void xAOD::TauJet_v3::setVertexLink ( const VertexLink_t vertexLink)

◆ shotPFO()

const PFO* xAOD::TauJet_v3::shotPFO ( size_t  i) const

Get the pointer to a given shot PFO associated with this tau.

◆ shotPFOLinks()

const PFOLinks_t& xAOD::TauJet_v3::shotPFOLinks ( ) const

◆ tauTrackLinks()

const TauJet_v3::TauTrackLinks_t xAOD::TauJet_v3::tauTrackLinks ( TauJetParameters::TauTrackFlag  flag = TauJetParameters::TauTrackFlag::classifiedCharged) const

Definition at line 401 of file TauJet_v3.cxx.

401  {
403  return tauTrackLinksWithMask(mask);
404  }

◆ tauTrackLinksWithMask()

const TauJet_v3::TauTrackLinks_t xAOD::TauJet_v3::tauTrackLinksWithMask ( unsigned int  mask) const

Definition at line 406 of file TauJet_v3.cxx.

406  {
408  for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){
409  // protection against tau track thinning
410  if(!link.isValid()) continue;
411  if( (*link)->flagWithMask(mask))
412  links.push_back(link);
413  }
414  return links;
415  }

◆ track()

const TauTrack * xAOD::TauJet_v3::track ( size_t  i,
TauJetParameters::TauTrackFlag  flag = TauJetParameters::TauTrackFlag::classifiedCharged,
int container_index = 0 
) const

Get the pointer to a given tauTrack associated with this tau /*container index needed by trackNonConst*‍/.

Definition at line 422 of file TauJet_v3.cxx.

422  {
424  return trackWithMask(i, mask, container_index);
425  }

◆ trackFilterProngs()

int xAOD::TauJet_v3::trackFilterProngs ( ) const

◆ trackFilterQuality()

int xAOD::TauJet_v3::trackFilterQuality ( ) const

◆ trackIndices()

bool SG::AuxElement::trackIndices ( ) const
inherited

Return true if index tracking is enabled for this object.

Always returns true. Included here to be consistent with AuxVectorBase when standalone objects may be used as template parameters.

◆ trackNonConst()

TauTrack * xAOD::TauJet_v3::trackNonConst ( size_t  i,
TauJetParameters::TauTrackFlag  flag = TauJetParameters::TauTrackFlag::classifiedCharged 
)

Definition at line 448 of file TauJet_v3.cxx.

448  {
449  int container_index=-1;
450  const TauTrack* c_trk=track(i,flag, &container_index);
451  if(c_trk==nullptr || container_index<0) return nullptr;
452  ElementLink< xAOD::TauTrackContainer > link = tauTrackAcc(*this).at(0);//we don't care about this specific link, just the container
453  xAOD::TauTrackContainer* tauTrackContainer = link.getDataNonConstPtr();
454  TauTrack* trk=tauTrackContainer->at(container_index);
455  if(trk!=c_trk) std::cout << "Did not properly retrieve non-const tauTrack" << std::endl;
456  return trk;
457  }

◆ tracks()

std::vector< const TauTrack * > xAOD::TauJet_v3::tracks ( TauJetParameters::TauTrackFlag  flag = TauJetParameters::TauTrackFlag::classifiedCharged) const

Get the v<const pointer> to a given tauTrack collection associated with this tau.

Definition at line 461 of file TauJet_v3.cxx.

461  {
463  return tracksWithMask( mask );
464  }

◆ tracksWithMask()

std::vector< const TauTrack * > xAOD::TauJet_v3::tracksWithMask ( unsigned int  mask) const

Get the v<const pointer> to a given tauTrack collection associated with this tau.

Definition at line 467 of file TauJet_v3.cxx.

467  {
468  std::vector<const TauTrack*> trks;
469  for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){
470  // protection against tau track thinning
471  if(!link.isValid()) continue;
472  const TauTrack* trk = *link;
473  if(trk->flagWithMask(mask)){
474  trks.push_back(trk);
475  }
476  }
477  return trks;
478  }

◆ trackWithMask()

const TauTrack * xAOD::TauJet_v3::trackWithMask ( size_t  i,
unsigned int  mask,
int container_index = 0 
) const

Definition at line 427 of file TauJet_v3.cxx.

427  {
428  uint tracks_pass_mask=0;
429 
430  for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){
431  // protection against tau track thinning
432  if(!link.isValid()) continue;
433  const TauTrack* trk = *link;
434  if(trk->flagWithMask(mask)){
435  if(tracks_pass_mask==i) {
436  if(container_index) *container_index=link.index();
437  return trk;
438  }
439  else tracks_pass_mask++;
440  }
441  }
442  return nullptr;
443 
444  }

◆ type()

Type::ObjectType xAOD::TauJet_v3::type ( ) const
virtual

The type of the object as a simple enumeration.

Implements xAOD::IParticle.

Definition at line 204 of file TauJet_v3.cxx.

204  {
205  return Type::Tau;
206  }

◆ usingPrivateStore()

bool SG::AuxElement::usingPrivateStore ( ) const
inherited

Test to see if this object is currently using a private store.

Definition at line 280 of file AuxElement.cxx.

281 {
282  return havePrivateData() &&
283  typeid(*m_container) == typeid(AuxElementPrivateData);
284 }

◆ usingStandaloneStore()

bool SG::AuxElement::usingStandaloneStore ( ) const
inherited

Test to see if this object is currently using a standalone store.

Test to see if this object is currently using a private store.

Definition at line 290 of file AuxElement.cxx.

291 {
292  return havePrivateData() &&
293  typeid(*m_container) == typeid(AuxElementStandaloneData);
294 }

◆ vertex()

const Vertex* xAOD::TauJet_v3::vertex ( ) const

◆ vertexedClusters()

std::vector< xAOD::CaloVertexedTopoCluster > xAOD::TauJet_v3::vertexedClusters ( ) const

Definition at line 586 of file TauJet_v3.cxx.

586  {
587  return vertexedClustersAcc(*this);
588  }

◆ vertexLink()

const VertexLink_t& xAOD::TauJet_v3::vertexLink ( ) const

Member Data Documentation

◆ m_container

const SG::AuxVectorData* SG::ConstAuxElement::m_container
privateinherited

The container of which this object is an element.

Should be null if this object is not within a container, except that it may also point at a private store.

Definition at line 335 of file AuxElement.h.

◆ m_index

size_t SG::IAuxElement::m_index
privateinherited

The index of this element within its container.

Should be 0 if this object is not within a container.

Definition at line 128 of file IAuxElement.h.

◆ m_privateStoreState

PrivateStoreState SG::IAuxElement::m_privateStoreState
privateinherited

Definition at line 137 of file IAuxElement.h.

◆ supportsThinning

constexpr bool SG::AuxElement::supportsThinning = true
staticconstexprinherited

Mark that this type supports thinning operations.

See AthContainers/supportsThinning.h and AthenaPoolCnvSvc/T_AthenaPoolCnv.h. Helps guide which pool converter template will be used. If false, the default pool converter will be used rather than the aux store-specific one. Ordinary xAOD type should not touch this, but may be overridden in a derived class to handle certain special cases.

Definition at line 959 of file AuxElement.h.


The documentation for this class was generated from the following files:
LArG4FSStartPointFilter.part
part
Definition: LArG4FSStartPointFilter.py:21
python.CaloBCIDAvgAlgConfig.acc3
def acc3
Definition: CaloBCIDAvgAlgConfig.py:69
xAOD::TauJet_v3::phiDetectorAxis
double phiDetectorAxis() const
SG::AuxVectorData::getConstStore
const SG::IConstAuxStore * getConstStore() const
Return the current store, as a const interface.
xAOD::TauJet_v3::etaTrigCaloOnly
double etaTrigCaloOnly() const
xAOD::TauJet_v3::etaTauEtaCalib
double etaTauEtaCalib() const
SGTest::store
TestStore store
Definition: TestStore.cxx:23
beamspotman.r
def r
Definition: beamspotman.py:674
SG::ConstAuxElement::getAuxIDs
const SG::auxid_set_t & getAuxIDs() const
Return a set of identifiers for existing data items for this object.
Definition: AuxElement.cxx:153
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
xAOD::TauJet_v3::mTauEnergyScale
double mTauEnergyScale() const
xAOD::name
name
Definition: TriggerMenuJson_v1.cxx:29
xAOD::TauJet_v3::mDetectorAxis
double mDetectorAxis() const
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:79
xAOD::TauJet_v3::etaTauEnergyScale
double etaTauEnergyScale() const
get_generator_info.result
result
Definition: get_generator_info.py:21
xAOD::TauJetParameters::PanTauCellBasedProto
@ PanTauCellBasedProto
Definition: TauDefs.h:343
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
xAOD::TauJet_v3::mPanTauCellBased
double mPanTauCellBased() const
xAOD::TauJetParameters::IntermediateAxis
@ IntermediateAxis
Definition: TauDefs.h:338
xAOD::TauJet_v3::nTracksWithMask
size_t nTracksWithMask(unsigned int classification) const
Definition: TauJet_v3.cxx:504
xAOD::TauJet_v3::trackWithMask
const TauTrack * trackWithMask(size_t i, unsigned int mask, int *container_index=0) const
Definition: TauJet_v3.cxx:427
xAOD::TauJet_v3::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
Definition: TauJet_v3.cxx:225
xAOD::TauJet_v3::phiIntermediateAxis
double phiIntermediateAxis() const
xAOD::TauJet_v3::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
SG::AuxTypeRegistry::instance
static AuxTypeRegistry & instance()
Return the singleton registry instance.
Definition: AuxTypeRegistry.cxx:639
SG::Accessor< T >
SG::AuxVectorData::getDecorIDs
const SG::auxid_set_t & getDecorIDs() const
Return a set of identifiers for decorations for this object.
Definition: AuxVectorData.cxx:215
xAOD::TauJet_v3::etaDetectorAxis
double etaDetectorAxis() const
xAOD::TauJet_v3::etaIntermediateAxis
double etaIntermediateAxis() const
SG::AuxVectorData::getWritableAuxIDs
const SG::auxid_set_t & getWritableAuxIDs() const
Return a set of identifiers for writable data items in this store.
Definition: AuxVectorData.cxx:231
xAOD::TauJet_v3::phiFinalCalib
double phiFinalCalib() const
index
Definition: index.py:1
AthenaPoolTestRead.flags
flags
Definition: AthenaPoolTestRead.py:8
xAOD::TauJet_v3::mPanTauCellBasedProto
double mPanTauCellBasedProto() const
SG::ConstAuxElement::m_container
const SG::AuxVectorData * m_container
The container of which this object is an element.
Definition: AuxElement.h:335
xAOD::TauJet_v3::tracksWithMask
std::vector< const TauTrack * > tracksWithMask(unsigned int mask) const
Get the v<const pointer> to a given tauTrack collection associated with this tau.
Definition: TauJet_v3.cxx:467
xAOD::TauJet_v3::m
virtual double m() const
The invariant mass of the particle.
xAOD::TauJet_v3::etaFinalCalib
double etaFinalCalib() const
xAOD::TauJet_v3::nTracks
size_t nTracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Definition: TauJet_v3.cxx:488
SG::AuxElement::clearAuxHelper
static void clearAuxHelper(AuxVectorData &container, size_t index)
Clear all aux data associated with an element.
Definition: AuxElement.cxx:639
xAOD::TauJetParameters::classifiedCharged
@ classifiedCharged
Definition: TauDefs.h:406
SG::AuxVectorData::hasNonConstStore
bool hasNonConstStore() const
Return true if this object has an associated non-const store.
xAOD::TauJet_v3::cluster
const IParticle * cluster(size_t i) const
Get the pointer to a given cluster associated with this tau.
athena.value
value
Definition: athena.py:124
SG::AuxElement::usingStandaloneStore
bool usingStandaloneStore() const
Test to see if this object is currently using a standalone store.
Definition: AuxElement.cxx:290
xAOD::TauJetParameters::TauEtaCalib
@ TauEtaCalib
Definition: TauDefs.h:340
detail
Definition: extract_histogram_tag.cxx:14
SG::ConstAuxElement::setIndexPrivate
bool setIndexPrivate(size_t index, const SG::AuxVectorData *container)
Set the index/container for this element.
Definition: AuxElement.cxx:97
xAOD::TauJet_v3::panTauDetail
bool panTauDetail(TauJetParameters::PanTauDetails panTauDetail, int &value) const
Get and set values of pantau details variables via enum.
Definition: TauJet_v3.cxx:339
SG::ConstAccessor< T >
xAOD::TauJet_v3::ptJetSeed
double ptJetSeed() const
SG::ExcConstAuxData
Exception — Non-const operation performed on const aux data.
Definition: Control/AthContainers/AthContainers/exceptions.h:77
SG::IAuxElement::setNoPrivateData
void setNoPrivateData()
Record that this element does not have private data.
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
xAOD::TauJet_v3::ptDetectorAxis
double ptDetectorAxis() const
xAOD::TauJet_v3::phiTrigCaloOnly
double phiTrigCaloOnly() const
xAOD::TauJet_v3::genvecP4
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal taus type.
Definition: TauJet_v3.cxx:102
xAOD::TauJetParameters::ipSigLeadTrk
@ ipSigLeadTrk
Definition: TauDefs.h:160
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:459
xAOD::TauJetParameters::JetSeed
@ JetSeed
Definition: TauDefs.h:336
SG::AuxVectorData::getAuxIDs
const SG::auxid_set_t & getAuxIDs() const
Return a set of identifiers for existing data items in store associated with this object.
Definition: AuxVectorData.cxx:203
xAOD::TauJet_v3::mTauEtaCalib
double mTauEtaCalib() const
xAOD::IParticle::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:69
SG::AuxTypeRegistry
Handle mappings between names and auxid_t.
Definition: AuxTypeRegistry.h:61
xAOD::TauJet_v3::phiJetSeed
double phiJetSeed() const
SG::IAuxElement::index
size_t index() const
Return the index of this element within its container.
xAOD::TauJet_v3::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
SG::IAuxElement::setHadPrivateData
void setHadPrivateData()
Record that this element used to have private data.
uint
unsigned int uint
Definition: LArOFPhaseFill.cxx:20
xAOD::TauJet_v3::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
SG::auxid_t
size_t auxid_t
Identifier for a particular aux data item.
Definition: AuxTypes.h:27
xAOD::TauJet_v3::tauTrackLinksWithMask
const TauTrackLinks_t tauTrackLinksWithMask(unsigned int) const
Definition: TauJet_v3.cxx:406
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:62
xAOD::TauJet_v3::etaPanTauCellBased
double etaPanTauCellBased() const
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
xAOD::TauJet_v3::ptTauEnergyScale
double ptTauEnergyScale() const
lumiFormat.i
int i
Definition: lumiFormat.py:85
SG::AuxElement::copyAux
void copyAux(const ConstAuxElement &other, bool warnUnlocked=false)
Copy aux data from another object.
Definition: AuxElement.cxx:600
beamspotman.n
n
Definition: beamspotman.py:729
SG::AuxElement::AuxElement
AuxElement()
Default constructor.
DMTest::links
links
Definition: CLinks_v1.cxx:22
python.CaloBCIDAvgAlgConfig.acc1
def acc1
Definition: CaloBCIDAvgAlgConfig.py:49
SG::IAuxElement::havePrivateData
bool havePrivateData() const
True if this element currently has private data.
ATHCONTAINERS_WARNING
#define ATHCONTAINERS_WARNING(ctx, msg)
Definition: error.h:57
xAOD::TauJet_v3::etaJetSeed
double etaJetSeed() const
master.flag
bool flag
Definition: master.py:29
SG::AuxVectorData::getStore
SG::IAuxStore * getStore()
Return the current store, as a non-const interface.
SG::ConstAuxElement::getDecorIDs
const SG::auxid_set_t & getDecorIDs() const
Return a set of identifiers for decorations for this object.
Definition: AuxElement.cxx:172
python.CaloBCIDAvgAlgConfig.acc2
def acc2
Definition: CaloBCIDAvgAlgConfig.py:59
xAOD::TauJet_v3::track
const TauTrack * track(size_t i, TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged, int *container_index=0) const
Get the pointer to a given tauTrack associated with this tau /*container index needed by trackNonCons...
Definition: TauJet_v3.cxx:422
AthenaPoolTestRead.acc
acc
Definition: AthenaPoolTestRead.py:16
SG::AuxElementPrivateData
Internal data container for private store.
Definition: AuxElement.cxx:46
xAOD::TauJet_v3::ptTauEtaCalib
double ptTauEtaCalib() const
xAOD::TauJet_v3::etaPanTauCellBasedProto
double etaPanTauCellBasedProto() const
xAOD::TauJet_v3::ptTrigCaloOnly
double ptTrigCaloOnly() const
xAOD::TauJetParameters::PanTauCellBased
@ PanTauCellBased
Definition: TauDefs.h:344
SG::AuxElement::index
size_t index() const
Return the index of this element within its container.
xAOD::TauJetParameters::numTopoClusters
@ numTopoClusters
get number of topocluster constituents of jet associated to tau candidate
Definition: TauDefs.h:173
SG::AuxVectorData::hasStore
bool hasStore() const
Return true if this object has an associated store.
xAOD::xAODTau::discriminantAccessorV3
const SG::Accessor< float > * discriminantAccessorV3(xAOD::TauJetParameters::TauID discriminant)
Helper function for managing accessors to id input and output variables defined as enums in TauDefs....
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
python.LArRecUtilsConfig.acc4
def acc4
Definition: LArRecUtilsConfig.py:196
xAOD::TauJet_v3::phiTauEnergyScale
double phiTauEnergyScale() const
xAOD::TauJet_v3::mJetSeed
double mJetSeed() const
xAOD::TauJet_v3::GenVecFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for taus.
Definition: TauJet_v3.h:69
xAOD::TauJetParameters::TauEnergyScale
@ TauEnergyScale
Definition: TauDefs.h:339
xAOD::TauJet_v3::mTrigCaloOnly
double mTrigCaloOnly() const
xAOD::TauJetParameters::classifiedIsolation
@ classifiedIsolation
Definition: TauDefs.h:407
xAOD::CaloCluster_v1::p4
virtual FourMom_t p4() const
The full 4-momentum of the particle.
Definition: CaloCluster_v1.cxx:465
xAOD::TauJet_v3::detail
bool detail(TauJetParameters::Detail detail, int &value) const
Get and set values of common details variables via enum.
Definition: TauJet_v3.cxx:264
xAOD::TauJet_v3::phiPanTauCellBased
double phiPanTauCellBased() const
SG::IAuxElement::setHavePrivateData
void setHavePrivateData()
Record that this element currently has private data.
SG::AuxVectorData::clearCache
void clearCache()
Clear the cached aux data pointers.
xAOD::TauTrack_v1::TrackFlagType
uint16_t TrackFlagType
Definition: TauTrack_v1.h:61
SG::AuxElement::makePrivateStore
void makePrivateStore()
Create a new (empty) private store for this object.
Definition: AuxElement.cxx:192
xAOD::TauJetParameters::TrigCaloOnly
@ TrigCaloOnly
Definition: TauDefs.h:345
xAOD::TauTrack
TauTrack_v1 TauTrack
Definition of the current version.
Definition: TauTrack.h:16
CxxUtils::to
CONT to(RANGE &&r)
Definition: ranges.h:39
PlotSFuncertainty.calib
calib
Definition: PlotSFuncertainty.py:110
xAOD::TauJet_v3::phiTauEtaCalib
double phiTauEtaCalib() const
xAOD::IParticle::IParticle
IParticle()=default
SG::IAuxElement::setIndex
void setIndex(size_t index)
Set the index of this element within its container.
xAOD::TauJet_v3::mIntermediateAxis
double mIntermediateAxis() const
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
SG::AuxVectorData::clearDecorations
bool clearDecorations() const
Clear all decorations.
Definition: AuxVectorData.cxx:653
xAOD::TauJet_v3::TauTrackLinks_t
std::vector< ElementLink< xAOD::TauTrackContainer > > TauTrackLinks_t
Definition: TauJet_v3.h:232
SG::ExcBadPrivateStore
Exception — Bad use of private store.
Definition: Control/AthContainers/AthContainers/exceptions.h:113
xAOD::TauJet_v3::vertex
const Vertex * vertex() const
xAOD::TauJet_v3::p4
virtual FourMom_t p4() const
The full 4-momentum of the particle.
Definition: TauJet_v3.cxx:96
SG::Accessor::isAvailableWritable
bool isAvailableWritable(ELT &e) const
Test to see if this variable exists in the store and is writable.
SG::IConstAuxStore::getDecorIDs
virtual const SG::auxid_set_t & getDecorIDs() const =0
Return a set of identifiers for decorations in this store.
xAODType::Tau
@ Tau
The object is a tau (jet)
Definition: ObjectType.h:49
SG::auxid_set_t
A set of aux data identifiers.
Definition: AuxTypes.h:47
SG::ConstAccessor::isAvailable
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
SG::AuxVectorData
Manage lookup of vectors of auxiliary data.
Definition: AuxVectorData.h:168
ATLAS_THREAD_SAFE
#define ATLAS_THREAD_SAFE
Definition: checker_macros.h:211
SG::ConstAuxElement::releasePrivateStoreForDtor
void releasePrivateStoreForDtor()
Out-of-line portion of destructor.
Definition: AuxElement.cxx:80
DataVector::at
const T * at(size_type n) const
Access an element, as an rvalue.
SG::AuxElement::container
const SG::AuxVectorData * container() const
Return the container holding this element.
xAOD::TauJetParameters::DetectorAxis
@ DetectorAxis
Definition: TauDefs.h:337
xAOD::TauJet_v3::ptIntermediateAxis
double ptIntermediateAxis() const
xAOD::TauJetParameters::FinalCalib
@ FinalCalib
Definition: TauDefs.h:346
IParticle
Definition: Event/EventKernel/EventKernel/IParticle.h:43
xAOD::TauJet_v3::ptPanTauCellBased
double ptPanTauCellBased() const
xAOD::TauJet_v3::mFinalCalib
double mFinalCalib() const
xAOD::TauJet_v3::ptFinalCalib
double ptFinalCalib() const
SG::IAuxElement::hadPrivateData
bool hadPrivateData() const
True if this element had private data before it was added to its current container.
SG::AuxElement::copyAuxHelper
static void copyAuxHelper(AuxVectorData &container, size_t index, const ConstAuxElement &other, bool warnUnlocked)
Copy aux data from another object.
Definition: AuxElement.cxx:667
SG::IConstAuxStore::getAuxIDs
virtual const SG::auxid_set_t & getAuxIDs() const =0
Return a set of identifiers for existing data items in this store.
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35
SG::AuxElement::setStore1
AuxElementStandaloneData * setStore1(const SG::IConstAuxStore *store)
Set the store associated with this object.
Definition: AuxElement.cxx:461
xAOD::TauJet_v3::phiPanTauCellBasedProto
double phiPanTauCellBasedProto() const
CxxUtils::ConcurrentBitset::test
bool test(bit_t bit) const
Test to see if a bit is set.
xAOD::TauJet_v3::ptPanTauCellBasedProto
double ptPanTauCellBasedProto() const