ATLAS Offline Software
|
Class that provides functionalities for searching for online muons close to a given offline muon and judging they are matched with the specific criteria. More...
#include <MuonMatchingTool.h>
Public Member Functions | |
MuonMatchingTool (const std::string &type, const std::string &name, const IInterface *parent) | |
virtual StatusCode | initialize () override |
const xAOD::MuonRoI * | matchL1 (const xAOD::Muon *mu, const std::string &trigger, bool &pass) const |
Function that searches for a Level 1 muon candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::MuonRoI * | matchL1 (const xAOD::TruthParticle *mu, const std::string &trigger, bool &pass) const |
Function that searches for a Level 1 truth muon candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::MuonRoI * | matchL1 (double eta, double phi, double dR, const std::string &trigger, bool &pass) const |
Function that dR matches L1 muon candidates. More... | |
const xAOD::L2StandAloneMuon * | matchL2SA (const xAOD::Muon *mu, const std::string &trigger, bool &pass) const |
Function that searches for an L2 standalone muon (L2MuonSA) candidate and judges if it is matched to a given offline muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::L2StandAloneMuonContainer > | searchL2SALinkInfo (const xAOD::Muon *mu, std::string trigger) const |
Function that searches for the L2 standalone muon (L2MuonSA) candidate closest to a given offline muon. More... | |
const xAOD::L2StandAloneMuon * | matchL2SAReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an L2 standalone muon (L2MuonSA) candidate by ReadHandle and judges if it is matched to a given offlineSA muon. More... | |
const xAOD::L2CombinedMuon * | matchL2CB (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an L2 combined muon (L2muComb) candidate and judges if it is matched to a given offline muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::L2CombinedMuonContainer > | searchL2CBLinkInfo (const xAOD::Muon *mu, std::string trigger) const |
Function that searches for the L2 combined muon (L2muComb) candidate closest to a given offline muon. More... | |
const xAOD::L2CombinedMuon * | matchL2CBReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an L2 combined muon (L2muComb) candidate by ReadHandle and judges if it is matched to a given offlineCB muon. More... | |
const xAOD::Muon * | matchEFSA (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::Muon * | matchEFSA (const xAOD::TruthParticle *mu, std::string trigger, bool &pass) const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given truth muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > | matchEFSALinkInfo (const xAOD::Muon *mu, std::string trig) const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given track particle. More... | |
const xAOD::Muon * | matchEFSAReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an EF standalone muon (EFSA) candidate by ReadHandle and judges if it is matched to a given offlineSA muon. More... | |
const xAOD::Muon * | matchEFCB (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::Muon * | matchEFCB (const xAOD::TruthParticle *mu, std::string trig, bool &pass) const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given truth muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > | matchEFCBLinkInfo (const xAOD::Muon *mu, std::string trig) const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given track particle. More... | |
const xAOD::Muon * | matchEFCBReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an EF combined muon (EFCB) candidate by ReadHandle and judges if it is matched to a given offlineCB muon. More... | |
const xAOD::Muon * | matchEFSAFS (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an EF FS standalone muon (EFSAFS) candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::Muon * | matchEFSAFS (const xAOD::TruthParticle *mu, std::string trigger, bool &pass) const |
Function that searches for an EF standalone muon (EFSAFS) candidate and judges if it is matched to a given truth muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > | matchEFSAFSLinkInfo (const xAOD::Muon *mu, std::string trig) const |
Function that searches for an EF standalone muon (EFSAFS) candidate and judges if it is matched to a given track particle. More... | |
const xAOD::Muon * | matchEFSAFSReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an EF standalone muon (EFSAFS) candidate by ReadHandle and judges if it is matched to a given offlineSAFS muon. More... | |
const xAOD::Muon * | matchEFCBFS (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::Muon * | matchEFCBFS (const xAOD::TruthParticle *mu, std::string trig, bool &pass) const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given truth muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > | matchEFCBFSLinkInfo (const xAOD::Muon *mu, std::string trig) const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given track particle. More... | |
const xAOD::Muon * | matchEFCBFSReadHandle (const EventContext &ctx, const xAOD::Muon *mu) const |
Function that searches for an EF combined muon (EFCBFS) candidate by ReadHandle and judges if it is matched to a given offlineCB muon. More... | |
const xAOD::Muon * | matchEFIso (const xAOD::Muon *mu, std::string trigger, bool &pass) const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given offline muon. More... | |
const xAOD::Muon * | matchEFIso (const xAOD::TruthParticle *mu, std::string trigger, bool &pass) const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given truth muon. More... | |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > | matchEFIsoLinkInfo (const xAOD::Muon *mu, std::string trig) const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given track particle. More... | |
const xAOD::TrackParticle * | SearchEFTrack (const EventContext &ctx, const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > &muLinkInfo, const SG::ReadHandleKey< xAOD::TrackParticleContainer > &ReadHandleKey) const |
Function that searches for an EF muon track (e.g. More... | |
const xAOD::Muon * | matchL2SAtoOff (const EventContext &ctx, const xAOD::L2StandAloneMuon *samu) const |
Function that searches for an offline muon matched to L2SA muon. More... | |
const xAOD::Muon * | matchL2CBtoOff (const EventContext &ctx, const xAOD::L2CombinedMuon *cbmu) const |
Function that searches for an offline muon matched to L2CB muon. More... | |
bool | isMatchedL2SA (const xAOD::L2StandAloneMuon *, const xAOD::Muon *) const |
bool | isMatchedL2CB (const xAOD::L2CombinedMuon *, const xAOD::Muon *) const |
bool | isMatchedL2InsideOut (const xAOD::L2CombinedMuon *, const xAOD::Muon *) const |
const Trk::TrackParameters * | extTrackToPivot (const xAOD::TrackParticle *track) const |
Function to extrapolate a Inner Detector track to the pivot plane i.e. More... | |
ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More... | |
const ServiceHandle< StoreGateSvc > & | evtStore () const |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More... | |
const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More... | |
virtual StatusCode | sysInitialize () override |
Perform system initialization for an algorithm. More... | |
virtual StatusCode | sysStart () override |
Handle START transition. More... | |
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
Return this algorithm's input handles. More... | |
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
Return this algorithm's output handles. More... | |
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
Declare a new Gaudi property. More... | |
void | updateVHKA (Gaudi::Details::PropertyBase &) |
MsgStream & | msg () const |
MsgStream & | msg (const MSG::Level lvl) const |
bool | msgLvl (const MSG::Level lvl) const |
Static Public Member Functions | |
static double | reqdRL1byPt (double mupt) |
Function compute dR used for matching offline muons and level 1 RoIs at the pivot plane. More... | |
static std::tuple< bool, double, double > | trigPosForMatchSATrack (const xAOD::Muon *mu) |
static std::tuple< bool, double, double > | trigPosForMatchCBTrack (const xAOD::Muon *mu) |
static std::tuple< bool, double, double > | PosForMatchSATrack (const xAOD::Muon *mu) |
static std::tuple< bool, double, double > | PosForMatchCBTrack (const xAOD::Muon *mu) |
Protected Member Functions | |
void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
remove all handles from I/O resolution More... | |
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. More... | |
Private Types | |
enum | L1Items { L1B_MU3V =1, L1B_MU5VF =2, L1B_MU8F =3, L1B_MU14FCH =6, L1B_MU14FCHR =6, L1E_MU3V =1, L1E_MU5VF =3, L1E_MU8F =6, L1E_MU14FCH =12, L1E_MU14FCHR =12, ERROR } |
typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
int | L1ItemStringToInt (const std::string &l1item, int roiSource) const |
template<class T , class OFFL > | |
const T * | matchReadHandle (const OFFL *offl, float reqdR, SG::ReadHandleKey< DataVector< T > > ReadHandleKey, const EventContext &ctx, std::tuple< bool, double, double >(*trigPosForMatchFunc)(const T *)=&MuonMatchingTool::trigPosForMatch< T >) const |
Function that searches for an online muon candidate of type T by ReadHandle and judges if it is matched to a given offline muon. More... | |
template<class T , class OFFL > | |
const TrigCompositeUtils::LinkInfo< DataVector< T > > | matchLinkInfo (const OFFL *offl, std::string trigger, float reqdR, bool &pass, const std::string &containerSGKey="", std::tuple< bool, double, double >(*trigPosForMatchFunc)(const T *)=&MuonMatchingTool::trigPosForMatch< T >) const |
Function that searches for an online muon candidate of type T closest to a given offline muon. More... | |
template<class T , class OFFL > | |
const T * | match (const OFFL *offl, std::string trigger, float reqdR, bool &pass, const std::string &containerSGKey="", std::tuple< bool, double, double >(*trigPosForMatchFunc)(const T *)=&MuonMatchingTool::trigPosForMatch< T >) const |
Function that searches for an online muon candidate of type T and judges if it is matched to a given offline muon. More... | |
template<class T > | |
const xAOD::Muon * | matchOff (const EventContext &ctx, const T *trig, float reqdR, std::tuple< bool, double, double >(*offlinePosForMatchFunc)(const xAOD::Muon *), std::tuple< bool, double, double >(*trigPosForMatchFunc)(const T *)=&MuonMatchingTool::trigPosForMatch< T >) const |
Function that searches for an offline muon candidate matched to online muon of type T. More... | |
const Amg::Vector3D | offlineMuonAtPivot (const xAOD::Muon *mu) const |
const Trk::TrackParameters * | extTrackToTGC (const xAOD::TrackParticle *track) const |
const Trk::TrackParameters * | extTrackToRPC (const xAOD::TrackParticle *track) const |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
specialization for handling Gaudi::Property<SG::VarHandleKey> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
specialization for handling Gaudi::Property<SG::VarHandleBase> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More... | |
Static Private Member Functions | |
static double | FermiFunction (double x, double x0, double w) |
template<class T > | |
static std::tuple< bool, double, double > | trigPosForMatch (const T *trig) |
Private Attributes | |
const float | m_L2SAreqdR = 0.25 |
const float | m_L2CBreqdR = 0.03 |
const float | m_L2InsideOutreqdR = 0.01 |
const float | m_EFreqdR = 0.03 |
SG::ReadHandleKey< xAOD::MuonRoIContainer > | m_MuonRoIContainerKey {this, "MuonRoIContainerName", "LVL1MuonRoIs", "Level 1 muon container"} |
SG::ReadHandleKey< xAOD::MuonContainer > | m_MuonContainerKey {this, "MuonContainerName", "Muons", "Offline muon container"} |
SG::ReadHandleKey< xAOD::L2StandAloneMuonContainer > | m_L2MuonSAContainerKey {this, "L2StandAloneMuonContainerName", "HLT_MuonL2SAInfo", "L2MuonSA container"} |
SG::ReadHandleKey< xAOD::L2CombinedMuonContainer > | m_L2muCombContainerKey {this, "L2CombinedMuonContainerName", "HLT_MuonL2CBInfo", "L2muComb container"} |
SG::ReadHandleKey< xAOD::MuonContainer > | m_EFSAMuonContainerKey {this, "EFSAMuonContainerName", "HLT_Muons_RoI", "EFSAMuon container"} |
SG::ReadHandleKey< xAOD::MuonContainer > | m_EFCBMuonContainerKey {this, "EFCBMuonContainerName", "HLT_MuonsCB_RoI", "EFCBMuon container"} |
SG::ReadHandleKey< xAOD::MuonContainer > | m_EFSAFSMuonContainerKey {this, "EFSAFSMuonContainerName", "HLT_Muons_FS", "EFSAFSMuon container"} |
SG::ReadHandleKey< xAOD::MuonContainer > | m_EFCBFSMuonContainerKey {this, "EFCBFSMuonContainerName", "HLT_MuonsCB_FS", "EFCBFSMuon container"} |
SG::ReadHandleKey< xAOD::TrackParticleContainer > | m_MStrackContainerKey {this, "ExtrapolatedMStrackConntainner", "HLT_MSExtrapolatedMuons_RoITrackParticles", "ExtrapolatedMuons track container"} |
SG::ReadHandleKey< xAOD::TrackParticleContainer > | m_CBtrackContainerKey {this, "CBtrackContainerName", "HLT_CBCombinedMuon_RoITrackParticles", "CombinedMuon track container"} |
Gaudi::Property< bool > | m_use_extrapolator {this, "UseExtrapolator", false, "Flag to enable the extrapolator for matching offline and trigger muons"} |
PublicToolHandle< Trig::TrigDecisionTool > | m_trigDec {this, "TrigDecisionTool", "Trig::TrigDecisionTool/TrigDecisionTool", "TrigDecisionTool"} |
PublicToolHandle< Trk::IExtrapolator > | m_extrapolator {"Trk::Extrapolator/AtlasExtrapolator"} |
StoreGateSvc_t | m_evtStore |
Pointer to StoreGate (event store by default) More... | |
StoreGateSvc_t | m_detStore |
Pointer to StoreGate (detector store by default) More... | |
std::vector< SG::VarHandleKeyArray * > | m_vhka |
bool | m_varHandleArraysDeclared |
Class that provides functionalities for searching for online muons close to a given offline muon and judging they are matched with the specific criteria.
Definition at line 28 of file MuonMatchingTool.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
|
private |
Enumerator | |
---|---|
L1B_MU3V | |
L1B_MU5VF | |
L1B_MU8F | |
L1B_MU14FCH | |
L1B_MU14FCHR | |
L1E_MU3V | |
L1E_MU5VF | |
L1E_MU8F | |
L1E_MU14FCH | |
L1E_MU14FCHR | |
ERROR |
Definition at line 351 of file MuonMatchingTool.h.
MuonMatchingTool::MuonMatchingTool | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Definition at line 14 of file MuonMatchingTool.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>
Definition at line 199 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 259 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore
Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc
(event store) Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 85 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc
(event store) Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 90 of file AthCommonDataStore.h.
|
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
const Trk::TrackParameters * MuonMatchingTool::extTrackToPivot | ( | const xAOD::TrackParticle * | track | ) | const |
Function to extrapolate a Inner Detector track to the pivot plane i.e.
the middle layers of the Muon Spectrometer where the level 1 RoI is defined. This functionality is not available yet.
track | Inner Detector track that is extrapolated. |
reqdRL1byPt
Definition at line 430 of file MuonMatchingTool.cxx.
|
private |
Definition at line 503 of file MuonMatchingTool.cxx.
|
private |
Definition at line 479 of file MuonMatchingTool.cxx.
|
staticprivate |
Definition at line 424 of file MuonMatchingTool.cxx.
|
overridevirtual |
Definition at line 19 of file MuonMatchingTool.cxx.
|
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.
bool MuonMatchingTool::isMatchedL2CB | ( | const xAOD::L2CombinedMuon * | cbmu, |
const xAOD::Muon * | mu | ||
) | const |
Definition at line 414 of file MuonMatchingTool.cxx.
bool MuonMatchingTool::isMatchedL2InsideOut | ( | const xAOD::L2CombinedMuon * | cbiomu, |
const xAOD::Muon * | mu | ||
) | const |
Definition at line 419 of file MuonMatchingTool.cxx.
bool MuonMatchingTool::isMatchedL2SA | ( | const xAOD::L2StandAloneMuon * | samu, |
const xAOD::Muon * | mu | ||
) | const |
Definition at line 402 of file MuonMatchingTool.cxx.
|
inlineprivate |
Definition at line 352 of file MuonMatchingTool.h.
|
private |
Function that searches for an online muon candidate of type T and judges if it is matched to a given offline muon.
offl | Position of the offline muon used for computing dR. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
reqdR | Requirement of dR used for the matching. Note that reqdR is updated with the dR of the found candidate. |
pass | True if the matched candidate passed the hypothesis step. |
trigPosForMatchFunc | Function pointer that implements cuts for the online muon candidates. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. const xAOD::Muon * MuonMatchingTool::matchEFCB | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which EFCB candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 127 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFCB | ( | const xAOD::TruthParticle * | mu, |
std::string | trig, | ||
bool & | pass | ||
) | const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given truth muon.
mu | Truth muon around which EFCB candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 122 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFCBFS | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which EFCBFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 203 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFCBFS | ( | const xAOD::TruthParticle * | mu, |
std::string | trig, | ||
bool & | pass | ||
) | const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given truth muon.
mu | Truth muon around which EFCBFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 198 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > MuonMatchingTool::matchEFCBFSLinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trig | ||
) | const |
Function that searches for an EF combined muon (EFCBFS) candidate and judges if it is matched to a given track particle.
mu | Offline muon around which EFCBFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision. Definition at line 210 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFCBFSReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an EF combined muon (EFCBFS) candidate by ReadHandle and judges if it is matched to a given offlineCB muon.
mu | Offline muon around which EFCBFS candidates are searched. |
nullptr
when there is no candidate found. Definition at line 218 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > MuonMatchingTool::matchEFCBLinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trig | ||
) | const |
Function that searches for an EF combined muon (EFCB) candidate and judges if it is matched to a given track particle.
mu | Offline muon around which EFCB candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision. Definition at line 134 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFCBReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an EF combined muon (EFCB) candidate by ReadHandle and judges if it is matched to a given offlineCB muon.
mu | Offline muon around which EFCB candidates are searched. |
nullptr
when there is no candidate found. Definition at line 142 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFIso | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which EFIso candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 224 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFIso | ( | const xAOD::TruthParticle * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given truth muon.
mu | Truth muon around which EFIso candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 230 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > MuonMatchingTool::matchEFIsoLinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trig | ||
) | const |
Function that searches for an EF isolation muon (EFIso) candidate and judges if it is matched to a given track particle.
mu | Offline muon around which EFIso candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision. Definition at line 266 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSA | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which EFSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 72 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSA | ( | const xAOD::TruthParticle * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given truth muon.
mu | Truth muon around which EFSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 87 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSAFS | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF FS standalone muon (EFSAFS) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which EFSAFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 148 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSAFS | ( | const xAOD::TruthParticle * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an EF standalone muon (EFSAFS) candidate and judges if it is matched to a given truth muon.
mu | Truth muon around which EFSAFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 163 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > MuonMatchingTool::matchEFSAFSLinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trig | ||
) | const |
Function that searches for an EF standalone muon (EFSAFS) candidate and judges if it is matched to a given track particle.
mu | Offline muon around which EFSAFS candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision. Definition at line 168 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSAFSReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an EF standalone muon (EFSAFS) candidate by ReadHandle and judges if it is matched to a given offlineSAFS muon.
mu | Offline muon around which EFSAFS candidates are searched. |
nullptr
when there is no candidate found. Definition at line 184 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > MuonMatchingTool::matchEFSALinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trig | ||
) | const |
Function that searches for an EF standalone muon (EFSA) candidate and judges if it is matched to a given track particle.
mu | Offline muon around which EFSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision. Definition at line 92 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchEFSAReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an EF standalone muon (EFSA) candidate by ReadHandle and judges if it is matched to a given offlineSA muon.
mu | Offline muon around which EFSA candidates are searched. |
nullptr
when there is no candidate found. Definition at line 108 of file MuonMatchingTool.cxx.
const xAOD::MuonRoI * MuonMatchingTool::matchL1 | ( | const xAOD::Muon * | mu, |
const std::string & | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for a Level 1 muon candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which Level 1 candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if a candidate is found. |
nullptr
when there is no candidate found. Definition at line 369 of file MuonMatchingTool.cxx.
const xAOD::MuonRoI * MuonMatchingTool::matchL1 | ( | const xAOD::TruthParticle * | mu, |
const std::string & | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for a Level 1 truth muon candidate and judges if it is matched to a given offline muon.
mu | Truth muon around which Level 1 candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if a candidate is found. |
nullptr
when there is no candidate found. Definition at line 385 of file MuonMatchingTool.cxx.
const xAOD::MuonRoI * MuonMatchingTool::matchL1 | ( | double | eta, |
double | phi, | ||
double | dR, | ||
const std::string & | trigger, | ||
bool & | pass | ||
) | const |
Function that dR matches L1 muon candidates.
eta | Eta of muon around which Level 1 candidates are searched. |
phi | Phi of muon around which Level 1 candidates are searched. |
dR | dR limit within which a match is accepted. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if a candidate is found. |
nullptr
when there is no candidate found. Definition at line 334 of file MuonMatchingTool.cxx.
const xAOD::L2CombinedMuon * MuonMatchingTool::matchL2CB | ( | const xAOD::Muon * | mu, |
std::string | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an L2 combined muon (L2muComb) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which L2muComb candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 317 of file MuonMatchingTool.cxx.
const xAOD::L2CombinedMuon * MuonMatchingTool::matchL2CBReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an L2 combined muon (L2muComb) candidate by ReadHandle and judges if it is matched to a given offlineCB muon.
mu | Offline muon around which L2muComb candidates are searched. |
nullptr
when there is no candidate found. Definition at line 328 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchL2CBtoOff | ( | const EventContext & | ctx, |
const xAOD::L2CombinedMuon * | cbmu | ||
) | const |
Function that searches for an offline muon matched to L2CB muon.
ctx | Reference to the EventContext needed for accessing the Muons container. |
cbmu | the given online muon |
nullptr
when there is no muon found. Definition at line 397 of file MuonMatchingTool.cxx.
const xAOD::L2StandAloneMuon * MuonMatchingTool::matchL2SA | ( | const xAOD::Muon * | mu, |
const std::string & | trigger, | ||
bool & | pass | ||
) | const |
Function that searches for an L2 standalone muon (L2MuonSA) candidate and judges if it is matched to a given offline muon.
mu | Offline muon around which L2MuonSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass | True if the matched candidate passed the hypothesis step. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision. Definition at line 275 of file MuonMatchingTool.cxx.
const xAOD::L2StandAloneMuon * MuonMatchingTool::matchL2SAReadHandle | ( | const EventContext & | ctx, |
const xAOD::Muon * | mu | ||
) | const |
Function that searches for an L2 standalone muon (L2MuonSA) candidate by ReadHandle and judges if it is matched to a given offlineSA muon.
mu | Offline muon around which L2MuonSA candidates are searched. |
nullptr
when there is no candidate found. Definition at line 294 of file MuonMatchingTool.cxx.
const xAOD::Muon * MuonMatchingTool::matchL2SAtoOff | ( | const EventContext & | ctx, |
const xAOD::L2StandAloneMuon * | samu | ||
) | const |
Function that searches for an offline muon matched to L2SA muon.
ctx | Reference to the EventContext needed for accessing the Muons container. |
samu | the given online muon |
nullptr
when there is no muon found. Definition at line 393 of file MuonMatchingTool.cxx.
|
private |
Function that searches for an online muon candidate of type T closest to a given offline muon.
offl | Position of the offline muon used for computing dR. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
trigPosForMatchFunc | Function pointer that implements cuts for the online muon candidates. |
pass
for the decision.
|
private |
Function that searches for an offline muon candidate matched to online muon of type T.
trig | Position of the online muon used for computing dR. |
reqdR | Requirement of dR used for the matching. Note that reqdR is updated with the dR of the found candidate. |
offlinePosForMatchFunc | Function pointer that implements cuts for the offline muon candidates. |
trigPosForMatchFunc | Function pointer that implements cuts for the online muon candidates. |
nullptr
when there is no candidate found. Important: a valid pointer doesn't mean that it passed the hypothesis, users should check pass
for the decision.
|
private |
Function that searches for an online muon candidate of type T by ReadHandle and judges if it is matched to a given offline muon.
offl | Position of the offline muon used for computing dR. |
reqdR | Requirement of dR used for the matching. Note that reqdR is updated with the dR of the found candidate. |
ReadHandleKey | SG::ReadHandleKey of online muon. |
ctx | EventContext. |
trigPosForMatchFunc | Function pointer that implements cuts for the online muon candidates. |
nullptr
when there is no candidate found.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 27 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
private |
Definition at line 40 of file MuonMatchingTool.cxx.
|
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.
|
static |
Definition at line 66 of file MuonMatchingTool.cxx.
|
static |
Definition at line 61 of file MuonMatchingTool.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
static |
Function compute dR used for matching offline muons and level 1 RoIs at the pivot plane.
This is needed that the accuracy of the extrapolation by extTrackToPivot
is dependent on the pt of the offline muon.
mupt | Offline muon pt |
Definition at line 520 of file MuonMatchingTool.cxx.
const xAOD::TrackParticle * MuonMatchingTool::SearchEFTrack | ( | const EventContext & | ctx, |
const TrigCompositeUtils::LinkInfo< xAOD::MuonContainer > & | muLinkInfo, | ||
const SG::ReadHandleKey< xAOD::TrackParticleContainer > & | ReadHandleKey | ||
) | const |
Function that searches for an EF muon track (e.g.
ExtrapolatedMuonSpectrometerTrackParticle, CombinedTrackParticle) matched to a EF muon.
ctx | Reference to the EventContext needed for accessing the TrackParticle container. |
muLinkInfo | LinkInfo of EF muon. |
ReadHandleKey | of TrackParticle container. |
nullpt
rwhen there is no TrackParticle found. Definition at line 236 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::L2CombinedMuonContainer > MuonMatchingTool::searchL2CBLinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trigger | ||
) | const |
Function that searches for the L2 combined muon (L2muComb) candidate closest to a given offline muon.
mu | Offline muon around which L2MuonSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision and pass
for knowing if it is really matched. Definition at line 322 of file MuonMatchingTool.cxx.
const TrigCompositeUtils::LinkInfo< xAOD::L2StandAloneMuonContainer > MuonMatchingTool::searchL2SALinkInfo | ( | const xAOD::Muon * | mu, |
std::string | trigger | ||
) | const |
Function that searches for the L2 standalone muon (L2MuonSA) candidate closest to a given offline muon.
mu | Offline muon around which L2MuonSA candidates are searched. |
trigger | Considered chain name, e.g. HLT_mu26_ivarmedium_L1MU20, etc. |
pass
for the decision and pass
for knowing if it is really matched. Definition at line 288 of file MuonMatchingTool.cxx.
|
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 DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlinestaticprivate |
|
static |
Definition at line 57 of file MuonMatchingTool.cxx.
|
static |
Definition at line 53 of file MuonMatchingTool.cxx.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 448 of file MuonMatchingTool.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 446 of file MuonMatchingTool.h.
|
private |
Definition at line 444 of file MuonMatchingTool.h.
|
private |
Definition at line 364 of file MuonMatchingTool.h.
|
private |
Definition at line 445 of file MuonMatchingTool.h.
|
private |
Definition at line 443 of file MuonMatchingTool.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 455 of file MuonMatchingTool.h.
|
private |
Definition at line 362 of file MuonMatchingTool.h.
|
private |
Definition at line 363 of file MuonMatchingTool.h.
|
private |
Definition at line 442 of file MuonMatchingTool.h.
|
private |
Definition at line 441 of file MuonMatchingTool.h.
|
private |
Definition at line 361 of file MuonMatchingTool.h.
|
private |
Definition at line 447 of file MuonMatchingTool.h.
|
private |
Definition at line 440 of file MuonMatchingTool.h.
|
private |
Definition at line 439 of file MuonMatchingTool.h.
|
private |
Definition at line 454 of file MuonMatchingTool.h.
|
private |
Definition at line 451 of file MuonMatchingTool.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.