ATLAS Offline Software
Loading...
Searching...
No Matches
DiTauExtraVarDecorator Class Reference

#include <DiTauExtraVarDecorator.h>

Inheritance diagram for DiTauExtraVarDecorator:
Collaboration diagram for DiTauExtraVarDecorator:

Classes

struct  DitauTrackingInfo
struct  SubjetTrackingInfo

Public Member Functions

 DiTauExtraVarDecorator (const std::string &type, const std::string &name, const IInterface *parent)
virtual ~DiTauExtraVarDecorator ()
virtual StatusCode initialize () override
 Tool initializer.
virtual StatusCode execute (DiTauCandidateData *data, const EventContext &ctx) const override
 Execute - called for each Ditau candidate.
virtual StatusCode executeObj (xAOD::DiTauJet &xDiTau, const EventContext &ctx) const override
 Execute - called for each Ditau jet.
virtual StatusCode eventInitialize (DiTauCandidateData *data)
 Event initializer - called at the beginning of each event.
virtual StatusCode finalize ()
 Finalizer.
template<class T>
bool retrieveTool (T &tool)
 Convenience functions to handle storegate objects.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const

Static Public Member Functions

static const InterfaceID & interfaceID ()
 InterfaceID implementation needed for ToolHandle.

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

int n_subjets (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float ditau_pt (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float f_core (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float f_subjet (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float f_subjets (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float f_track (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float R_max (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
int n_track (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
int n_tracks (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
int n_isotrack (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_track (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_track_all (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_track_core (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_isotrack (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_core (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float R_tracks (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float mass_track (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float mass_track_core (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float mass_core (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float mass_track_all (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float mass_tracks (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float E_frac (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float R_subjets (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float d0_leadtrack (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float f_isotracks (const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
StatusCode getTrackingInfo (xAOD::DiTauJet &xDiTau, DitauTrackingInfo &trackingInfo) const
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

Gaudi::Property< float > m_dDefault {this, "DefaultValue", -1234}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_ditau_ptDecKey { this, "ditauPtDecName", "DiTauJets.ditau_pt", "Name of the ditauPt Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_core_leadDecKey { this, "fCoreLeadDecName", "DiTauJets.f_core_lead", "Name of the fCoreLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_core_sublDecKey { this, "fCoreSublDecName", "DiTauJets.f_core_subl", "Name of the fCoreSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_subjet_leadDecKey { this, "fSubjetLeadDecName", "DiTauJets.f_subjet_lead", "Name of the fSubjetLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_subjet_sublDecKey { this, "fSubjetSublDecName", "DiTauJets.f_subjet_subl", "Name of the fSubjetSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_subjetsDecKey { this, "fSubjetsDecName", "DiTauJets.f_subjets", "Name of the fSubjets Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_track_leadDecKey { this, "fTrackLeadDecName", "DiTauJets.f_track_lead", "Name of the fTrackLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_track_sublDecKey { this, "fTrackSublDecName", "DiTauJets.f_track_subl", "Name of the fTrackSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_max_leadDecKey { this, "RMaxLeadDecName", "DiTauJets.R_max_lead", "Name of the RMaxLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_max_sublDecKey { this, "RMaxSublDecName", "DiTauJets.R_max_subl", "Name of the RMaxSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_n_trackDecKey { this, "nTrackDecName", "DiTauJets.n_track", "Name of the nTrack Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_n_tracks_leadDecKey { this, "nTracksLeadDecName", "DiTauJets.n_tracks_lead", "Name of the nTracksLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_n_tracks_sublDecKey { this, "nTracksSublDecName", "DiTauJets.n_tracks_subl", "Name of the nTracksSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_n_isotrackDecKey { this, "nIsotrackDecName", "DiTauJets.n_isotrack", "Name of the nIsotrack Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_trackDecKey { this, "RTrackDecName", "DiTauJets.R_track", "Name of the RTrack Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_track_coreDecKey { this, "RTrackCoreDecName", "DiTauJets.R_track_core", "Name of the RTrackCore Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_track_allDecKey { this, "RTrackAllDecName", "DiTauJets.R_track_all", "Name of the RTrackAll Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_isotrackDecKey { this, "RIsotrackDecName", "DiTauJets.R_isotrack", "Name of the RIsotrack Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_core_leadDecKey { this, "RCoreLeadDecName", "DiTauJets.R_core_lead", "Name of the RCoreLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_core_sublDecKey { this, "RCoreSublDecName", "DiTauJets.R_core_subl", "Name of the RCoreSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_tracks_leadDecKey { this, "RTracksLeadDecName", "DiTauJets.R_tracks_lead", "Name of the RTracksLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_tracks_sublDecKey { this, "RTracksSublDecName", "DiTauJets.R_tracks_subl", "Name of the RTracksSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_trackDecKey { this, "MTrackDecName", "DiTauJets.m_track", "Name of the MTrack Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_track_coreDecKey { this, "MTrackCoreDecName", "DiTauJets.m_track_core", "Name of the MTrackCore Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_core_leadDecKey { this, "MCoreLeadDecName", "DiTauJets.m_core_lead", "Name of the MCoreLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_core_sublDecKey { this, "MCoreSublDecName", "DiTauJets.m_core_subl", "Name of the MCoreSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_track_allDecKey { this, "MTrackAllDecName", "DiTauJets.m_track_all", "Name of the MTrackAll Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_tracks_leadDecKey { this, "MTracksLeadDecName", "DiTauJets.m_tracks_lead", "Name of the MTracksLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_M_tracks_sublDecKey { this, "MTracksSublDecName", "DiTauJets.m_tracks_subl", "Name of the MTracksSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_E_frac_sublDecKey { this, "EFracSublDecName", "DiTauJets.E_frac_subl", "Name of the EFracSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_E_frac_subsublDecKey { this, "EFracSubsublDecName", "DiTauJets.E_frac_subsubl", "Name of the EFracSubsubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_subjets_sublDecKey { this, "RSubjetsSublDecName", "DiTauJets.R_subjets_subl", "Name of the RSubjetsSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_R_subjets_subsublDecKey { this, "RSubjetsSubsublDecName", "DiTauJets.R_subjets_subsubl", "Name of the RSubjetsSubsubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_d0_leadtrack_leadDecKey { this, "d0LeadtrackLeadDecName", "DiTauJets.d0_leadtrack_lead", "Name of the d0LeadtrackLead Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_d0_leadtrack_sublDecKey { this, "d0LeadtrackSublDecName", "DiTauJets.d0_leadtrack_subl", "Name of the d0LeadtrackSubl Decorator"}
SG::WriteDecorHandleKey< xAOD::DiTauJetContainerm_f_isotracksDecKey { this, "fIsotracksDecName", "DiTauJets.f_isotracks", "Name of the fIsotracks Decorator"}
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

Definition at line 17 of file DiTauExtraVarDecorator.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ DiTauExtraVarDecorator()

DiTauExtraVarDecorator::DiTauExtraVarDecorator ( const std::string & type,
const std::string & name,
const IInterface * parent )

Definition at line 18 of file DiTauExtraVarDecorator.cxx.

18 :
19 DiTauToolBase(type, name, parent)
20{
21 declareInterface<DiTauToolBase > (this);
22}
DiTauToolBase(const std::string &type, const std::string &name, const IInterface *parent)

◆ ~DiTauExtraVarDecorator()

DiTauExtraVarDecorator::~DiTauExtraVarDecorator ( )
virtualdefault

Member Function Documentation

◆ d0_leadtrack()

float DiTauExtraVarDecorator::d0_leadtrack ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 403 of file DiTauExtraVarDecorator.cxx.

403 {
404 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
405 if (!subjetInfo.leadTrack) {
406 return m_dDefault;
407 }
408 return subjetInfo.leadTrack->d0();
409}
Gaudi::Property< float > m_dDefault
float d0() const
Returns the parameter.

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ ditau_pt()

float DiTauExtraVarDecorator::ditau_pt ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 176 of file DiTauExtraVarDecorator.cxx.

177{
178 return xDiTau.subjetPt(0)+xDiTau.subjetPt(1);
179}
float subjetPt(unsigned int numSubjet) const

◆ E_frac()

float DiTauExtraVarDecorator::E_frac ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 393 of file DiTauExtraVarDecorator.cxx.

393 {
394 return xDiTau.subjetE(iSubjet) / xDiTau.subjetE(0);
395}
float subjetE(unsigned int numSubjet) const

◆ eventInitialize()

StatusCode DiTauToolBase::eventInitialize ( DiTauCandidateData * data)
virtualinherited

Event initializer - called at the beginning of each event.

Definition at line 32 of file DiTauToolBase.cxx.

33{
34 return StatusCode::SUCCESS;
35}

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ execute()

StatusCode DiTauExtraVarDecorator::execute ( DiTauCandidateData * data,
const EventContext & ctx ) const
overridevirtual

Execute - called for each Ditau candidate.

Reimplemented from DiTauToolBase.

Definition at line 68 of file DiTauExtraVarDecorator.cxx.

68 {
69 xAOD::DiTauJet* xDiTauPtr = data->xAODDiTau;
70 xAOD::DiTauJet& xDiTau = *xDiTauPtr;
71 ATH_CHECK( executeObj(xDiTau, ctx));
72 return StatusCode::SUCCESS;
73}
#define ATH_CHECK
Evaluate an expression and check for errors.
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
virtual StatusCode executeObj(xAOD::DiTauJet &xDiTau, const EventContext &ctx) const override
Execute - called for each Ditau jet.
DiTauJet_v1 DiTauJet
Definition of the current version.
Definition DiTauJet.h:17

◆ executeObj()

StatusCode DiTauExtraVarDecorator::executeObj ( xAOD::DiTauJet & xDiTau,
const EventContext & ctx ) const
overridevirtual

Execute - called for each Ditau jet.

Reimplemented from DiTauToolBase.

Definition at line 75 of file DiTauExtraVarDecorator.cxx.

75 {
76
77 ATH_MSG_DEBUG("Calculate DiTau ID variables");
78
79 static const SG::Accessor< int > n_subjetsDec("n_subjets");
80 DitauTrackingInfo ditauTrackingInfo;
81 ATH_CHECK( getTrackingInfo(xDiTau, ditauTrackingInfo) );
82 n_subjetsDec(xDiTau) = ditauTrackingInfo.nSubjets;
83
84 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > ditau_ptDec (m_ditau_ptDecKey, ctx); ditau_ptDec(xDiTau) = m_dDefault;
85 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_core_leadDec (m_f_core_leadDecKey, ctx); f_core_leadDec(xDiTau) = m_dDefault;
86 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_core_sublDec (m_f_core_sublDecKey, ctx); f_core_sublDec(xDiTau) = m_dDefault;
87 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_subjet_leadDec (m_f_subjet_leadDecKey, ctx); f_subjet_leadDec(xDiTau) = m_dDefault;
88 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_subjet_sublDec (m_f_subjet_sublDecKey, ctx); f_subjet_sublDec(xDiTau) = m_dDefault;
89 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_subjetsDec (m_f_subjetsDecKey, ctx); f_subjetsDec(xDiTau) = m_dDefault;
90 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_track_leadDec (m_f_track_leadDecKey, ctx); f_track_leadDec(xDiTau) = m_dDefault;
91 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_track_sublDec (m_f_track_sublDecKey, ctx); f_track_sublDec(xDiTau) = m_dDefault;
92 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_max_leadDec (m_R_max_leadDecKey, ctx); R_max_leadDec(xDiTau) = m_dDefault;
93 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_max_sublDec (m_R_max_sublDecKey, ctx); R_max_sublDec(xDiTau) = m_dDefault;
94 SG::WriteDecorHandle<xAOD::DiTauJetContainer, int > n_trackDec (m_n_trackDecKey, ctx); n_trackDec(xDiTau) = m_dDefault;
95 SG::WriteDecorHandle<xAOD::DiTauJetContainer, int > n_tracks_leadDec (m_n_tracks_leadDecKey, ctx); n_tracks_leadDec(xDiTau) = m_dDefault;
96 SG::WriteDecorHandle<xAOD::DiTauJetContainer, int > n_tracks_sublDec (m_n_tracks_sublDecKey, ctx); n_tracks_sublDec(xDiTau) = m_dDefault;
97 SG::WriteDecorHandle<xAOD::DiTauJetContainer, int > n_isotrackDec (m_n_isotrackDecKey, ctx); n_isotrackDec(xDiTau) = m_dDefault;
98 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_trackDec (m_R_trackDecKey, ctx); R_trackDec(xDiTau) = m_dDefault;
99 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_track_coreDec (m_R_track_coreDecKey, ctx); R_track_coreDec(xDiTau) = m_dDefault;
100 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_track_allDec (m_R_track_allDecKey, ctx); R_track_allDec(xDiTau) = m_dDefault;
101 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_isotrackDec (m_R_isotrackDecKey, ctx); R_isotrackDec(xDiTau) = m_dDefault;
102 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_core_leadDec (m_R_core_leadDecKey, ctx); R_core_leadDec(xDiTau) = m_dDefault;
103 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_core_sublDec (m_R_core_sublDecKey, ctx); R_core_sublDec(xDiTau) = m_dDefault;
104 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_tracks_leadDec (m_R_tracks_leadDecKey, ctx); R_tracks_leadDec(xDiTau) = m_dDefault;
105 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_tracks_sublDec (m_R_tracks_sublDecKey, ctx); R_tracks_sublDec(xDiTau) = m_dDefault;
106 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_trackDec (m_M_trackDecKey, ctx); M_trackDec(xDiTau) = m_dDefault;
107 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_track_coreDec (m_M_track_coreDecKey, ctx); M_track_coreDec(xDiTau) = m_dDefault;
108 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_core_leadDec (m_M_core_leadDecKey, ctx); M_core_leadDec(xDiTau) = m_dDefault;
109 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_core_sublDec (m_M_core_sublDecKey, ctx); M_core_sublDec(xDiTau) = m_dDefault;
110 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_track_allDec (m_M_track_allDecKey, ctx); M_track_allDec(xDiTau) = m_dDefault;
111 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_tracks_leadDec (m_M_tracks_leadDecKey, ctx); M_tracks_leadDec(xDiTau) = m_dDefault;
112 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > M_tracks_sublDec (m_M_tracks_sublDecKey, ctx); M_tracks_sublDec(xDiTau) = m_dDefault;
113 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > E_frac_sublDec (m_E_frac_sublDecKey, ctx); E_frac_sublDec(xDiTau) = m_dDefault;
114 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > E_frac_subsublDec (m_E_frac_subsublDecKey, ctx); E_frac_subsublDec(xDiTau) = m_dDefault;
115 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_subjets_sublDec (m_R_subjets_sublDecKey, ctx); R_subjets_sublDec(xDiTau) = m_dDefault;
116 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > R_subjets_subsublDec (m_R_subjets_subsublDecKey, ctx); R_subjets_subsublDec(xDiTau) = m_dDefault;
117 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > d0_leadtrack_leadDec (m_d0_leadtrack_leadDecKey, ctx); d0_leadtrack_leadDec(xDiTau) = m_dDefault;
118 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > d0_leadtrack_sublDec (m_d0_leadtrack_sublDecKey, ctx); d0_leadtrack_sublDec(xDiTau) = m_dDefault;
119 SG::WriteDecorHandle<xAOD::DiTauJetContainer, float > f_isotracksDec (m_f_isotracksDecKey, ctx); f_isotracksDec(xDiTau) = m_dDefault;
120
121 n_trackDec(xDiTau) = n_track(xDiTau, ditauTrackingInfo);
122 n_isotrackDec(xDiTau) = n_isotrack(xDiTau, ditauTrackingInfo);
123 R_track_allDec(xDiTau) = R_track_all(xDiTau, ditauTrackingInfo);
124
125 M_track_allDec(xDiTau) = mass_track_all(xDiTau, ditauTrackingInfo);
126 f_isotracksDec(xDiTau) = f_isotracks(xDiTau, ditauTrackingInfo);
127
128 if (ditauTrackingInfo.nSubjets > 2) {
129 E_frac_subsublDec(xDiTau) = E_frac (xDiTau, ditauTrackingInfo, 2);
130 R_subjets_subsublDec(xDiTau) = R_subjets (xDiTau, ditauTrackingInfo, 2);
131 }
132 if (ditauTrackingInfo.nSubjets > 1) {
133 ditau_ptDec(xDiTau) = ditau_pt (xDiTau, ditauTrackingInfo);
134 f_subjetsDec(xDiTau) = f_subjets (xDiTau, ditauTrackingInfo);
135 R_track_coreDec(xDiTau) = R_track_core (xDiTau, ditauTrackingInfo);
136 R_trackDec(xDiTau) = R_track (xDiTau, ditauTrackingInfo);
137 R_isotrackDec(xDiTau) = R_isotrack (xDiTau, ditauTrackingInfo);
138 M_trackDec(xDiTau) = mass_track (xDiTau, ditauTrackingInfo);
139 M_track_coreDec(xDiTau) = mass_track_core(xDiTau, ditauTrackingInfo);
140 d0_leadtrack_sublDec(xDiTau) = d0_leadtrack (xDiTau, ditauTrackingInfo, 1);
141 f_core_sublDec(xDiTau) = f_core (xDiTau, ditauTrackingInfo, 1);
142 f_subjet_sublDec(xDiTau) = f_subjet (xDiTau, ditauTrackingInfo, 1);
143 f_track_sublDec(xDiTau) = f_track (xDiTau, ditauTrackingInfo, 1);
144 R_max_sublDec(xDiTau) = R_max (xDiTau, ditauTrackingInfo, 1);
145 n_tracks_sublDec(xDiTau) = n_tracks (xDiTau, ditauTrackingInfo, 1);
146 R_core_sublDec(xDiTau) = R_core (xDiTau, ditauTrackingInfo, 1);
147 R_tracks_sublDec(xDiTau) = R_tracks (xDiTau, ditauTrackingInfo, 1);
148 M_core_sublDec(xDiTau) = mass_core (xDiTau, ditauTrackingInfo, 1);
149 M_tracks_sublDec(xDiTau) = mass_tracks (xDiTau, ditauTrackingInfo, 1);
150 E_frac_sublDec(xDiTau) = E_frac (xDiTau, ditauTrackingInfo, 1);
151 R_subjets_sublDec(xDiTau) = R_subjets (xDiTau, ditauTrackingInfo, 1);
152 }
153 if (ditauTrackingInfo.nSubjets > 0) {
154 d0_leadtrack_leadDec(xDiTau) = d0_leadtrack (xDiTau, ditauTrackingInfo, 0);
155 f_core_leadDec(xDiTau) = f_core (xDiTau, ditauTrackingInfo, 0);
156 f_subjet_leadDec(xDiTau) = f_subjet (xDiTau, ditauTrackingInfo, 0);
157 f_track_leadDec(xDiTau) = f_track (xDiTau, ditauTrackingInfo, 0);
158 R_max_leadDec(xDiTau) = R_max (xDiTau, ditauTrackingInfo, 0);
159 n_tracks_leadDec(xDiTau) = n_tracks (xDiTau, ditauTrackingInfo, 0);
160 R_core_leadDec(xDiTau) = R_core (xDiTau, ditauTrackingInfo, 0);
161 R_tracks_leadDec(xDiTau) = R_tracks (xDiTau, ditauTrackingInfo, 0);
162 M_core_leadDec(xDiTau) = mass_core (xDiTau, ditauTrackingInfo, 0);
163 M_tracks_leadDec(xDiTau) = mass_tracks (xDiTau, ditauTrackingInfo, 0);
164 }
165 return StatusCode::SUCCESS;
166}
#define ATH_MSG_DEBUG(x)
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_core_sublDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_n_isotrackDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_core_leadDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_n_tracks_sublDecKey
float f_subjet(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float ditau_pt(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_track_allDecKey
int n_track(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_E_frac_subsublDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_ditau_ptDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_d0_leadtrack_leadDecKey
float f_isotracks(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
StatusCode getTrackingInfo(xAOD::DiTauJet &xDiTau, DitauTrackingInfo &trackingInfo) const
float f_track(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_tracks_leadDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_isotrackDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_track_allDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_track_sublDecKey
float R_track_all(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_tracks(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_track_coreDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_core_sublDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_tracks_sublDecKey
float R_track(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_trackDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_core_sublDecKey
float mass_tracks(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
float mass_track(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float R_isotrack(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float mass_core(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_max_sublDecKey
float R_max(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_track_coreDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_E_frac_sublDecKey
float f_subjets(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_n_trackDecKey
float f_core(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_subjet_sublDecKey
float R_core(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_subjets_sublDecKey
float R_subjets(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_core_leadDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_max_leadDecKey
float R_track_core(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
float E_frac(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_subjet_leadDecKey
float mass_track_all(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_subjetsDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_tracks_leadDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_d0_leadtrack_sublDecKey
float d0_leadtrack(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_tracks_sublDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_isotracksDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_trackDecKey
float mass_track_core(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_R_subjets_subsublDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_f_track_leadDecKey
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_n_tracks_leadDecKey
int n_isotrack(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
int n_tracks(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo, int iSubjet) const
SG::WriteDecorHandleKey< xAOD::DiTauJetContainer > m_M_core_leadDecKey

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ f_core()

float DiTauExtraVarDecorator::f_core ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 181 of file DiTauExtraVarDecorator.cxx.

182{
183 return xDiTau.fCore(iSubjet);
184}
float fCore(unsigned int numSubjet) const

◆ f_isotracks()

float DiTauExtraVarDecorator::f_isotracks ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 411 of file DiTauExtraVarDecorator.cxx.

411 {
412 float iso_pt = 0;
413 for (const xAOD::TrackParticle* xTrack: ditauInfo.vIsoTracks) {
414 iso_pt += xTrack->pt();
415 }
416 return iso_pt / xDiTau.pt();
417}
virtual double pt() const
The transverse momentum ( ) of the particle.
virtual double pt() const override final
The transverse momentum ( ) of the particle.
TrackParticle_v1 TrackParticle
Reference the current persistent version:

◆ f_subjet()

float DiTauExtraVarDecorator::f_subjet ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 186 of file DiTauExtraVarDecorator.cxx.

186 {
187 return xDiTau.subjetPt(iSubjet) / xDiTau.pt();
188}

◆ f_subjets()

float DiTauExtraVarDecorator::f_subjets ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 190 of file DiTauExtraVarDecorator.cxx.

191{
192 return (xDiTau.subjetPt(0) + xDiTau.subjetPt(1))/ xDiTau.pt();
193}

◆ f_track()

float DiTauExtraVarDecorator::f_track ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 195 of file DiTauExtraVarDecorator.cxx.

196{
197 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
198 float leadTrackPt = subjetInfo.leadTrack ? subjetInfo.leadTrack->pt() : 0;
199 float subjetPt = subjetInfo.subjet_p4.Pt();
200 return leadTrackPt / subjetPt;
201}

◆ finalize()

StatusCode DiTauToolBase::finalize ( )
virtualinherited

Finalizer.

Reimplemented in DiTauOnnxDiscriminantTool.

Definition at line 50 of file DiTauToolBase.cxx.

51{
52 return StatusCode::SUCCESS;
53}

◆ getTrackingInfo()

StatusCode DiTauExtraVarDecorator::getTrackingInfo ( xAOD::DiTauJet & xDiTau,
DitauTrackingInfo & trackingInfo ) const
private

Definition at line 419 of file DiTauExtraVarDecorator.cxx.

419 {
420 static const SG::ConstAccessor<std::vector<ElementLink<xAOD::TrackParticleContainer>>> trackLinksAcc("trackLinks");
421 static const SG::ConstAccessor<std::vector<ElementLink<xAOD::TrackParticleContainer>>> isoTrackLinksAcc("isoTrackLinks");
422 static const SG::ConstAccessor<float> R_subjetAcc("R_subjet");
423 static const SG::ConstAccessor<float> R_coreAcc("R_core");
424
425
426 if (!trackLinksAcc.isAvailable(xDiTau) || !isoTrackLinksAcc.isAvailable(xDiTau)) {
427 ATH_MSG_WARNING("Track " << (!trackLinksAcc.isAvailable(xDiTau) ? "DiTauJet.trackLinks" : "DiTauJet.isoTrackLinks") << " links not available.");
428 return StatusCode::FAILURE;
429 }
430
431 int nSubjets = n_subjets(xDiTau, trackingInfo);
432 float Rsubjet = R_subjetAcc(xDiTau);
433 float RCore = R_coreAcc(xDiTau);
434
435 trackingInfo.nSubjets = nSubjets;
436 trackingInfo.vSubjetInfo.clear();
437 trackingInfo.vIsoTracks.clear();
438 trackingInfo.vTracks.clear();
439
440 // Get the track links from the DiTauJet and store them in the tracking info
441 std::vector<ElementLink<xAOD::TrackParticleContainer>> isoTrackLinks = xDiTau.isoTrackLinks();
442 for (const auto &trackLink: isoTrackLinks) {
443 if (!trackLink.isValid()) {
444 ATH_MSG_WARNING("Iso track link is not valid");
445 continue;
446 }
447 const xAOD::TrackParticle* xTrack = *trackLink;
448 trackingInfo.vIsoTracks.push_back(xTrack);
449 }
450 std::vector<ElementLink<xAOD::TrackParticleContainer>> trackLinks = xDiTau.trackLinks();
451 for (const auto &trackLink : trackLinks) {
452 if (!trackLink.isValid()) {
453 ATH_MSG_WARNING("track link is not valid");
454 continue;
455 }
456 const xAOD::TrackParticle* xTrack = *trackLink;
457 trackingInfo.vTracks.push_back(xTrack);
458 }
459 // store subjet p4
460 for (int i=0; i<nSubjets; ++i){
461 SubjetTrackingInfo subjetTrackingInfo;
462 TLorentzVector subjet_p4 = TLorentzVector();
463 subjet_p4.SetPtEtaPhiE( xDiTau.subjetPt(i), xDiTau.subjetEta(i), xDiTau.subjetPhi(i), xDiTau.subjetE(i));
464 subjetTrackingInfo.subjet_p4 = subjet_p4;
465 trackingInfo.vSubjetInfo.push_back(subjetTrackingInfo);
466 }
467 for (const auto track : trackingInfo.vTracks) {
468 float dRMin = 999;
469 int inSubjet = -1;
470 for (int i=0; i<nSubjets; ++i){
471 float dRTrackSubjet = trackingInfo.vSubjetInfo[i].subjet_p4.DeltaR(track->p4());
472 if (dRTrackSubjet < Rsubjet && dRTrackSubjet < dRMin){
473 dRMin = dRTrackSubjet;
474 inSubjet = i;
475 }
476 }
477 if (inSubjet >= 0){
478 trackingInfo.vSubjetInfo[inSubjet].vTracks.push_back(track);
479 }
480 }
481 // find leading track in subjets
482 for (int i=0; i<nSubjets; ++i){
483 float ptLeadTrack = 0;
484 for (const auto track : trackingInfo.vSubjetInfo[i].vTracks){
485 if (track->pt() > ptLeadTrack){
486 ptLeadTrack = track->pt();
487 trackingInfo.vSubjetInfo[i].leadTrack = track;
488 }
489 }
490 }
491 // find core track in subjets
492 for (int i=0; i<nSubjets; ++i){
493 for (const auto track : trackingInfo.vSubjetInfo[i].vTracks){
494 auto subjetTrackingInfo = trackingInfo.vSubjetInfo[i];
495 if (subjetTrackingInfo.subjet_p4.DeltaR(track->p4()) < RCore){
496 trackingInfo.vSubjetInfo[i].vCoreTracks.push_back(track);
497 }
498 }
499 }
500 //find isotracks in subjets
501 for (const auto track : trackingInfo.vIsoTracks){
502 float RIso = 0.4;
503 float dRMin = 999;
504 int inSubjet = -1;
505 for (int i=0; i<nSubjets; ++i){
506 float dRTrackSubjet = trackingInfo.vSubjetInfo[i].subjet_p4.DeltaR(track->p4());
507 if (dRTrackSubjet > Rsubjet && dRTrackSubjet < RIso && dRTrackSubjet < dRMin){
508 dRMin = dRTrackSubjet;
509 inSubjet = i;
510 }
511 }
512 if (inSubjet >= 0){
513 trackingInfo.vSubjetInfo[inSubjet].vIsoTracks.push_back(track);
514 }
515 }
516 return StatusCode::SUCCESS;
517}
#define ATH_MSG_WARNING(x)
int n_subjets(const xAOD::DiTauJet &xDiTau, const DitauTrackingInfo &ditauInfo) const
const TrackParticleLinks_t & isoTrackLinks() const
float subjetEta(unsigned int numSubjet) const
float subjetPhi(unsigned int numSubjet) const
const TrackParticleLinks_t & trackLinks() const

◆ initialize()

StatusCode DiTauExtraVarDecorator::initialize ( )
overridevirtual

Tool initializer.

Reimplemented from DiTauToolBase.

Definition at line 26 of file DiTauExtraVarDecorator.cxx.

26 {
27 ATH_MSG_INFO( "Initializing DiTauExtraVarDecorator" );
28 ATH_CHECK( m_ditau_ptDecKey.initialize() );
29 ATH_CHECK( m_f_core_leadDecKey.initialize() );
30 ATH_CHECK( m_f_core_sublDecKey.initialize() );
31 ATH_CHECK( m_f_subjet_leadDecKey.initialize() );
32 ATH_CHECK( m_f_subjet_sublDecKey.initialize() );
33 ATH_CHECK( m_f_subjetsDecKey.initialize() );
34 ATH_CHECK( m_f_track_leadDecKey.initialize() );
35 ATH_CHECK( m_f_track_sublDecKey.initialize() );
36 ATH_CHECK( m_R_max_leadDecKey.initialize() );
37 ATH_CHECK( m_R_max_sublDecKey.initialize() );
38 ATH_CHECK( m_n_trackDecKey.initialize() );
39 ATH_CHECK( m_n_tracks_leadDecKey.initialize() );
40 ATH_CHECK( m_n_tracks_sublDecKey.initialize() );
41 ATH_CHECK( m_n_isotrackDecKey.initialize() );
42 ATH_CHECK( m_R_trackDecKey.initialize() );
43 ATH_CHECK( m_R_track_coreDecKey.initialize() );
44 ATH_CHECK( m_R_track_allDecKey.initialize() );
45 ATH_CHECK( m_R_isotrackDecKey.initialize() );
46 ATH_CHECK( m_R_core_leadDecKey.initialize() );
47 ATH_CHECK( m_R_core_sublDecKey.initialize() );
48 ATH_CHECK( m_R_tracks_leadDecKey.initialize() );
49 ATH_CHECK( m_R_tracks_sublDecKey.initialize() );
50 ATH_CHECK( m_M_trackDecKey.initialize() );
51 ATH_CHECK( m_M_track_coreDecKey.initialize() );
52 ATH_CHECK( m_M_core_leadDecKey.initialize() );
53 ATH_CHECK( m_M_core_sublDecKey.initialize() );
54 ATH_CHECK( m_M_track_allDecKey.initialize() );
55 ATH_CHECK( m_M_tracks_leadDecKey.initialize() );
56 ATH_CHECK( m_M_tracks_sublDecKey.initialize() );
57 ATH_CHECK( m_E_frac_sublDecKey.initialize() );
58 ATH_CHECK( m_E_frac_subsublDecKey.initialize() );
59 ATH_CHECK( m_R_subjets_sublDecKey.initialize() );
63 ATH_CHECK( m_f_isotracksDecKey.initialize() );
64
65 return StatusCode::SUCCESS;
66}
#define ATH_MSG_INFO(x)

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ interfaceID()

const InterfaceID & DiTauToolBase::interfaceID ( )
staticinherited

InterfaceID implementation needed for ToolHandle.

Definition at line 9 of file DiTauToolBase.cxx.

9 {
10 return DiTauToolBaseID;
11}
static const InterfaceID DiTauToolBaseID("DiTauToolBase", 1, 0)

◆ mass_core()

float DiTauExtraVarDecorator::mass_core ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 340 of file DiTauExtraVarDecorator.cxx.

340 {
341 TLorentzVector allCoreTracks_p4;
342 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
343 for (const xAOD::TrackParticle* xTrack: subjetInfo.vCoreTracks) {
344 allCoreTracks_p4 += xTrack->p4();
345 }
346 float mass = allCoreTracks_p4.M();
347 if (mass < 0) {
348 return m_dDefault;
349 }
350 return mass;
351}
virtual FourMom_t p4() const override final
The full 4-momentum of the particle.

◆ mass_track()

float DiTauExtraVarDecorator::mass_track ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 366 of file DiTauExtraVarDecorator.cxx.

366 {
367 TLorentzVector allTracks_p4;
368 for (const xAOD::TrackParticle* xTrack: ditauInfo.vTracks) {
369 allTracks_p4 += xTrack->p4();
370 }
371 float mass = allTracks_p4.M();
372 if (mass < 0) {
373 return m_dDefault;
374 }
375 return mass;
376}

◆ mass_track_all()

float DiTauExtraVarDecorator::mass_track_all ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 378 of file DiTauExtraVarDecorator.cxx.

378 {
379 TLorentzVector allTracks_p4;
380 for (const xAOD::TrackParticle* xTrack: ditauInfo.vTracks) {
381 allTracks_p4 += xTrack->p4();
382 }
383 for (const xAOD::TrackParticle* xTrack: ditauInfo.vIsoTracks) {
384 allTracks_p4 += xTrack->p4();
385 }
386 float mass = allTracks_p4.M();
387 if (mass < 0) {
388 return m_dDefault;
389 }
390 return mass;
391}

◆ mass_track_core()

float DiTauExtraVarDecorator::mass_track_core ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 324 of file DiTauExtraVarDecorator.cxx.

325{
326 TLorentzVector allCoreTracks_p4;
327 for (int i = 0; i < 2; i++) {
328 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(i);
329 for (const xAOD::TrackParticle* xTrack: subjetInfo.vCoreTracks) {
330 allCoreTracks_p4 += xTrack->p4();
331 }
332 }
333 float mass = allCoreTracks_p4.M();
334 if (mass < 0) {
335 return m_dDefault;
336 }
337 return mass;
338}

◆ mass_tracks()

float DiTauExtraVarDecorator::mass_tracks ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 353 of file DiTauExtraVarDecorator.cxx.

353 {
354 TLorentzVector allTracks_p4;
355 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
356 for (const xAOD::TrackParticle* xTrack: subjetInfo.vTracks) {
357 allTracks_p4 += xTrack->p4();
358 }
359 float mass = allTracks_p4.M();
360 if (mass < 0) {
361 return m_dDefault;
362 }
363 return mass;
364}

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ n_isotrack()

int DiTauExtraVarDecorator::n_isotrack ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 223 of file DiTauExtraVarDecorator.cxx.

223 {
224 return xDiTau.nIsoTracks();
225}
size_t nIsoTracks() const

◆ n_subjets()

int DiTauExtraVarDecorator::n_subjets ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 168 of file DiTauExtraVarDecorator.cxx.

168 {
169 int nSubjet = 0;
170 while (xDiTau.subjetPt(nSubjet) > 0. ){
171 nSubjet++;
172 }
173 return nSubjet;
174}

◆ n_track()

int DiTauExtraVarDecorator::n_track ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 214 of file DiTauExtraVarDecorator.cxx.

214 {
215 return xDiTau.nTracks();
216}
size_t nTracks() const

◆ n_tracks()

int DiTauExtraVarDecorator::n_tracks ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 218 of file DiTauExtraVarDecorator.cxx.

218 {
219 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
220 return subjetInfo.vTracks.size();
221}
std::vector< const xAOD::TrackParticle * > vTracks

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ R_core()

float DiTauExtraVarDecorator::R_core ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 242 of file DiTauExtraVarDecorator.cxx.

242 {
243 double R_sum = 0;
244 double pt = 0;
245 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
246 for (const xAOD::TrackParticle* xTrack: subjetInfo.vCoreTracks) {
247 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4()) * xTrack->pt();
248 pt += xTrack->pt();
249 }
250 if (pt == 0) {
251 return m_dDefault;
252 }
253 return R_sum / pt;
254
255}

◆ R_isotrack()

float DiTauExtraVarDecorator::R_isotrack ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 307 of file DiTauExtraVarDecorator.cxx.

308{
309 float R_sum = 0;
310 float pt = 0;
311 for (int i = 0; i < 2; i++) {
312 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(i);
313 for (const xAOD::TrackParticle* xTrack: subjetInfo.vIsoTracks) {
314 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4()) * xTrack->pt();
315 pt += xTrack->pt();
316 }
317 }
318 if (pt == 0) {
319 return m_dDefault;
320 }
321 return R_sum / pt;
322}

◆ R_max()

float DiTauExtraVarDecorator::R_max ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 203 of file DiTauExtraVarDecorator.cxx.

203 {
204 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
205 float Rmax = 0;
206 for (const xAOD::TrackParticle* xTrack: subjetInfo.vTracks) {
207 if (subjetInfo.subjet_p4.DeltaR(xTrack->p4()) > Rmax) {
208 Rmax = subjetInfo.subjet_p4.DeltaR(xTrack->p4());
209 }
210 }
211 return Rmax;
212}

◆ R_subjets()

float DiTauExtraVarDecorator::R_subjets ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 397 of file DiTauExtraVarDecorator.cxx.

397 {
398 TLorentzVector leadSubjet_p4 = ditauInfo.vSubjetInfo.at(0).subjet_p4;
399 TLorentzVector subjet_p4 = ditauInfo.vSubjetInfo.at(iSubjet).subjet_p4;
400 return leadSubjet_p4.DeltaR(subjet_p4);
401}

◆ R_track()

float DiTauExtraVarDecorator::R_track ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 273 of file DiTauExtraVarDecorator.cxx.

274{
275 float R_sum = 0;
276 float pt = 0;
277 for (int i = 0; i < 2; i++) {
278 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(i);
279 for (const xAOD::TrackParticle* xTrack: subjetInfo.vTracks) {
280 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4()) * xTrack->pt();
281 pt += xTrack->pt();
282 }
283 }
284 if (pt == 0) {
285 return m_dDefault;
286 }
287 return R_sum / pt;
288}

◆ R_track_all()

float DiTauExtraVarDecorator::R_track_all ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 290 of file DiTauExtraVarDecorator.cxx.

291{
292 double R_sum = 0;
293 double pt = 0;
294
295 for (const SubjetTrackingInfo& subjetInfo : ditauInfo.vSubjetInfo) {
296 for (const xAOD::TrackParticle* xTrack: subjetInfo.vTracks) {
297 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4())*xTrack->pt();
298 pt += xTrack->pt();
299 }
300 }
301 if (pt == 0) {
302 return m_dDefault;
303 }
304 return R_sum / pt;
305}

◆ R_track_core()

float DiTauExtraVarDecorator::R_track_core ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo ) const
private

Definition at line 257 of file DiTauExtraVarDecorator.cxx.

257 {
258 float R_sum = 0;
259 float pt = 0;
260 for (int i = 0; i < 2; i++) {
261 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(i);
262 for (const xAOD::TrackParticle* xTrack: subjetInfo.vCoreTracks) {
263 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4()) * xTrack->pt();
264 pt += xTrack->pt();
265 }
266 }
267 if (pt == 0) {
268 return m_dDefault;
269 }
270 return R_sum / pt;
271}

◆ R_tracks()

float DiTauExtraVarDecorator::R_tracks ( const xAOD::DiTauJet & xDiTau,
const DitauTrackingInfo & ditauInfo,
int iSubjet ) const
private

Definition at line 227 of file DiTauExtraVarDecorator.cxx.

227 {
228 float R_sum = 0;
229 float pt = 0;
230
231 SubjetTrackingInfo subjetInfo = ditauInfo.vSubjetInfo.at(iSubjet);
232 for (const xAOD::TrackParticle* xTrack: subjetInfo.vTracks) {
233 R_sum += subjetInfo.subjet_p4.DeltaR(xTrack->p4()) * xTrack->pt();
234 pt += xTrack->pt();
235 }
236 if (pt == 0) {
237 return m_dDefault;
238 }
239 return R_sum / pt;
240}

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ retrieveTool()

template<class T>
bool DiTauToolBase::retrieveTool ( T & tool)
inherited

Convenience functions to handle storegate objects.

Definition at line 59 of file DiTauToolBase.cxx.

59 {
60 if (tool.retrieve().isFailure()) {
61 ATH_MSG_FATAL("Failed to retrieve tool " << tool);
62 return false;
63 } else {
64 ATH_MSG_VERBOSE("Retrieved tool " << tool);
65 }
66 return true;
67}
#define ATH_MSG_FATAL(x)
#define ATH_MSG_VERBOSE(x)

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_d0_leadtrack_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_d0_leadtrack_leadDecKey { this, "d0LeadtrackLeadDecName", "DiTauJets.d0_leadtrack_lead", "Name of the d0LeadtrackLead Decorator"}
private

Definition at line 105 of file DiTauExtraVarDecorator.h.

105{ this, "d0LeadtrackLeadDecName", "DiTauJets.d0_leadtrack_lead", "Name of the d0LeadtrackLead Decorator"};

◆ m_d0_leadtrack_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_d0_leadtrack_sublDecKey { this, "d0LeadtrackSublDecName", "DiTauJets.d0_leadtrack_subl", "Name of the d0LeadtrackSubl Decorator"}
private

Definition at line 106 of file DiTauExtraVarDecorator.h.

106{ this, "d0LeadtrackSublDecName", "DiTauJets.d0_leadtrack_subl", "Name of the d0LeadtrackSubl Decorator"};

◆ m_dDefault

Gaudi::Property<float> DiTauExtraVarDecorator::m_dDefault {this, "DefaultValue", -1234}
private

Definition at line 67 of file DiTauExtraVarDecorator.h.

67{this, "DefaultValue", -1234};

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_ditau_ptDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_ditau_ptDecKey { this, "ditauPtDecName", "DiTauJets.ditau_pt", "Name of the ditauPt Decorator"}
private

Definition at line 72 of file DiTauExtraVarDecorator.h.

72{ this, "ditauPtDecName", "DiTauJets.ditau_pt", "Name of the ditauPt Decorator"};

◆ m_E_frac_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_E_frac_sublDecKey { this, "EFracSublDecName", "DiTauJets.E_frac_subl", "Name of the EFracSubl Decorator"}
private

Definition at line 101 of file DiTauExtraVarDecorator.h.

101{ this, "EFracSublDecName", "DiTauJets.E_frac_subl", "Name of the EFracSubl Decorator"};

◆ m_E_frac_subsublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_E_frac_subsublDecKey { this, "EFracSubsublDecName", "DiTauJets.E_frac_subsubl", "Name of the EFracSubsubl Decorator"}
private

Definition at line 102 of file DiTauExtraVarDecorator.h.

102{ this, "EFracSubsublDecName", "DiTauJets.E_frac_subsubl", "Name of the EFracSubsubl Decorator"};

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_f_core_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_core_leadDecKey { this, "fCoreLeadDecName", "DiTauJets.f_core_lead", "Name of the fCoreLead Decorator"}
private

Definition at line 73 of file DiTauExtraVarDecorator.h.

73{ this, "fCoreLeadDecName", "DiTauJets.f_core_lead", "Name of the fCoreLead Decorator"};

◆ m_f_core_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_core_sublDecKey { this, "fCoreSublDecName", "DiTauJets.f_core_subl", "Name of the fCoreSubl Decorator"}
private

Definition at line 74 of file DiTauExtraVarDecorator.h.

74{ this, "fCoreSublDecName", "DiTauJets.f_core_subl", "Name of the fCoreSubl Decorator"};

◆ m_f_isotracksDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_isotracksDecKey { this, "fIsotracksDecName", "DiTauJets.f_isotracks", "Name of the fIsotracks Decorator"}
private

Definition at line 107 of file DiTauExtraVarDecorator.h.

107{ this, "fIsotracksDecName", "DiTauJets.f_isotracks", "Name of the fIsotracks Decorator"};

◆ m_f_subjet_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_subjet_leadDecKey { this, "fSubjetLeadDecName", "DiTauJets.f_subjet_lead", "Name of the fSubjetLead Decorator"}
private

Definition at line 75 of file DiTauExtraVarDecorator.h.

75{ this, "fSubjetLeadDecName", "DiTauJets.f_subjet_lead", "Name of the fSubjetLead Decorator"};

◆ m_f_subjet_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_subjet_sublDecKey { this, "fSubjetSublDecName", "DiTauJets.f_subjet_subl", "Name of the fSubjetSubl Decorator"}
private

Definition at line 76 of file DiTauExtraVarDecorator.h.

76{ this, "fSubjetSublDecName", "DiTauJets.f_subjet_subl", "Name of the fSubjetSubl Decorator"};

◆ m_f_subjetsDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_subjetsDecKey { this, "fSubjetsDecName", "DiTauJets.f_subjets", "Name of the fSubjets Decorator"}
private

Definition at line 77 of file DiTauExtraVarDecorator.h.

77{ this, "fSubjetsDecName", "DiTauJets.f_subjets", "Name of the fSubjets Decorator"};

◆ m_f_track_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_track_leadDecKey { this, "fTrackLeadDecName", "DiTauJets.f_track_lead", "Name of the fTrackLead Decorator"}
private

Definition at line 78 of file DiTauExtraVarDecorator.h.

78{ this, "fTrackLeadDecName", "DiTauJets.f_track_lead", "Name of the fTrackLead Decorator"};

◆ m_f_track_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_f_track_sublDecKey { this, "fTrackSublDecName", "DiTauJets.f_track_subl", "Name of the fTrackSubl Decorator"}
private

Definition at line 79 of file DiTauExtraVarDecorator.h.

79{ this, "fTrackSublDecName", "DiTauJets.f_track_subl", "Name of the fTrackSubl Decorator"};

◆ m_M_core_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_core_leadDecKey { this, "MCoreLeadDecName", "DiTauJets.m_core_lead", "Name of the MCoreLead Decorator"}
private

Definition at line 96 of file DiTauExtraVarDecorator.h.

96{ this, "MCoreLeadDecName", "DiTauJets.m_core_lead", "Name of the MCoreLead Decorator"};

◆ m_M_core_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_core_sublDecKey { this, "MCoreSublDecName", "DiTauJets.m_core_subl", "Name of the MCoreSubl Decorator"}
private

Definition at line 97 of file DiTauExtraVarDecorator.h.

97{ this, "MCoreSublDecName", "DiTauJets.m_core_subl", "Name of the MCoreSubl Decorator"};

◆ m_M_track_allDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_track_allDecKey { this, "MTrackAllDecName", "DiTauJets.m_track_all", "Name of the MTrackAll Decorator"}
private

Definition at line 98 of file DiTauExtraVarDecorator.h.

98{ this, "MTrackAllDecName", "DiTauJets.m_track_all", "Name of the MTrackAll Decorator"};

◆ m_M_track_coreDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_track_coreDecKey { this, "MTrackCoreDecName", "DiTauJets.m_track_core", "Name of the MTrackCore Decorator"}
private

Definition at line 95 of file DiTauExtraVarDecorator.h.

95{ this, "MTrackCoreDecName", "DiTauJets.m_track_core", "Name of the MTrackCore Decorator"};

◆ m_M_trackDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_trackDecKey { this, "MTrackDecName", "DiTauJets.m_track", "Name of the MTrack Decorator"}
private

Definition at line 94 of file DiTauExtraVarDecorator.h.

94{ this, "MTrackDecName", "DiTauJets.m_track", "Name of the MTrack Decorator"};

◆ m_M_tracks_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_tracks_leadDecKey { this, "MTracksLeadDecName", "DiTauJets.m_tracks_lead", "Name of the MTracksLead Decorator"}
private

Definition at line 99 of file DiTauExtraVarDecorator.h.

99{ this, "MTracksLeadDecName", "DiTauJets.m_tracks_lead", "Name of the MTracksLead Decorator"};

◆ m_M_tracks_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_M_tracks_sublDecKey { this, "MTracksSublDecName", "DiTauJets.m_tracks_subl", "Name of the MTracksSubl Decorator"}
private

Definition at line 100 of file DiTauExtraVarDecorator.h.

100{ this, "MTracksSublDecName", "DiTauJets.m_tracks_subl", "Name of the MTracksSubl Decorator"};

◆ m_n_isotrackDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_n_isotrackDecKey { this, "nIsotrackDecName", "DiTauJets.n_isotrack", "Name of the nIsotrack Decorator"}
private

Definition at line 85 of file DiTauExtraVarDecorator.h.

85{ this, "nIsotrackDecName", "DiTauJets.n_isotrack", "Name of the nIsotrack Decorator"};

◆ m_n_trackDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_n_trackDecKey { this, "nTrackDecName", "DiTauJets.n_track", "Name of the nTrack Decorator"}
private

Definition at line 82 of file DiTauExtraVarDecorator.h.

82{ this, "nTrackDecName", "DiTauJets.n_track", "Name of the nTrack Decorator"};

◆ m_n_tracks_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_n_tracks_leadDecKey { this, "nTracksLeadDecName", "DiTauJets.n_tracks_lead", "Name of the nTracksLead Decorator"}
private

Definition at line 83 of file DiTauExtraVarDecorator.h.

83{ this, "nTracksLeadDecName", "DiTauJets.n_tracks_lead", "Name of the nTracksLead Decorator"};

◆ m_n_tracks_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_n_tracks_sublDecKey { this, "nTracksSublDecName", "DiTauJets.n_tracks_subl", "Name of the nTracksSubl Decorator"}
private

Definition at line 84 of file DiTauExtraVarDecorator.h.

84{ this, "nTracksSublDecName", "DiTauJets.n_tracks_subl", "Name of the nTracksSubl Decorator"};

◆ m_R_core_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_core_leadDecKey { this, "RCoreLeadDecName", "DiTauJets.R_core_lead", "Name of the RCoreLead Decorator"}
private

Definition at line 90 of file DiTauExtraVarDecorator.h.

90{ this, "RCoreLeadDecName", "DiTauJets.R_core_lead", "Name of the RCoreLead Decorator"};

◆ m_R_core_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_core_sublDecKey { this, "RCoreSublDecName", "DiTauJets.R_core_subl", "Name of the RCoreSubl Decorator"}
private

Definition at line 91 of file DiTauExtraVarDecorator.h.

91{ this, "RCoreSublDecName", "DiTauJets.R_core_subl", "Name of the RCoreSubl Decorator"};

◆ m_R_isotrackDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_isotrackDecKey { this, "RIsotrackDecName", "DiTauJets.R_isotrack", "Name of the RIsotrack Decorator"}
private

Definition at line 89 of file DiTauExtraVarDecorator.h.

89{ this, "RIsotrackDecName", "DiTauJets.R_isotrack", "Name of the RIsotrack Decorator"};

◆ m_R_max_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_max_leadDecKey { this, "RMaxLeadDecName", "DiTauJets.R_max_lead", "Name of the RMaxLead Decorator"}
private

Definition at line 80 of file DiTauExtraVarDecorator.h.

80{ this, "RMaxLeadDecName", "DiTauJets.R_max_lead", "Name of the RMaxLead Decorator"};

◆ m_R_max_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_max_sublDecKey { this, "RMaxSublDecName", "DiTauJets.R_max_subl", "Name of the RMaxSubl Decorator"}
private

Definition at line 81 of file DiTauExtraVarDecorator.h.

81{ this, "RMaxSublDecName", "DiTauJets.R_max_subl", "Name of the RMaxSubl Decorator"};

◆ m_R_subjets_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_subjets_sublDecKey { this, "RSubjetsSublDecName", "DiTauJets.R_subjets_subl", "Name of the RSubjetsSubl Decorator"}
private

Definition at line 103 of file DiTauExtraVarDecorator.h.

103{ this, "RSubjetsSublDecName", "DiTauJets.R_subjets_subl", "Name of the RSubjetsSubl Decorator"};

◆ m_R_subjets_subsublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_subjets_subsublDecKey { this, "RSubjetsSubsublDecName", "DiTauJets.R_subjets_subsubl", "Name of the RSubjetsSubsubl Decorator"}
private

Definition at line 104 of file DiTauExtraVarDecorator.h.

104{ this, "RSubjetsSubsublDecName", "DiTauJets.R_subjets_subsubl", "Name of the RSubjetsSubsubl Decorator"};

◆ m_R_track_allDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_track_allDecKey { this, "RTrackAllDecName", "DiTauJets.R_track_all", "Name of the RTrackAll Decorator"}
private

Definition at line 88 of file DiTauExtraVarDecorator.h.

88{ this, "RTrackAllDecName", "DiTauJets.R_track_all", "Name of the RTrackAll Decorator"};

◆ m_R_track_coreDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_track_coreDecKey { this, "RTrackCoreDecName", "DiTauJets.R_track_core", "Name of the RTrackCore Decorator"}
private

Definition at line 87 of file DiTauExtraVarDecorator.h.

87{ this, "RTrackCoreDecName", "DiTauJets.R_track_core", "Name of the RTrackCore Decorator"};

◆ m_R_trackDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_trackDecKey { this, "RTrackDecName", "DiTauJets.R_track", "Name of the RTrack Decorator"}
private

Definition at line 86 of file DiTauExtraVarDecorator.h.

86{ this, "RTrackDecName", "DiTauJets.R_track", "Name of the RTrack Decorator"};

◆ m_R_tracks_leadDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_tracks_leadDecKey { this, "RTracksLeadDecName", "DiTauJets.R_tracks_lead", "Name of the RTracksLead Decorator"}
private

Definition at line 92 of file DiTauExtraVarDecorator.h.

92{ this, "RTracksLeadDecName", "DiTauJets.R_tracks_lead", "Name of the RTracksLead Decorator"};

◆ m_R_tracks_sublDecKey

SG::WriteDecorHandleKey<xAOD::DiTauJetContainer> DiTauExtraVarDecorator::m_R_tracks_sublDecKey { this, "RTracksSublDecName", "DiTauJets.R_tracks_subl", "Name of the RTracksSubl Decorator"}
private

Definition at line 93 of file DiTauExtraVarDecorator.h.

93{ this, "RTracksSublDecName", "DiTauJets.R_tracks_subl", "Name of the RTracksSubl Decorator"};

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: