|
ATLAS Offline Software
|
#include <SUSYObjDef_xAOD.h>
|
| SUSYObjDef_xAOD (const std::string &name) |
|
| ~SUSYObjDef_xAOD () |
|
StatusCode | initialize () override final |
| Dummy implementation of the initialisation function. More...
|
|
bool | isData () const override final |
|
bool | isAtlfast () const override final |
|
StatusCode | setBoolProperty (const std::string &name, const bool &property) override final |
|
void | setDataSource (int source) |
|
StatusCode | FillJet (xAOD::Jet &input, const bool doCalib=true, bool isFat=false, bool doLargeRdecorations=false) override final |
|
StatusCode | FillTrackJet (xAOD::Jet &input) override final |
|
StatusCode | FillTau (xAOD::TauJet &input) override final |
|
StatusCode | FillMuon (xAOD::Muon &input, const float ptcut, const float etacut) override final |
|
StatusCode | FillElectron (xAOD::Electron &input, const float etcut, const float etacut) override final |
|
StatusCode | FillPhoton (xAOD::Photon &input, const float ptcut, const float etacut) override final |
|
const xAOD::Vertex * | GetPrimVtx () const override final |
|
StatusCode | GetJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="", const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetTrackJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="", const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetJetsSyst (const xAOD::JetContainer &calibjets, xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="") override final |
|
StatusCode | GetFatJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=false, const std::string &jetkey="", const bool doLargeRdecorations=false, const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetTaus (xAOD::TauJetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &taukey="TauJets", const xAOD::TauJetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetMuons (xAOD::MuonContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &muonkey="Muons", const std::string &lrtmuonkey="MuonsLRT", const xAOD::MuonContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetElectrons (xAOD::ElectronContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &elekey="Electrons", const std::string &lrtelekey="LRTElectrons", const xAOD::ElectronContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetPhotons (xAOD::PhotonContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &photonkey="Photons", const xAOD::PhotonContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetMET (xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr, const xAOD::PhotonContainer *gamma=nullptr, const xAOD::TauJetContainer *taujet=nullptr, bool doTST=true, bool doJVTCut=true, const xAOD::IParticleContainer *invis=nullptr) override final |
|
StatusCode | GetTrackMET (xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr) override final |
|
StatusCode | GetMETSig (xAOD::MissingETContainer &met, double &metSignificance, bool doTST=true, bool doJVTCut=true) override final |
|
StatusCode | MergeMuons (const xAOD::MuonContainer &muons, const std::vector< bool > &writeMuon, xAOD::MuonContainer *outputCol) const override final |
|
StatusCode | prepareLRTMuons (const xAOD::MuonContainer *inMuons, xAOD::MuonContainer *copy) const override final |
|
StatusCode | MergeElectrons (const xAOD::ElectronContainer &electrons, xAOD::ElectronContainer *outputCol, const std::set< const xAOD::Electron * > &ElectronsToRemove) const override final |
|
StatusCode | prepareLRTElectrons (const xAOD::ElectronContainer *inMuons, xAOD::ElectronContainer *copy) const override final |
|
StatusCode | SetBtagWeightDecorations (const xAOD::Jet &input, const asg::AnaToolHandle< IBTaggingSelectionTool > &btagSelTool, const std::string &btagTagger) const override final |
|
bool | IsPFlowCrackVetoCleaning (const xAOD::ElectronContainer *elec=nullptr, const xAOD::PhotonContainer *gamma=nullptr) const override final |
|
bool | IsSignalJet (const xAOD::Jet &input, const float ptcut, const float etacut) const override final |
|
bool | IsBadJet (const xAOD::Jet &input) const override final |
|
bool | IsBJetLoose (const xAOD::Jet &input) const override final |
|
bool | JetPassJVT (xAOD::Jet &input) override final |
|
bool | IsSignalMuon (const xAOD::Muon &input, const float ptcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final |
|
bool | IsSignalElectron (const xAOD::Electron &input, const float etcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final |
|
bool | IsCosmicMuon (const xAOD::Muon &input, const float z0cut, const float d0cut) const override final |
|
bool | IsHighPtMuon (const xAOD::Muon &input) const override final |
|
bool | IsSignalTau (const xAOD::TauJet &input, const float ptcut, const float etacut) const override final |
|
bool | IsBadMuon (const xAOD::Muon &input, const float qopcut) const override final |
|
bool | IsSignalPhoton (const xAOD::Photon &input, const float ptcut, const float etacut=DUMMYDEF) const override final |
|
bool | IsBJet (const xAOD::Jet &input) const override final |
|
bool | IsTrackBJet (const xAOD::Jet &input) const override final |
|
bool | IsTruthBJet (const xAOD::Jet &input) const override final |
|
int | IsBJetContinuous (const xAOD::Jet &input) const override final |
|
int | IsTrackBJetContinuous (const xAOD::Jet &input) const override final |
|
float | BtagSF (const xAOD::JetContainer *jets) override final |
|
float | BtagSFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
float | BtagSF_trkJet (const xAOD::JetContainer *trkjets) override final |
|
float | BtagSFsys_trkJet (const xAOD::JetContainer *trkjets, const CP::SystematicSet &systConfig) override final |
|
double | JVT_SF (const xAOD::JetContainer *jets) override final |
|
double | JVT_SFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
double | FJVT_SF (const xAOD::JetContainer *jets) override final |
|
double | FJVT_SFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
float | GetSignalMuonSF (const xAOD::Muon &mu, const bool recoSF=true, const bool isoSF=true, const bool doBadMuonHP=true, const bool warnOVR=true) override final |
|
double | GetMuonTriggerEfficiency (const xAOD::Muon &mu, const std::string &trigExpr, const bool isdata=false) override final |
|
double | GetTotalMuonTriggerSF (const xAOD::MuonContainer &sfmuons, const std::string &trigExpr) override final |
|
double | GetTotalMuonSF (const xAOD::MuonContainer &muons, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final |
|
double | GetTotalMuonSFsys (const xAOD::MuonContainer &muons, const CP::SystematicSet &systConfig, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final |
|
float | GetSignalElecSF (const xAOD::Electron &el, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
double | GetEleTriggerEfficiency (const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final |
|
double | GetTriggerGlobalEfficiency (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiency (const xAOD::PhotonContainer &photons, const std::string &trigExpr="diPhoton") override final |
|
double | GetEleTriggerEfficiencySF (const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final |
|
double | GetTriggerGlobalEfficiencySF (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiencySF (const xAOD::PhotonContainer &photons, const std::string &trigExpr="diPhoton") override final |
|
double | GetTriggerGlobalEfficiencySFsys (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const CP::SystematicSet &systConfig, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiencySFsys (const xAOD::PhotonContainer &photons, const CP::SystematicSet &systConfig, const std::string &trigExpr="diPhoton") override final |
|
float | GetTotalElectronSF (const xAOD::ElectronContainer &electrons, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
float | GetTotalElectronSFsys (const xAOD::ElectronContainer &electrons, const CP::SystematicSet &systConfig, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
double | GetSignalTauSF (const xAOD::TauJet &tau, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetSignalTauSFsys (const xAOD::TauJet &tau, const CP::SystematicSet &systConfig, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTauTriggerEfficiencySF (const xAOD::TauJet &tau, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTotalTauSF (const xAOD::TauJetContainer &taus, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTotalTauSFsys (const xAOD::TauJetContainer &taus, const CP::SystematicSet &systConfig, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetSignalPhotonSF (const xAOD::Photon &ph, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final |
|
double | GetSignalPhotonSFsys (const xAOD::Photon &ph, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final |
|
double | GetTotalPhotonSF (const xAOD::PhotonContainer &photons, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final |
|
double | GetTotalPhotonSFsys (const xAOD::PhotonContainer &photons, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final |
|
double | GetTotalJetSF (const xAOD::JetContainer *jets, const bool btagSF=true, const bool jvtSF=true, const bool fjvtSF=false) override final |
|
double | GetTotalJetSFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig, const bool btagSF=true, const bool jvtSF=true, const bool fjvtSF=false) override final |
|
bool | IsMETTrigPassed (unsigned int runnumber=0, bool j400_OR=false) const override final |
|
bool | IsMETTrigPassed (const std::string &triggerName, bool j400_OR=false) const override final |
|
bool | IsTrigPassed (const std::string &, unsigned int condition=TrigDefs::Physics) const override final |
|
bool | IsTrigMatched (const xAOD::IParticle *part, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const xAOD::IParticle *part1, const xAOD::IParticle *part2, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const std::vector< const xAOD::IParticle * > &v, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const std::initializer_list< const xAOD::IParticle * > &v, const std::string &tr_item) override final |
|
void | TrigMatch (const xAOD::IParticle *p, std::initializer_list< std::string >::iterator, std::initializer_list< std::string >::iterator) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::string &item) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::string &item) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::string &item) override final |
|
float | GetTrigPrescale (const std::string &) const override final |
|
const Trig::ChainGroup * | GetTrigChainGroup (const std::string &) const override final |
|
std::vector< std::string > | GetTriggerOR (const std::string &trigExpr) const |
|
void | GetTriggerTokens (std::string, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &) const |
|
Trig::FeatureContainer | GetTriggerFeatures (const std::string &chainName="EF_.*", unsigned int condition=TrigDefs::Physics) const |
|
const xAOD::EventInfo * | GetEventInfo () const override final |
|
float | GetPileupWeight () override final |
|
float | GetPileupWeightPrescaledTrigger (const std::string &trigger_expr) override final |
|
ULong64_t | GetPileupWeightHash () override final |
|
float | GetDataWeight (const std::string &) override final |
|
float | GetCorrectedAverageInteractionsPerCrossing (bool includeDataSF=false) override final |
|
float | GetCorrectedActualInteractionsPerCrossing (bool includeDataSF=false) override final |
|
double | GetSumOfWeights (int channel) override final |
|
unsigned int | GetRandomRunNumber (bool muDependentRRN=true) override final |
|
StatusCode | ApplyPRWTool (bool muDependentRRN=true) override final |
|
unsigned int | GetRunNumber () const override final |
|
const xAOD::TrackParticleContainer & | GetInDetLargeD0Tracks (const EventContext &ctx) const override final |
|
const xAOD::TrackParticleContainer & | GetInDetLargeD0GSFTracks (const EventContext &ctx) const override final |
|
StatusCode | ApplyLRTUncertainty () override final |
|
int | treatAsYear (const int runNumber=-1) const override final |
|
StatusCode | OverlapRemoval (const xAOD::ElectronContainer *electrons, const xAOD::MuonContainer *muons, const xAOD::JetContainer *jets, const xAOD::PhotonContainer *gamma=nullptr, const xAOD::TauJetContainer *taujet=nullptr, const xAOD::JetContainer *fatjets=nullptr) override final |
|
StatusCode | NearbyLeptonCorrections (xAOD::ElectronContainer *electrons=nullptr, xAOD::MuonContainer *muons=nullptr) const override final |
|
StatusCode | resetSystematics () override final |
|
const CP::SystematicSet & | currentSystematic () const |
|
StatusCode | applySystematicVariation (const CP::SystematicSet &systConfig) override final |
|
bool | isPrompt (const xAOD::IParticle *part) const override final |
|
StatusCode | FindSusyHP (int &pdgid1, int &pdgid2) const |
|
StatusCode | FindSusyHP (const xAOD::TruthParticleContainer *truthP, int &pdgid1, int &pdgid2, bool isTruth3=false) const override final |
|
StatusCode | FindSusyHP (const xAOD::TruthEvent *truthE, int &pdgid1, int &pdgid2) const override final |
|
std::string | TrigSingleLep () const override final |
|
bool | isNominal (const CP::SystematicSet &syst) const |
|
bool | isWeight (const CP::SystematicSet &systSet) const |
|
bool | isVariation (const CP::SystematicSet &syst) const |
|
bool | currentSystematicIsNominal () const |
|
bool | currentSystematicIsVariation () const |
|
bool | currentSystematicIsWeight () const |
|
ST::SystInfo | getSystInfo (const CP::SystematicVariation &sys) const override final |
|
std::vector< ST::SystInfo > | getSystInfoList () const override final |
|
float | getSherpaVjetsNjetsWeight () const override final |
|
float | getSherpaVjetsNjetsWeight (const std::string &jetContainer) const override final |
|
int | getMCShowerType (const std::string &sample_name="") const override final |
|
template<typename T > |
const T * | getProperty (const std::string &name) |
|
virtual void | print () const =0 |
| Print the state of the tool. More...
|
|
virtual StatusCode | sysInitialize () |
| Function initialising the tool in the correct way in Athena. More...
|
|
virtual void | print () const |
| Print the state of the tool. 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 | 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 |
|
|
StatusCode | autoconfigurePileupRWTool (const std::string &PRWfilesDir="dev/PileupReweighting/share/", const std::string &PRWfileName="", bool usePathResolver=true, bool RPVLLmode=false, bool Combinedmode=false, const std::string &HFFilter="") |
|
StatusCode | readConfig () override final |
|
StatusCode | validConfig (bool strict=false) const |
|
const std::vector< std::string > | split (const std::string &s, const std::string &delim) const |
|
void | getTauConfig (const std::string &tauConfigPath, std::vector< float > &pT_window, std::vector< float > &eta_window, bool &eleOLR, bool &muVeto, bool &muOLR) const |
|
void | configFromFile (bool &property, const std::string &propname, TEnv &rEnv, bool defaultValue) |
|
void | configFromFile (double &property, const std::string &propname, TEnv &rEnv, double defaultValue) |
|
void | configFromFile (int &property, const std::string &propname, TEnv &rEnv, int defaultValue) |
|
void | configFromFile (std::string &property, const std::string &propname, TEnv &rEnv, const std::string &defaultValue, bool allowEmpty=false) |
|
bool | check_isOption (const std::string &wp, const std::vector< std::string > &list) const |
|
bool | check_isTighter (const std::string &wp1, const std::string &wp, const std::vector< std::string > &list) const |
|
std::string | EG_WP (const std::string &wp) const |
|
std::vector< std::string > | getElSFkeys (const std::string &mapFile) const |
|
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...
|
|
|
int | m_dataSource |
|
int | m_jetInputType |
|
std::string | m_configFile |
|
bool | m_force_noElId |
|
bool | m_force_noMuId |
|
bool | m_doTTVAsf |
|
bool | m_doModifiedEleId |
|
bool | m_upstreamTriggerMatching |
|
std::string | m_trigMatchingPrefix |
| Use composite trigger matching tool if matching was done upstream. More...
|
|
std::string | m_jetUncertaintiesConfig |
| Prefix for trigger matchiing container name. More...
|
|
std::string | m_jetUncertaintiesAnalysisFile |
|
std::string | m_jetUncertaintiesCalibArea |
|
std::string | m_jetUncertaintiesMCType |
|
bool | m_jetUncertaintiesPDsmearing |
|
bool | m_useBtagging |
|
bool | m_useBtagging_trkJet |
|
bool | m_debug |
|
bool | m_strictConfigCheck |
|
std::string | m_badJetCut |
|
std::string | m_fatJetUncConfig |
|
std::string | m_fatJetUncVars |
|
TEnv | m_WconfigReader |
|
TEnv | m_ZconfigReader |
|
TEnv | m_TopconfigReader |
|
std::string | m_WDecorName |
|
std::string | m_ZDecorName |
|
std::string | m_TopDecorName |
|
std::string | m_WtagConfig |
|
std::string | m_ZtagConfig |
|
std::string | m_ToptagConfig |
|
std::string | m_WZTaggerCalibArea |
|
std::string | m_TopTaggerCalibArea |
|
std::string | m_WTagUncConfig |
|
std::string | m_ZTagUncConfig |
|
std::string | m_TopTagUncConfig |
|
std::string | m_JetTruthLabelName |
|
bool | m_tool_init |
|
bool | m_subtool_init |
|
std::string | m_eleTerm |
|
std::string | m_gammaTerm |
|
std::string | m_tauTerm |
|
std::string | m_jetTerm |
|
std::string | m_muonTerm |
|
std::string | m_inputMETSuffix |
|
std::string | m_inputMETMap |
|
std::string | m_inputMETCore |
|
std::string | m_inputMETRef |
|
std::string | m_outMETTerm |
|
bool | m_metRemoveOverlappingCaloTaggedMuons |
|
bool | m_metDoSetMuonJetEMScale |
|
bool | m_metDoRemoveMuonJets |
|
bool | m_metUseGhostMuons |
|
bool | m_metDoMuonEloss |
|
bool | m_metGreedyPhotons |
|
bool | m_metVeryGreedyPhotons |
|
std::string | m_metsysConfigPrefix |
|
bool | m_trkMETsyst |
|
bool | m_caloMETsyst |
|
bool | m_trkJetsyst |
|
int | m_softTermParam |
|
bool | m_treatPUJets |
|
bool | m_doPhiReso |
|
bool | m_autoconfigPRW |
|
std::string | m_autoconfigPRWPath |
|
std::string | m_autoconfigPRWFile |
|
bool | m_autoconfigPRWCombinedmode |
|
bool | m_autoconfigPRWRPVmode |
|
std::string | m_autoconfigPRWRtags |
|
std::string | m_mcCampaign |
|
int | m_mcChannel |
|
bool | m_useCommonPRWFiles |
|
std::string | m_commonPRWFileMC20a |
|
std::string | m_commonPRWFileMC20d |
|
std::string | m_commonPRWFileMC20e |
|
std::string | m_commonPRWFileMC21a |
|
std::string | m_commonPRWFileMC23a |
|
std::string | m_commonPRWFileMC23c |
|
std::string | m_commonPRWFileMC23d |
|
std::string | m_commonPRWFileMC23e |
|
std::vector< std::string > | m_prwConfFiles |
|
std::vector< std::string > | m_prwLcalcFiles |
|
std::string | m_prwActualMu2017File |
|
std::string | m_prwActualMu2018File |
|
std::string | m_prwActualMu2022File |
|
std::string | m_prwActualMu2023File |
|
std::string | m_prwActualMu2024File |
|
double | m_prwDataSF |
|
double | m_prwDataSF_UP |
|
double | m_prwDataSF_DW |
|
bool | m_runDepPrescaleWeightPRW |
|
std::vector< std::string > | m_el_id_support |
|
std::vector< std::string > | m_ph_id_support |
|
int | m_mu_id_support |
|
std::vector< std::string > | m_tau_id_support |
|
std::vector< std::string > | m_el_iso_support |
|
std::vector< std::string > | m_mu_iso_support |
|
std::map< std::string, std::string > | m_el_iso_fallback |
|
std::map< std::string, std::string > | m_mu_iso_fallback |
|
std::string | m_electronTriggerSFStringSingle |
|
std::map< std::string, std::string > | m_tau_trig_support |
|
std::string | m_eleId |
|
std::string | m_eleIdBaseline |
|
std::string | m_eleConfig |
|
std::string | m_eleConfigBaseline |
|
std::string | m_eleBaselineIso_WP |
|
bool | m_eleIdExpert |
|
int | m_muId |
|
int | m_muIdBaseline |
|
std::string | m_photonId |
|
std::string | m_photonIdBaseline |
|
std::string | m_tauId |
|
std::string | m_tauIdBaseline |
|
std::string | m_eleIso_WP |
|
std::string | m_eleIsoHighPt_WP |
|
double | m_eleIsoHighPtThresh |
|
std::string | m_eleChID_WP |
|
bool | m_eleLRT |
|
int | m_eleLRT_strat |
|
bool | m_eleChIso |
|
bool | m_eleChID_signal |
|
bool | m_runECIS |
|
std::string | m_photonBaselineIso_WP |
|
std::string | m_photonIso_WP |
|
std::string | m_photonTriggerName |
|
std::string | m_muBaselineIso_WP |
|
std::string | m_muIso_WP |
|
std::string | m_muIsoHighPt_WP |
|
double | m_muIsoHighPtThresh |
|
bool | m_muHighPtExtraSmear |
|
bool | m_muEffCorrForce1D |
|
std::string | m_BtagWP |
|
std::string | m_BtagTagger |
|
double | m_BtagMinPt |
|
std::string | m_BtagKeyOverride |
|
std::string | m_BtagSystStrategy |
|
std::string | m_BtagWP_trkJet |
|
std::string | m_BtagTagger_trkJet |
|
double | m_BtagMinPt_trkJet |
|
double | m_eleBaselinePt |
|
double | m_eleBaselineEta |
|
bool | m_eleBaselineCrackVeto |
|
double | m_elePt |
|
double | m_eleEta |
|
bool | m_eleCrackVeto |
|
double | m_eled0sig |
|
double | m_elez0 |
|
double | m_elebaselined0sig |
|
double | m_elebaselinez0 |
|
std::string | m_eleEffMapFilePath |
|
std::string | m_eleEffMapFilePathRun2 |
|
bool | m_eleAllowRun3TrigSFFallback |
|
double | m_muBaselinePt |
|
double | m_muBaselineEta |
|
double | m_muPt |
|
double | m_muEta |
|
double | m_mud0sig |
|
double | m_muz0 |
|
double | m_mubaselined0sig |
|
double | m_mubaselinez0 |
|
bool | m_murequirepassedHighPtCuts |
|
double | m_muCosmicz0 |
|
double | m_muCosmicd0 |
|
double | m_badmuQoverP |
|
int | m_muCalibrationMode |
|
bool | m_muLRT |
|
double | m_photonBaselinePt |
|
double | m_photonBaselineEta |
|
double | m_photonEta |
|
double | m_photonPt |
|
bool | m_photonBaselineCrackVeto |
|
bool | m_photonCrackVeto |
|
bool | m_photonAllowLate |
|
double | m_tauPrePtCut |
|
double | m_tauPt |
|
double | m_tauEta |
|
std::string | m_tauConfigPath |
|
std::string | m_tauConfigPathBaseline |
|
bool | m_tauDoTTM |
|
std::string | m_tauSmearingToolRecommendationTag |
|
std::string | m_tauSmearingToolGenerator |
|
TEnv | m_tauConfigReader |
|
double | m_jetPt |
|
double | m_jetEta |
|
double | m_jetJvt |
|
std::string | m_JvtWP |
|
double | m_JvtPtMax |
|
std::string | m_JvtConfigRun2 |
|
std::string | m_JvtConfigRun3 |
|
double | m_trkJetPt |
|
double | m_trkJetEta |
|
bool | m_doFwdJVT |
|
std::string | m_fJvtWP |
|
double | m_fJvtPtMax |
|
double | m_fJvtEtaMin |
|
std::string | m_fJvtConfigRun2 |
|
std::string | m_fJvtConfigRun3 |
|
bool | m_JMScalib |
|
bool | m_orDoTau |
| Overlap removal options. More...
|
|
bool | m_orDoPhoton |
|
bool | m_orDoEleJet |
|
bool | m_orDoElEl |
|
bool | m_orDoElMu |
|
bool | m_orDoMuonJet |
|
bool | m_orDoBjet |
|
bool | m_orDoElBjet |
|
bool | m_orDoMuBjet |
|
bool | m_orDoTauBjet |
|
bool | m_orDoBoostedElectron |
|
double | m_orBoostedElectronC1 |
|
double | m_orBoostedElectronC2 |
|
double | m_orBoostedElectronMaxConeSize |
|
bool | m_orDoBoostedMuon |
|
double | m_orBoostedMuonC1 |
|
double | m_orBoostedMuonC2 |
|
double | m_orBoostedMuonMaxConeSize |
|
bool | m_orApplyRelPt |
|
double | m_orMuJetPtRatio |
|
double | m_orMuJetTrkPtRatio |
|
double | m_orMuJetInnerDR |
|
bool | m_orDoMuonJetGhostAssociation |
|
bool | m_orRemoveCaloMuons |
|
std::string | m_orBtagWP |
|
std::string | m_orInputLabel |
|
bool | m_orPhotonFavoured |
|
double | m_orBJetPtUpperThres |
|
bool | m_orLinkOverlapObjects |
|
bool | m_orDoFatjets |
|
double | m_EleFatJetDR |
|
double | m_JetFatJetDR |
|
bool | m_doIsoSignal |
|
bool | m_doElIsoSignal |
|
bool | m_doPhIsoSignal |
|
bool | m_doMuIsoSignal |
|
bool | m_useSigLepForIsoCloseByOR |
|
std::string | m_IsoCloseByORpassLabel |
|
bool | m_useTRUTH3 |
|
std::map< std::string, bool > | m_slices |
|
bool | m_isRun3 |
|
bool | m_isPHYSLITE |
|
std::string | m_metJetSelection |
|
int | m_showerType |
|
std::string | m_defaultJets |
|
std::string | m_defaultTrackJets |
|
std::string | m_fatJets |
|
std::string | m_defaultTruthJets |
|
CP::SystematicSet | m_defaultSyst = CP::SystematicSet() |
|
CP::SystematicSet | m_currentSyst |
|
std::string | m_EG_corrModel |
|
std::string | m_EG_corrFNList |
|
bool | m_applyJVTCut |
|
std::string | m_bTaggingCalibrationFilePath |
|
std::map< std::string, std::string > | m_legsPerTool |
|
std::map< std::string, std::string > | m_legsPerTool_ph |
|
asg::AnaToolHandle< IJetCalibrationTool > | m_jetCalibTool |
|
asg::AnaToolHandle< IJetCalibrationTool > | m_jetFatCalibTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_jetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_jetUncertaintiesPDSmearTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_fatjetUncertaintiesTool |
|
asg::AnaToolHandle< IJetSelector > | m_jetCleaningTool |
|
asg::AnaToolHandle< IJetUpdateJvt > | m_jetJvtUpdateTool |
|
asg::AnaToolHandle< JetPileupLabelingTool > | m_jetPileupLabelingTool |
|
asg::AnaToolHandle< JetPileupTag::JetVertexNNTagger > | m_jetNNJvtMomentTool |
|
asg::AnaToolHandle< IAsgSelectionTool > | m_jetNNJvtSelectionTool |
|
asg::AnaToolHandle< CP::IJvtEfficiencyTool > | m_jetNNJvtEfficiencyTool |
|
asg::AnaToolHandle< IAsgSelectionTool > | m_jetfJvtSelectionTool |
|
asg::AnaToolHandle< CP::IJvtEfficiencyTool > | m_jetfJvtEfficiencyTool |
|
asg::AnaToolHandle< SmoothedWZTagger > | m_WTaggerTool |
|
asg::AnaToolHandle< SmoothedWZTagger > | m_ZTaggerTool |
|
asg::AnaToolHandle< JSSWTopTaggerDNN > | m_TopTaggerTool |
|
asg::AnaToolHandle< JetTruthLabelingTool > | m_jetTruthLabelingTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_WTagjetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_ZTagjetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_TopTagjetUncertaintiesTool |
|
SG::ReadDecorHandleKey< xAOD::JetContainer > | m_label_truthKey |
|
std::string | m_jesConfig |
|
std::string | m_jesConfigJMS |
|
std::string | m_jesConfigJMSData |
|
std::string | m_jesConfigAFII |
|
std::string | m_jesConfigFat |
|
std::string | m_jesConfigFatData |
|
std::string | m_jesCalibSeq |
|
std::string | m_jesCalibSeqJMS |
|
std::string | m_jesCalibSeqFat |
|
std::string | m_jesCalibArea |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionTool |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionHighPtTool |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionToolBaseline |
|
asg::AnaToolHandle< CP::IMuonCalibrationAndSmearingTool > | m_muonCalibTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonEfficiencySFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonEfficiencyBMHighPtSFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonTTVAEfficiencySFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonIsolationSFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonHighPtIsolationSFTool |
|
asg::AnaToolHandle< CP::IMuonTriggerScaleFactors > | m_muonTriggerSFTool |
|
ToolHandleArray< CP::IMuonTriggerScaleFactors > | m_muonTrigSFTools |
|
asg::AnaToolHandle< CP::IMuonLRTOverlapRemovalTool > | m_muonLRTORTool |
|
SG::WriteHandleKey< xAOD::MuonContainer > | m_outMuonLocation {this, "OutputMuonLocation", "StdWithLRTMuons", "name of the muon container to write"} |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_reco |
| Combined muon collection. More...
|
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_id |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_trig_singleLep |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_trigEff_singleLep |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_iso |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_isoHighPt |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_chf |
|
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > | m_elecEfficiencySFTool_trig_mixLep |
|
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > | m_elecEfficiencySFTool_trigEff_mixLep |
|
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > | m_elecTrigSFTools |
|
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > | m_elecTrigEffTools |
|
asg::AnaToolHandle< CP::IElectronLRTOverlapRemovalTool > | m_elecLRTORTool |
|
SG::WriteHandleKey< xAOD::ElectronContainer > | m_outElectronLocation {this, "OutputElectronLocation", "StdWithLRTElectrons", "name of the muon container to write"} |
|
asg::AnaToolHandle< CP::IEgammaCalibrationAndSmearingTool > | m_egammaCalibTool |
| Combined electron collection. More...
|
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecSelLikelihood |
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecSelLikelihoodBaseline |
|
asg::AnaToolHandle< IAsgPhotonIsEMSelector > | m_photonSelIsEM |
|
asg::AnaToolHandle< IAsgPhotonIsEMSelector > | m_photonSelIsEMBaseline |
|
asg::AnaToolHandle< IAsgDeadHVCellRemovalTool > | m_deadHVTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonEfficiencySFTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonIsolationSFTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonTriggerSFTool |
|
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > | m_photonEfficiencySFTool_trigSF_AsymDiphoton |
|
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > | m_photonEfficiencySFTool_trigEff_AsymDiphoton |
|
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > | m_photonTrigSFTools |
|
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > | m_photonTrigEffTools |
|
asg::AnaToolHandle< IEGammaAmbiguityTool > | m_egammaAmbiguityTool |
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecChargeIDSelectorTool |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecChargeEffCorrTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > | m_tauSelTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > | m_tauSelToolBaseline |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSmearingTool > | m_tauSmearingTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauTruthMatchingTool > | m_tauTruthMatch |
|
asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > | m_tauEffTool |
|
std::vector< asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > > | m_tauTrigEffTool |
|
asg::AnaToolHandle< IBTaggingEfficiencyTool > | m_btagEffTool |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool_OR |
|
asg::AnaToolHandle< IBTaggingEfficiencyTool > | m_btagEffTool_trkJet |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool_trkJet |
|
asg::AnaToolHandle< IMETMaker > | m_metMaker |
|
asg::AnaToolHandle< IMETSystematicsTool > | m_metSystTool |
|
asg::AnaToolHandle< IMETSignificance > | m_metSignif |
|
std::string | m_trig2015combination_singleLep |
|
std::string | m_trig2016combination_singleLep |
|
std::string | m_trig2017combination_singleLep |
|
std::string | m_trig2018combination_singleLep |
|
std::string | m_trig2022combination_singleLep |
|
int | m_trigNToys_diLep |
|
std::string | m_trig2015combination_diLep |
|
std::string | m_trig2016combination_diLep |
|
std::string | m_trig2017combination_diLep |
|
std::string | m_trig2018combination_diLep |
|
std::string | m_trig2022combination_diLep |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_diLep |
|
int | m_trigNToys_multiLep |
|
std::string | m_trig2015combination_multiLep |
|
std::string | m_trig2016combination_multiLep |
|
std::string | m_trig2017combination_multiLep |
|
std::string | m_trig2018combination_multiLep |
|
std::string | m_trig2022combination_multiLep |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_multiLep |
|
int | m_trigNToys_diPhoton |
|
std::string | m_trig2015combination_diPhoton |
|
std::string | m_trig2016combination_diPhoton |
|
std::string | m_trig2017combination_diPhoton |
|
std::string | m_trig2018combination_diPhoton |
|
std::string | m_trig2022combination_diPhoton |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_diPhoton |
|
asg::AnaToolHandle< TrigConf::ITrigConfigTool > | m_trigConfTool |
|
asg::AnaToolHandle< Trig::TrigDecisionTool > | m_trigDecTool |
|
asg::AnaToolHandle< Trig::IMatchingTool > | m_trigMatchingTool |
|
asg::AnaToolHandle< Trig::IMatchScoringTool > | m_trigMatchScoringTool |
|
asg::AnaToolHandle< Trig::IMatchScoringTool > | m_trigDRScoringTool |
|
asg::AnaToolHandle< CP::IIsolationCorrectionTool > | m_isoCorrTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoBaselineTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoHighPtTool |
|
asg::AnaToolHandle< CP::IIsolationCloseByCorrectionTool > | m_isoCloseByTool |
|
asg::AnaToolHandle< CP::IPileupReweightingTool > | m_prwTool |
|
asg::AnaToolHandle< InDet::IInclusiveTrackFilterTool > | m_LRTuncTool |
|
asg::AnaToolHandle< ORUtils::IOverlapTool > | m_tauJetORtool |
|
ORUtils::ToolBox | m_orToolbox |
|
asg::AnaToolHandle< IWeightTool > | m_pmgSHnjetWeighter |
|
asg::AnaToolHandle< IWeightTool > | m_pmgSHnjetWeighterWZ |
|
std::string | m_eleIdBaselineDFName |
|
std::string | m_eleIdDFName |
|
std::string | m_photonIdBaselineDFName |
|
std::string | m_photonIdDFName |
|
std::string | m_jetCleanDFName |
|
SG::AuxElement::ConstAccessor< char > | m_acc_eleIdBaseline |
|
SG::AuxElement::ConstAccessor< char > | m_acc_eleId |
|
SG::AuxElement::ConstAccessor< char > | m_acc_photonIdBaseline |
|
SG::AuxElement::ConstAccessor< char > | m_acc_photonId |
|
SG::AuxElement::ConstAccessor< char > | m_acc_jetClean |
|
Definition at line 140 of file SUSYObjDef_xAOD.h.
◆ MetaStore_t
◆ MetaStorePtr_t
Type of the metadata store pointer in standalone mode.
Definition at line 68 of file AsgMetadataTool.h.
◆ StoreGateSvc_t
◆ DataSource
◆ SUSYObjDef_xAOD()
ST::SUSYObjDef_xAOD::SUSYObjDef_xAOD |
( |
const std::string & |
name | ) |
|
Override for the b-tagging jet collection
Definition at line 101 of file SUSYObjDef_xAOD.cxx.
314 m_slices(std::map<std::string,bool>()),
804 "FCLoose",
"FCTight",
808 "TightTrackOnly_VarRad",
"TightTrackOnly_FixedRad",
809 "Tight_VarRad",
"Loose_VarRad",
810 "PLVLoose",
"PLVTight",
811 "PLImprovedTight",
"PLImprovedVeryTight"
816 "PflowLoose_FixedRad",
"PflowLoose_VarRad",
"PflowTight_FixedRad",
"PflowTight_VarRad",
817 "TightTrackOnly_FixedRad",
"TightTrackOnly_VarRad",
"HighPtTrackOnly",
818 "PLVLoose",
"PLVTight",
819 "Loose_VarRad",
"Loose_FixedRad",
"Tight_VarRad",
"Tight_FixedRad",
820 "PLImprovedTight",
"PLImprovedVeryTight"
◆ ~SUSYObjDef_xAOD()
ST::SUSYObjDef_xAOD::~SUSYObjDef_xAOD |
( |
| ) |
|
Definition at line 3074 of file SUSYObjDef_xAOD.cxx.
3076 #ifdef XAOD_STANDALONE
3082 if (asg::ToolStore::contains<Trig::TrigDecisionTool>(
"ToolSvc.TrigDecisionTool") ){
◆ ApplyLRTUncertainty()
StatusCode ST::SUSYObjDef_xAOD::ApplyLRTUncertainty |
( |
| ) |
|
|
finaloverridevirtual |
◆ ApplyPRWTool()
StatusCode ST::SUSYObjDef_xAOD::ApplyPRWTool |
( |
bool |
muDependentRRN = true | ) |
|
|
finaloverridevirtual |
◆ applySystematicVariation()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2110 of file SUSYObjDef_xAOD.cxx.
2114 return StatusCode::FAILURE;
2117 ATH_MSG_DEBUG(
" in SUSYObjDef_xAOD::applySystematicVariation \"" << systConfig.
name() <<
"\" size " << systConfig.
size());
2125 if ( ret != StatusCode::SUCCESS) {
2126 ATH_MSG_VERBOSE(
"Cannot configure JetUncertaintiesTool for systematic var. " << systConfig.
name() );
2128 ATH_MSG_VERBOSE(
"Configured JetUncertaintiesTool for systematic var. " << systConfig.
name() );
2133 if ( ret != StatusCode::SUCCESS) {
2134 ATH_MSG_VERBOSE(
"Cannot configure JetUncertaintiesPDSmearTool for systematic var. " << systConfig.
name() );
2136 ATH_MSG_VERBOSE(
"Configured JetUncertaintiesPDSmearTool for systematic var. " << systConfig.
name() );
2141 if ( ret != StatusCode::SUCCESS) {
2142 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (WTag) for systematic var. " << systConfig.
name() );
2144 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (WTag) for systematic var. " << systConfig.
name() );
2149 if ( ret != StatusCode::SUCCESS) {
2150 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (ZTag) for systematic var. " << systConfig.
name() );
2152 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (ZTag) for systematic var. " << systConfig.
name() );
2158 if ( ret != StatusCode::SUCCESS) {
2159 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (TopTag) for systematic var. " << systConfig.
name() );
2161 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (TopTag) for systematic var. " << systConfig.
name() );
2166 if ( ret != StatusCode::SUCCESS) {
2167 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (main) for systematic var. " << systConfig.
name() );
2169 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (main) for systematic var. " << systConfig.
name() );
2174 if ( ret != StatusCode::SUCCESS) {
2175 ATH_MSG_VERBOSE(
"Cannot configure NNJvtEfficiency for systematic var. " << systConfig.
name() );
2182 if ( ret != StatusCode::SUCCESS) {
2183 ATH_MSG_VERBOSE(
"Cannot configure fJvtEfficiency for systematic var. " << systConfig.
name() );
2190 if (ret != StatusCode::SUCCESS) {
2191 ATH_MSG_ERROR(
"Cannot configure MuonCalibTool for systematic var. " << systConfig.
name() );
2199 if ( ret != StatusCode::SUCCESS) {
2200 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
2203 ATH_MSG_VERBOSE(
"MuonEfficiencyScaleFactors configured for systematic var. " << systConfig.
name() );
2208 if ( ret != StatusCode::SUCCESS) {
2209 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors for systematic var. " << systConfig.
name() );
2212 ATH_MSG_VERBOSE(
"MuonBadMuonHighPtScaleFactors configured for systematic var. " << systConfig.
name() );
2217 if ( ret != StatusCode::SUCCESS) {
2218 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
2221 ATH_MSG_VERBOSE(
"MuonTTVAEfficiencyScaleFactors configured for systematic var. " << systConfig.
name() );
2226 if ( ret != StatusCode::SUCCESS) {
2227 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors for systematic var. " << systConfig.
name() );
2230 ATH_MSG_VERBOSE(
"MuonIsolationScaleFactors configured for systematic var. " << systConfig.
name() );
2235 if ( ret != StatusCode::SUCCESS) {
2236 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors for systematic var. " << systConfig.
name() );
2239 ATH_MSG_VERBOSE(
"MuonTriggerScaleFactors configured for systematic var. " << systConfig.
name() );
2244 if (ret != StatusCode::SUCCESS) {
2245 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
2248 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (reco) configured for systematic var. " << systConfig.
name() );
2253 if (ret != StatusCode::SUCCESS) {
2254 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) for systematic var. " << systConfig.
name() );
2257 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (id) configured for systematic var. " << systConfig.
name() );
2262 if (ret != StatusCode::SUCCESS) {
2263 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
2266 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (trigger) configured for systematic var. " << systConfig.
name() );
2271 if (ret != StatusCode::SUCCESS) {
2272 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger SFTool) for systematic var. " << systConfig.
name() );
2275 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (trigger SFTool) configured for systematic var. " << systConfig.
name() );
2281 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2282 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigEffTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2285 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2286 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigSFTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2289 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2290 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_muonTrigSFTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2292 if (ret != StatusCode::SUCCESS) {
2293 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) for systematic var. " << systConfig.
name() );
2296 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (dilepton trigger) configured for systematic var. " << systConfig.
name() );
2302 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2303 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigEffTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2306 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2307 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigSFTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2310 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2311 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_muonTrigSFTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2313 if (ret != StatusCode::SUCCESS) {
2314 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) for systematic var. " << systConfig.
name() );
2317 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) configured for systematic var. " << systConfig.
name() );
2322 if (ret != StatusCode::SUCCESS) {
2323 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
2326 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (iso) configured for systematic var. " << systConfig.
name() );
2331 if (ret != StatusCode::SUCCESS) {
2332 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) for systematic var. " << systConfig.
name() );
2335 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (iso high-pt) configured for systematic var. " << systConfig.
name() );
2340 if (ret != StatusCode::SUCCESS) {
2341 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEffCorrectionTool for systematic var. " << systConfig.
name() );
2344 ATH_MSG_VERBOSE(
"ElectronChargeEffCorrectionTool configured for systematic var. " << systConfig.
name() );
2349 if (ret != StatusCode::SUCCESS) {
2350 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
2353 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool (reco) configured for systematic var. " << systConfig.
name() );
2358 if (ret != StatusCode::SUCCESS) {
2359 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
2362 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool configured (iso) for systematic var. " << systConfig.
name() );
2367 if (ret != StatusCode::SUCCESS) {
2368 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
2371 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool configured (trigger) for systematic var. " << systConfig.
name() );
2377 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2378 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_photonTrigEffTools (diphoton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2381 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2382 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_photonTrigSFTools (diphoton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2384 if (ret != StatusCode::SUCCESS) {
2385 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) for systematic var. " << systConfig.
name() );
2388 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (diphoton trigger) configured for systematic var. " << systConfig.
name() );
2393 if (ret != StatusCode::SUCCESS) {
2394 ATH_MSG_ERROR(
"Cannot configure EgammaCalibrationAndSmearingTool for systematic var. " << systConfig.
name() );
2397 ATH_MSG_VERBOSE(
"EgammaCalibrationAndSmearingTool configured for systematic var. " << systConfig.
name() );
2402 if (ret != StatusCode::SUCCESS) {
2403 ATH_MSG_ERROR(
"Cannot configure IsolationCorrectionTool for systematic var. " << systConfig.
name() );
2406 ATH_MSG_VERBOSE(
"IsolationCorrectionTool configured for systematic var. " << systConfig.
name() );
2412 if ( ret != StatusCode::SUCCESS) {
2413 ATH_MSG_ERROR(
"Cannot configure xAODBTaggingEfficiency for systematic var. " << systConfig.
name() );
2416 ATH_MSG_VERBOSE(
"Configured xAODBTaggingEfficiency for systematic var. " << systConfig.
name() );
2422 if ( ret != StatusCode::SUCCESS) {
2423 ATH_MSG_ERROR(
"Cannot configure xAODBTaggingEfficiency (track jets) for systematic var. " << systConfig.
name() );
2426 ATH_MSG_VERBOSE(
"Configured xAODBTaggingEfficiency (track jets) for systematic var. " << systConfig.
name() );
2431 if ( ret != StatusCode::SUCCESS) {
2432 ATH_MSG_ERROR(
"Cannot configure TauSmearingTool for systematic var. " << systConfig.
name() );
2440 if ( ret != StatusCode::SUCCESS) {
2441 ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() );
2444 ATH_MSG_VERBOSE(
"Configured TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() );
2449 if (ret != StatusCode::SUCCESS) {
2450 ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name() );
2458 if ( ret != StatusCode::SUCCESS) {
2459 ATH_MSG_ERROR(
"Cannot configure METSystematicsTool for systematic var. " << systConfig.
name() );
2462 ATH_MSG_VERBOSE(
"Configured METSystematicsTool for systematic var. " << systConfig.
name() );
2467 if ( ret != StatusCode::SUCCESS) {
2468 ATH_MSG_ERROR(
"Cannot configure PileupReweightingTool for systematic var. " << systConfig.
name() );
2471 ATH_MSG_VERBOSE(
"Configured PileupReweightingTool for systematic var. " << systConfig.
name() );
2477 if ( ret != StatusCode::SUCCESS) {
2478 ATH_MSG_ERROR(
"Cannot configure InDetTrackFilterTool for systematic var. " << systConfig.
name() );
2481 ATH_MSG_VERBOSE(
"Configured InDetTrackFilterTool for systematic var. " << systConfig.
name() );
2485 return StatusCode::SUCCESS;
◆ autoconfigurePileupRWTool()
StatusCode ST::SUSYObjDef_xAOD::autoconfigurePileupRWTool |
( |
const std::string & |
PRWfilesDir = "dev/PileupReweighting/share/" , |
|
|
const std::string & |
PRWfileName = "" , |
|
|
bool |
usePathResolver = true , |
|
|
bool |
RPVLLmode = false , |
|
|
bool |
Combinedmode = false , |
|
|
const std::string & |
HFFilter = "" |
|
) |
| |
|
protected |
Definition at line 996 of file SUSYObjDef_xAOD.cxx.
1000 std::string prwConfigFile(
"");
1004 prwConfigFile = PRWfilesDir;
1008 std::string mcCampaignMD(
"");
1009 std::string simFlavour(
"");
1010 std::string simType(
"");
1015 std::map<std::string,std::vector<std::string>> PRWRtags = {};
1016 std::string allcampaigns =
"mc20a.mc20d.mc20e.mc21a.mc23a.mc23c.mc23d.mc23e";
1017 bool standard_like =
true;
1019 std::string icampaign = campaign_rtags.substr(0, campaign_rtags.find(
":"));
1020 std::vector<std::string> irtags =
split( campaign_rtags.substr(campaign_rtags.find(
":")+1),
"_" );
1021 PRWRtags[icampaign] = irtags;
1022 ATH_MSG_DEBUG(
"PRW autoconfigure considering rtags " << campaign_rtags.substr(campaign_rtags.find(
"_")+1) <<
" for campaign " << icampaign );
1024 for (
const auto&
x : PRWRtags ) {
1025 if ( allcampaigns.find(
x.first)==string::npos ) {
1028 return StatusCode::FAILURE;
1038 if(simFlavour.find(
"ATLFASTII")==0) simType =
"AFII";
1039 else if(simFlavour.find(
"ATLFAST3")==0) simType =
"AF3";
1040 else simType =
"FS";
1043 while ( mcCampaignMD.empty() ) {
1044 for (
const auto& campaign_rtags : PRWRtags ) {
1045 for (
const auto& rtag: campaign_rtags.second ) {
1046 if (
found)
continue;
1047 if (
amiTag.find(rtag)!=string::npos) {
1048 mcCampaignMD = campaign_rtags.first.substr(0,5);
1049 standard_like = (campaign_rtags.first.find(
"ns")?
true:
false);
1056 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): unrecognized xAOD::FileMetaData::amiTag, \'" <<
amiTag <<
"'. Please check your input sample.");
1057 return StatusCode::FAILURE;
1060 ATH_MSG_INFO(
"Setting up autoconfigurePileupRWTool for mc campaign " << mcCampaignMD <<
" (from amiTag " <<
amiTag <<
") (standard-like = " << (standard_like?
"true":
"false") <<
")." );
1061 if ( (!standard_like) && (!RPVLLmode) )
1062 ATH_MSG_WARNING(
"Non-standard r-tag found (" <<
amiTag.data() <<
"), but RPVLLmode not set. Perhaps you want to set \"PRW.autoconfigPRWRPVmode: 1\" in the config?");
1065 #ifndef XAOD_STANDALONE
1066 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): access to FileMetaData failed, can't get mc channel number.");
1067 return StatusCode::FAILURE;
1073 ATH_MSG_WARNING(
"autoconfigurePileupRWTool(): access to FileMetaData failed -> getting the mc channel number (DSID) and campaign from configuration." );
1074 std::string NoMetadataButPropertyOK(
"");
1075 NoMetadataButPropertyOK +=
"autoconfigurePileupRWTool(): 'mcCampaign' is used and passed to SUSYTools as '";
1077 NoMetadataButPropertyOK +=
"'. 'mcChannel' is used and passed to SUSYTools as '";
1079 NoMetadataButPropertyOK +=
"'. Autocongiguring PRW accordingly.";
1085 ATH_MSG_WARNING(
"autoconfigurePileupRWTool(): access to FileMetaData failed -> getting the mc channel number (DSID) from the event store." );
1089 std::string NoMetadataButPropertyOK(
"");
1090 NoMetadataButPropertyOK +=
"autoconfigurePileupRWTool(): 'mcCampaign' is used and passed to SUSYTools as '";
1092 NoMetadataButPropertyOK +=
"'. Autoconfiguring PRW accordingly.";
1097 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): `mcCampaign' is not set properly.");
1098 return StatusCode::FAILURE;
1105 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): retrieving the common PRW file for MC campaign: " << mcCampaignMD );
1115 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): no common PRW file known for MC campaign: " << mcCampaignMD);
1116 return StatusCode::FAILURE;
1122 int DSID_INT =
static_cast<int>(
dsid);
1123 prwConfigFile +=
"DSID" +
std::to_string(DSID_INT/1000) +
"xxx/pileup_" + mcCampaignMD +
"_dsid" +
std::to_string(DSID_INT) +
"_" + simType +
".root";
1125 if (RPVLLmode) prwConfigFile = TString(prwConfigFile).ReplaceAll(
".root",
"_rpvll.root").Data();
1129 if (!PRWfileName.empty()) {
1130 prwConfigFile = PRWfilesDir + PRWfileName;
1131 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): PRW file was specifed by user: " << prwConfigFile.data() );
1139 if (mcCampaignMD.find(
"mc20") == std::string::npos) {
1140 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): combined mode currently onlys supported for mc20! Impossible to autoconfigure PRW. Aborting." );
1141 return StatusCode::FAILURE;
1151 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20a").
Data() );
1152 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20d").
Data() );
1153 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20e").
Data() );
1159 if ( mcCampaignMD ==
"mc20d") {
1161 }
else if (mcCampaignMD ==
"mc20e") {
1163 }
else if (mcCampaignMD ==
"mc21a" || mcCampaignMD ==
"mc23a") {
1165 }
else if (mcCampaignMD ==
"mc23c" || mcCampaignMD ==
"mc23d") {
1167 }
else if (mcCampaignMD ==
"mc23e") {
1175 TFile testF(prwConfigFile.data(),
"read");
1176 if (testF.IsZombie()) {
1177 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): file not found -> " << prwConfigFile.data() <<
" ! Impossible to autoconfigure PRW. Aborting." );
1178 if ( (!standard_like) && (!RPVLLmode) )
1179 ATH_MSG_WARNING(
"Running with non-standard r-tag (" <<
amiTag.data() <<
"), but RPVLLmode not set. Perhaps you want to set \"PRW.autoconfigPRWRPVmode: 1\" in the config?");
1180 return StatusCode::FAILURE;
1183 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): configuring PRW tool using " << prwConfigFile.data() );
1186 return StatusCode::SUCCESS;
◆ beginEvent()
StatusCode asg::AsgMetadataTool::beginEvent |
( |
| ) |
|
|
protectedvirtualinherited |
Function called when a new events is loaded.
Dummy implementation that can be overridden by the derived tool.
Reimplemented in AsgElectronEfficiencyCorrectionTool, TrigConf::xAODConfigTool, TauAnalysisTools::TauSelectionTool, TauAnalysisTools::DiTauSelectionTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, Trig::TrigDecisionTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, Trig::TrigConfBunchCrossingTool, xAODMaker::TriggerMenuMetaDataTool, and Trig::xAODBunchCrossingTool.
Definition at line 196 of file AsgMetadataTool.cxx.
199 return StatusCode::SUCCESS;
◆ beginInputFile()
StatusCode asg::AsgMetadataTool::beginInputFile |
( |
| ) |
|
|
protectedvirtualinherited |
Function called when a new input file is opened.
Dummy implementation that can be overridden by the derived tool.
Reimplemented in AsgElectronEfficiencyCorrectionTool, TrigConf::xAODConfigTool, PMGTools::PMGTruthWeightTool, BookkeeperTool, xAODMaker::FileMetaDataTool, BookkeeperDumperTool, Trig::TrigDecisionTool, xAODMaker::TriggerMenuMetaDataTool, xAODMaker::TruthMetaDataTool, Trig::xAODBunchCrossingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, and TauAnalysisTools::TauSmearingTool.
Definition at line 180 of file AsgMetadataTool.cxx.
183 return StatusCode::SUCCESS;
◆ BtagSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 785 of file Jets.cxx.
792 if ( std::abs(
jet->eta()) > 2.5 ) {
793 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for jet with |eta|>2.5 (jet eta=" <<
jet->eta() <<
"), jet will be skipped");
794 }
else if (
jet->pt() < 20
e3 ){
795 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for jet with invalid pt (jet pt=" <<
jet->pt() <<
"), jet will be skipped");
800 if (!
jet->getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
811 ATH_MSG_ERROR(
"Failed to retrieve SF for b-tagged jets in SUSYTools_xAOD::BtagSF" );
814 ATH_MSG_VERBOSE(
"No valid SF for b-tagged jets in SUSYTools_xAOD::BtagSF" );
817 ATH_MSG_VERBOSE(
"Retrieve SF for b-tagged jets in SUSYTools_xAOD::BtagSF with value " <<
sf );
825 ATH_MSG_ERROR(
"Failed to retrieve SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF" );
828 ATH_MSG_VERBOSE(
"No valid inefficiency SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF" );
831 ATH_MSG_VERBOSE(
"Retrieve SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF with value " <<
sf );
836 dec_effscalefact(*
jet) =
sf;
838 if( acc_signal(*
jet) && acc_passOR(*
jet) ) totalSF *=
sf;
◆ BtagSF_trkJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 866 of file Jets.cxx.
869 for (
const xAOD::Jet* trkjet : *trkjets ) {
873 if ( std::abs(trkjet->eta()) > 2.5 ) {
874 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for trkjet with |eta|>2.5 (trkjet eta=" << trkjet->eta() <<
"), trkjet will be skipped");
875 }
else if ( trkjet->pt() < 10
e3 ){
876 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for trkjet with invalid pt (trkjet pt=" << trkjet->pt() <<
"), jet will be skipped");
881 if (!trkjet->getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
884 ATH_MSG_VERBOSE(
"This jet is " << (acc_bjet(*trkjet) ?
"" :
"not ") <<
"b-tagged.");
887 if ( acc_bjet(*trkjet) ) {
892 ATH_MSG_ERROR(
"Failed to retrieve SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
895 ATH_MSG_VERBOSE(
"No valid SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
898 ATH_MSG_VERBOSE(
"Retrieve SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet with value " <<
sf );
906 ATH_MSG_ERROR(
"Failed to retrieve SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
909 ATH_MSG_VERBOSE(
"No valid inefficiency SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
912 ATH_MSG_VERBOSE(
"Retrieve SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet with value " <<
sf );
917 dec_effscalefact(*trkjet) =
sf;
919 if( acc_signal(*trkjet) ) totalSF *=
sf;
◆ BtagSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 846 of file Jets.cxx.
852 if ( ret != StatusCode::SUCCESS) {
853 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool for systematic var. " << systConfig.
name() );
859 if ( ret != StatusCode::SUCCESS) {
860 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool for systematic var. " << systConfig.
name() );
◆ BtagSFsys_trkJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 927 of file Jets.cxx.
933 if ( ret != StatusCode::SUCCESS) {
934 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool (track jets) for systematic var. " << systConfig.
name() );
940 if ( ret != StatusCode::SUCCESS) {
941 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool (track jets) for systematic var. " << systConfig.
name() );
◆ check_isOption()
bool ST::SUSYObjDef_xAOD::check_isOption |
( |
const std::string & |
wp, |
|
|
const std::vector< std::string > & |
list |
|
) |
| const |
|
protected |
◆ check_isTighter()
bool ST::SUSYObjDef_xAOD::check_isTighter |
( |
const std::string & |
wp1, |
|
|
const std::string & |
wp, |
|
|
const std::vector< std::string > & |
list |
|
) |
| const |
|
protected |
◆ configFromFile() [1/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
bool & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
bool |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1240 of file SUSYObjDef_xAOD.cxx.
1244 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1245 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1248 property = rEnv.GetValue(propname.c_str(),
static_cast<int>(defaultValue));
1249 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1251 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [2/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
double & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
double |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1255 of file SUSYObjDef_xAOD.cxx.
1259 if (property > -90.) {
1260 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1261 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1264 property = rEnv.GetValue(propname.c_str(), defaultValue);
1265 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1267 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [3/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
int & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
int |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1271 of file SUSYObjDef_xAOD.cxx.
1275 if (property > -90){
1276 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1277 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1280 property = rEnv.GetValue(propname.c_str(), defaultValue);
1281 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1283 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [4/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
std::string & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
const std::string & |
defaultValue, |
|
|
bool |
allowEmpty = false |
|
) |
| |
|
protected |
Definition at line 1287 of file SUSYObjDef_xAOD.cxx.
1291 if (!property.empty()){
1292 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1293 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1296 property = rEnv.GetValue(propname.c_str(), defaultValue.c_str());
1297 if (property.empty() && !allowEmpty) {
1298 ATH_MSG_FATAL(
"Read empty string property from text file (property name: " << propname <<
")");
1302 std::string tmp_prop =
property.substr(0, property.find(
'#', 0));
1303 property = TString(tmp_prop).ReplaceAll(
" ",
"").Data();
1306 if (property==
"None" || property==
"NONE" || property==
"none") {
1307 ATH_MSG_VERBOSE(
"Property \"" << propname <<
"\" being set to empty string due to specification of \"" << property <<
"\"" );
1311 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1313 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ currentSystematic()
◆ currentSystematicIsNominal()
bool ST::SUSYObjDef_xAOD::currentSystematicIsNominal |
( |
| ) |
const |
◆ currentSystematicIsVariation()
bool ST::SUSYObjDef_xAOD::currentSystematicIsVariation |
( |
| ) |
const |
◆ currentSystematicIsWeight()
bool ST::SUSYObjDef_xAOD::currentSystematicIsWeight |
( |
| ) |
const |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
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.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
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.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
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.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
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.
◆ declareProperty() [6/6]
◆ detStore()
◆ EG_WP()
std::string ST::SUSYObjDef_xAOD::EG_WP |
( |
const std::string & |
wp | ) |
const |
|
protected |
Definition at line 1209 of file SUSYObjDef_xAOD.cxx.
1212 TString
copy = TString(
wp).Copy().ReplaceAll(
"AndBLayer",
"BL").ReplaceAll(
"LLH",
"LHElectron");
1214 if (
wp.find(
"DNNnoCF") != std::string::npos)
1215 copy.ReplaceAll(
"DNNnoCF",
"DNNnoCFElectron");
1216 else if (
wp.find(
"DNN") != std::string::npos)
1217 copy.ReplaceAll(
"DNN",
"DNNElectron");
◆ emulateHLT()
bool ST::SUSYObjDef_xAOD::emulateHLT |
( |
const std::string & |
triggerName | ) |
const |
|
private |
Definition at line 106 of file Trigger.cxx.
109 auto funcItr = m_metTriggerFuncs.find(triggerName);
110 if (funcItr != m_metTriggerFuncs.end() )
111 return funcItr->second();
114 if (triggerName.substr(0,6) !=
"HLT_xe") {
115 ATH_MSG_ERROR(
"Requested trigger " << triggerName <<
" isn't a MET trigger! (HLT MET items should begin with 'HLT_xe'). Will return false." );
120 std::vector<std::pair<int, std::string> > hypos;
121 std::string temp(triggerName);
124 auto pos = temp.find(
"_AND_");
125 std::string itemName = temp.substr(0,
pos);
127 if (
pos == std::string::npos)
130 temp = temp.substr(
pos + 5);
132 std::regex expr(
"HLT_xe([[:digit:]]+)_?(mht|pufit|pueta|tc_lcw|)_?(?:L1XE([[:digit:]]+)|)");
134 if (!std::regex_match(itemName, sm, expr) ) {
135 ATH_MSG_WARNING(
"Regex reading for item " << itemName <<
" (" << triggerName <<
") failed! Will be ignored!" );
139 ATH_MSG_WARNING(
"Regex failed to capture the right groups for item " << itemName <<
" (" << triggerName <<
") failed! Will be ignored!" );
140 for (
unsigned int ii = 0; ii < sm.size(); ++ii) {
146 std::string algKey = sm[2];
147 std::string metContBaseName =
"HLT_xAOD__TrigMissingETContainer_TrigEFMissingET";
148 if (algKey.empty()) hypos.push_back(std::make_pair(
threshold, metContBaseName) );
149 else if (algKey ==
"mht") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_mht") );
150 else if (algKey ==
"pufit") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_topocl_PUC") );
151 else if (algKey ==
"pueta") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_topocl_PS") );
152 else if (algKey ==
"tc_lcw") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"topocl") );
154 ATH_MSG_DEBUG(
"Container: " << hypos.back().second <<
", Threshold: " << hypos.back().first );
156 if (sm[3] !=
"" && sm[3] !=
"50") {
157 ATH_MSG_WARNING(
"The trigger requires a different L1 item to L1_XE50! This currently isn't allowed for in the code so the emulation will be slightly wrong" );
161 while (!temp.empty());
165 std::function<
bool()> lambda;
166 bool hasRequired =
true;
167 if (hypos.empty()) lambda = [] () {
return false;};
169 for (
const auto& pair : hypos) {
171 auto lambda_hypo = [
this, pair] () {
174 if (cont->empty())
return false;
175 float ex = cont->front()->ex() * 0.001;
176 float ey = cont->front()->ey() * 0.001;
177 float met = std::sqrt(ex*ex + ey*ey);
178 return met > pair.first;
186 lambda = [lambda, lambda_hypo] () {
187 return lambda() && lambda_hypo();
191 lambda = lambda_hypo;
201 m_metTriggerFuncs[triggerName] = lambda;
202 return m_metTriggerFuncs.at(triggerName)();
205 std::vector<std::string> replacementTriggers({
"HLT_xe110_mht_L1XE50",
"HLT_xe100_mht_L1XE50",
"HLT_xe90_mht_L1XE50",
"HLT_xe70_mht"});
206 for (
const std::string& trigName : replacementTriggers) {
208 ATH_MSG_WARNING(
"Trigger " << triggerName <<
" not available and direct emulation impossible! Will use " << trigName <<
" instead!");
209 m_metTriggerFuncs[triggerName] = [
this, trigName] () {
212 return m_metTriggerFuncs.at(triggerName)();
215 ATH_MSG_ERROR(
"Cannot find the trigger in the menu, direct emulation is impossible and no replacement triggers are available! Will return false" );
216 m_metTriggerFuncs.at(triggerName) = [] () {
return false;};
217 return m_metTriggerFuncs.at(triggerName)();
◆ endInputFile()
StatusCode asg::AsgMetadataTool::endInputFile |
( |
| ) |
|
|
protectedvirtualinherited |
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
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
◆ FillElectron()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 221 of file Electrons.cxx.
227 dec_baseline(
input) =
false;
228 dec_selected(
input) = 0;
229 dec_signal(
input) =
false;
230 dec_isol(
input) =
false;
231 dec_isolHighPt(
input) =
false;
232 dec_passSignalID(
input) =
false;
233 dec_passChID(
input) =
false;
234 dec_ecisBDT(
input) = -999.;
241 ATH_MSG_DEBUG(
"No primary track particle for this electron. Skipping.");
242 return StatusCode::SUCCESS;
244 double primvertex_z =
pv ?
pv->z() : 0;
245 double el_z0 =
track->z0() +
track->vz() - primvertex_z;
246 dec_z0sinTheta(
input) = el_z0 * TMath::Sin(
input.p4().Theta());
252 float d0sigError = -99.;
253 ATH_MSG_WARNING(
"FillElectron : Exception catched from d0significance() calculation. Setting dummy decoration d0sig=" << d0sigError );
254 dec_d0sig(
input) = d0sigError;
258 if (
input.pt() < 4
e3 )
return StatusCode::SUCCESS;
259 if ( !
input.caloCluster() ) {
ATH_MSG_WARNING(
"FillElectron: no caloCluster found: " <<
input.caloCluster() );
return StatusCode::SUCCESS; }
265 unsigned char el_nPixHits(0), el_nSCTHits(0);
278 ATH_MSG_INFO(
"ELECTRON nPixHits: " <<
static_cast<int>(el_nPixHits));
279 ATH_MSG_INFO(
"ELECTRON nSCTHits: " <<
static_cast<int>(el_nSCTHits));
280 ATH_MSG_INFO(
"ELECTRON deadHVTools: " <<
static_cast<bool>(pass_deadHVTool));
283 if (!pass_deadHVTool)
return StatusCode::SUCCESS;
288 return StatusCode::FAILURE;
291 bool passBaseID =
false;
298 ATH_MSG_VERBOSE (
"DFCommonElectronsLHxxx variables are not found. Calculating the ID from LH tool..");
309 if (std::abs(
input.caloCluster()->etaBE(2)) >= etacut)
return StatusCode::SUCCESS;
312 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
313 return StatusCode::SUCCESS;
319 ATH_MSG_ERROR(
"FillElectron: EgammaCalibTool applyCorrection failed ");
322 ATH_MSG_ERROR(
"FillElectron: IsolationCorrectionTool applyCorrection failed");
326 if (
input.pt() < etcut)
return StatusCode::SUCCESS;
334 dec_baseline(
input) =
true;
335 dec_selected(
input) = 2;
342 if (acc_passECIDS.isAvailable(
input)) {
351 dec_passChID(
input) =
true;
356 return StatusCode::SUCCESS;
◆ FillJet()
StatusCode ST::SUSYObjDef_xAOD::FillJet |
( |
xAOD::Jet & |
input, |
|
|
const bool |
doCalib = true , |
|
|
bool |
isFat = false , |
|
|
bool |
doLargeRdecorations = false |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 379 of file Jets.cxx.
398 dec_bad(
input) =
false;
399 dec_signal(
input) =
false;
400 dec_bjet_loose(
input) =
false;
401 dec_effscalefact(
input) = 1.;
402 dec_passOR(
input) =
true;
403 dec_bjet_jetunc(
input) =
false;
404 dec_btag_weight(
input) = -999.;
406 dec_wtagged(
input) = -1;
407 dec_ztagged(
input) = -1;
408 dec_toptagged(
input) = -1;
409 if (doLargeRdecorations) {
417 if ( !acc_wValidKinRange(
input) ) {
418 ATH_MSG_VERBOSE(
"Large-R W candidate jet outside of recommended tagging range. Will set score to 0.");
419 dec_wtagged(
input) = 0;
425 if ( !acc_zValidKinRange(
input) ) {
426 ATH_MSG_VERBOSE(
"Large-R Z candidate jet outside of recommended tagging range. Will set score to 0.");
427 dec_ztagged(
input) = 0;
433 if ( !acc_topValidKinRange(
input) ) {
434 ATH_MSG_VERBOSE(
"Large-R Top candidate jet outside of recommended tagging range. Will set score to 0.");
435 dec_toptagged(
input) = 0;
437 else dec_toptagged(
input) = acc_toptagged(
input);
448 ATH_MSG_ERROR(
"Failed to apply largeR W-tag jet scale uncertainties.");
449 return StatusCode::FAILURE;
452 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR W-tag jet scale uncertainties. ");
458 ATH_MSG_DEBUG(
"No valid large-R W-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
465 ATH_MSG_ERROR(
"Failed to apply largeR Z-tag jet scale uncertainties.");
466 return StatusCode::FAILURE;
469 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR Z-tag jet scale uncertainties. ");
475 ATH_MSG_DEBUG(
"No valid large-R Z-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
482 ATH_MSG_ERROR(
"Failed to apply largeR Top-tag jet scale uncertainties.");
483 return StatusCode::FAILURE;
486 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR Top-tag jet scale uncertainties. ");
492 ATH_MSG_DEBUG(
"No valid large-R Top-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
499 ATH_MSG_ERROR(
"Failed to apply largeR jet scale uncertainties.");
500 return StatusCode::FAILURE;
503 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR jet scale uncertainties. ");
509 ATH_MSG_DEBUG(
"No valid fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
513 return StatusCode::SUCCESS;
519 dec_passOR(
input) =
true;
520 dec_bjet_jetunc(
input) =
false;
569 dec_bad(
input) =
false;
570 dec_signal_less_JVT(
input) =
false;
571 dec_signal(
input) =
false;
572 dec_bjet_loose(
input) =
false;
573 dec_effscalefact(
input) = 1.;
576 if (acc_baseline(
input) ){
577 if( acc_passJvt(
input) ) dec_selected(
input) = 2;
578 else dec_selected(
input) = 1;
581 dec_selected(
input) = 0;
600 return StatusCode::SUCCESS;
◆ FillMuon()
StatusCode ST::SUSYObjDef_xAOD::FillMuon |
( |
xAOD::Muon & |
input, |
|
|
const float |
ptcut, |
|
|
const float |
etacut |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 205 of file Muons.cxx.
209 dec_baseline(
input) =
false;
210 dec_selected(
input) = 0;
211 dec_signal(
input) =
false;
212 dec_isol(
input) =
false;
213 dec_isolHighPt(
input) =
false;
214 dec_passedHighPtCuts(
input) =
false;
215 dec_passSignalID(
input) =
false;
218 dec_DFCommonJetDr(
input) = -2.0;
219 }
else if (!acc_DFCommonJetDr.isAvailable(
input)) {
220 dec_dRJet(
input) = -2.0;
224 if (
input.pt() < 3
e3 )
return StatusCode::SUCCESS;
241 double primvertex_z =
pv ?
pv->z() : 0;
244 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
245 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
246 if (!
track)
return StatusCode::SUCCESS;
254 dec_z0sinTheta(
input) = (
track->z0() +
track->vz() - primvertex_z) * TMath::Sin(
input.p4().Theta());
263 dec_d0sig(
input) = -99.;
266 float d0sigError = -99.;
267 ATH_MSG_WARNING(
"FillMuon : Exception caught from d0significance() calculation. Setting dummy decoration d0sig=" << d0sigError );
268 dec_d0sig(
input) = d0sigError;
275 unsigned char nBLHits(0), nPixHits(0), nPixelDeadSensors(0), nPixHoles(0),
298 ATH_MSG_INFO(
"MUON bHit: " <<
static_cast<int>( nBLHits ));
299 ATH_MSG_INFO(
"MUON pHit: " <<
static_cast<int>( nPixHits ));
300 ATH_MSG_INFO(
"MUON pDead:" <<
static_cast<int>( nPixelDeadSensors ));
301 ATH_MSG_INFO(
"MUON pHole:" <<
static_cast<int>( nPixHoles ));
303 ATH_MSG_INFO(
"MUON sDead:" <<
static_cast<int>( nSCTDeadSensors ));
306 ATH_MSG_INFO(
"MUON tOut: " <<
static_cast<int>( nTRTOutliers ));
309 input.trackParticle( xAOD::Muon::InnerDetectorTrackParticle );
320 if (
input.pt() <=
ptcut || std::abs(
input.eta()) >= etacut)
return StatusCode::SUCCESS;
328 dec_baseline(
input) =
true;
329 dec_selected(
input) = 2;
337 return StatusCode::SUCCESS;
◆ FillPhoton()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 78 of file Photons.cxx.
82 if ( !
input.caloCluster() ) {
84 return StatusCode::SUCCESS;
98 ATH_MSG_INFO(
"PHOTON deadHVTools: " << pass_deadHVTool );
101 dec_baseline(
input) =
false;
102 dec_selected(
input) = 0;
103 dec_isol(
input) =
false;
106 if (!pass_deadHVTool)
return StatusCode::SUCCESS;
110 return StatusCode::SUCCESS;
113 ATH_MSG_ERROR(
"FillPhoton: EgammaCalibTool applyCorrection failed");
116 ATH_MSG_ERROR(
"FillPhoton: IsolationCorrectionTool applyCorrection failed");
120 if (
input.pt() <
ptcut || std::abs(
input.caloCluster()->etaBE(2)) >= etacut)
return StatusCode::SUCCESS;
123 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
124 return StatusCode::SUCCESS;
130 return StatusCode::SUCCESS;
133 bool passPhCleaning =
false;
134 if (acc_passPhCleaning.isAvailable(
input) && acc_passPhCleaningNoTime.isAvailable(
input)) {
141 if (!passPhCleaning)
return StatusCode::SUCCESS;
144 bool passBaseID =
false;
150 if (!passBaseID)
return StatusCode::SUCCESS;
155 dec_baseline(
input) =
true;
156 dec_selected(
input) = 2;
160 return StatusCode::SUCCESS;
◆ FillTau()
StatusCode ST::SUSYObjDef_xAOD::FillTau |
( |
xAOD::TauJet & |
input | ) |
|
|
finaloverridevirtual |
◆ FillTrackJet()
StatusCode ST::SUSYObjDef_xAOD::FillTrackJet |
( |
xAOD::Jet & |
input | ) |
|
|
finaloverridevirtual |
◆ FindSusyHardProc() [1/2]
bool ST::SUSYObjDef_xAOD::FindSusyHardProc |
( |
const xAOD::TruthEvent * |
truthE, |
|
|
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| |
|
static |
Definition at line 231 of file Truth.cxx.
245 if ((
tp->absPdgId() > 1000000 &&
tp->absPdgId() < 1000007) ||
246 (
tp->absPdgId() > 1000010 &&
tp->absPdgId() < 1000017) ||
247 (
tp->absPdgId() > 2000000 &&
tp->absPdgId() < 2000007) ||
248 (
tp->absPdgId() > 2000010 &&
tp->absPdgId() < 2000017) ||
249 (
tp->absPdgId() > 1000020 &&
tp->absPdgId() < 1000040)) {
251 if (
tp->nParents() != 0) {
252 if (
tp->parent(0)->absPdgId() < 1000000) {
255 }
else if (!secondsp) {
279 if (!firstsp && !secondsp)
return true;
281 if (firstsp->nChildren() == 1) {
291 if (secondsp->nChildren() == 1) {
301 if (firstsp->absPdgId() > 1000000) pdgid1 = firstsp->pdgId();
302 if (secondsp->absPdgId() > 1000000) pdgid2 = secondsp->pdgId();
◆ FindSusyHardProc() [2/2]
Definition at line 125 of file Truth.cxx.
132 if(!truthP || truthP->
size()<2){
137 pdgid1 = (*truthP)[0]->pdgId();
138 pdgid2 = (*truthP)[1]->pdgId();
146 if (!truthP || truthP->
empty()) {
152 if ((
tp->absPdgId() > 1000000 &&
tp->absPdgId() < 1000007) ||
153 (
tp->absPdgId() > 1000010 &&
tp->absPdgId() < 1000017) ||
154 (
tp->absPdgId() > 2000000 &&
tp->absPdgId() < 2000007) ||
155 (
tp->absPdgId() > 2000010 &&
tp->absPdgId() < 2000017) ||
156 (
tp->absPdgId() > 1000020 &&
tp->absPdgId() < 1000040)) {
158 if (
tp->nParents() != 0) {
159 if (
tp->parent(0)->absPdgId() < 1000000) {
162 }
else if (!secondsp) {
186 if (!firstsp && !secondsp)
return true;
188 if (firstsp->nChildren() == 1) {
197 if (secondsp->nChildren() == 1) {
206 if (firstsp->absPdgId() > 1000000) pdgid1 = firstsp->pdgId();
207 if (secondsp->absPdgId() > 1000000) pdgid2 = secondsp->pdgId();
◆ FindSusyHP() [1/3]
StatusCode ST::SUSYObjDef_xAOD::FindSusyHP |
( |
const xAOD::TruthEvent * |
truthE, |
|
|
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 214 of file Truth.cxx.
218 return StatusCode::FAILURE;
222 return StatusCode::FAILURE;
224 if (pdgid1 == 0 || pdgid2 == 0) {
227 return StatusCode::SUCCESS;
◆ FindSusyHP() [2/3]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 105 of file Truth.cxx.
108 return StatusCode::FAILURE;
110 if (truthP->
empty()) {
112 return StatusCode::FAILURE;
116 return StatusCode::FAILURE;
118 if (pdgid1 == 0 || pdgid2 == 0) {
121 return StatusCode::SUCCESS;
◆ FindSusyHP() [3/3]
StatusCode ST::SUSYObjDef_xAOD::FindSusyHP |
( |
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| const |
Definition at line 75 of file Truth.cxx.
78 bool isTruth3 =
false;
79 std::string key_T1 =
"TruthParticles";
80 std::string key_T3 =
"TruthBSM";
82 ATH_MSG_DEBUG(
"Contains " << key_T1 <<
": " << ((
evtStore()->contains<xAOD::TruthParticleContainer>( key_T1 ))?1:0));
83 ATH_MSG_DEBUG(
"Contains " << key_T3 <<
": " << ((
evtStore()->contains<xAOD::TruthParticleContainer>( key_T3 ))?1:0));
85 if(
evtStore()->contains<xAOD::TruthParticleContainer>( key_T1 )){
88 if (truthP->
empty()) {
ATH_MSG_WARNING(key_T1 <<
" is empty. Skipping FindSusyHP.");
return StatusCode::SUCCESS; }
90 else if(
evtStore()->contains<xAOD::TruthParticleContainer>( key_T3 )){
94 if (truthP->
empty()) {
ATH_MSG_WARNING(key_T3 <<
" is empty. Skipping FindSusyHP.");
return StatusCode::SUCCESS; }
97 ATH_MSG_WARNING(
"Neither " << key_T1 <<
" nor " << key_T3 <<
" are avaible. Skipping FindSusyHP.");
98 return StatusCode::SUCCESS;
◆ FJVT_SF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1019 of file Jets.cxx.
1027 if (acc_signal_less_JVT(*
jet) && acc_passOR(*
jet)) {
1028 fjvtjets.push_back(
jet);
1033 float current_sf = 0;
1037 if (acc_passFJvt(*
jet)) {
1051 ATH_MSG_VERBOSE(
"Skip SF application in SUSYTools_xAOD::FJVT_SF as jet outside validate range" );
1054 ATH_MSG_VERBOSE(
"Retrieve SF for jet in SUSYTools_xAOD::FJVT_SF with value " << current_sf );
1055 totalSF *= current_sf;
1060 ATH_MSG_VERBOSE(
"Retrieve total SF for jet container in SUSYTools_xAOD::FJVT_SF with value " << totalSF );
◆ FJVT_SFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1065 of file Jets.cxx.
1072 if ( ret != StatusCode::SUCCESS) {
1073 ATH_MSG_ERROR(
"Cannot configure fJvtEfficiencyTool for systematic var. " << systConfig.
name() );
1081 if ( ret != StatusCode::SUCCESS) {
1082 ATH_MSG_ERROR(
"Cannot configure fJvtEfficiencyTool for systematic var. " << systConfig.
name() );
◆ GetCorrectedActualInteractionsPerCrossing()
float ST::SUSYObjDef_xAOD::GetCorrectedActualInteractionsPerCrossing |
( |
bool |
includeDataSF = false | ) |
|
|
finaloverridevirtual |
◆ GetCorrectedAverageInteractionsPerCrossing()
float ST::SUSYObjDef_xAOD::GetCorrectedAverageInteractionsPerCrossing |
( |
bool |
includeDataSF = false | ) |
|
|
finaloverridevirtual |
◆ GetDataWeight()
float ST::SUSYObjDef_xAOD::GetDataWeight |
( |
const std::string & |
trig | ) |
|
|
finaloverridevirtual |
◆ GetElectrons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 118 of file Electrons.cxx.
122 return StatusCode::FAILURE;
126 auto outputCol = std::make_unique<xAOD::ElectronContainer>();
127 std::unique_ptr<xAOD::ElectronAuxContainer> outputAuxCol;
128 outputAuxCol = std::make_unique<xAOD::ElectronAuxContainer>();
129 outputCol->setStore(outputAuxCol.get());
132 if (
bool(
m_eleLRT) && !lrtelekey.empty() &&
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey)){
136 if (
evtStore()->contains<xAOD::ElectronContainer>(
"StdWithLRTElectrons")) {
137 ATH_MSG_DEBUG(
"Merged prompt/LRT container already created in TStore");
139 ATH_MSG_DEBUG(
"Creating merged prompt/LRT container in TStore");
146 auto filtered_electrons = std::make_unique<xAOD::ElectronContainer>();
147 std::unique_ptr<xAOD::ElectronAuxContainer> filtered_electrons_aux = std::make_unique<xAOD::ElectronAuxContainer>();
148 filtered_electrons->setStore(filtered_electrons_aux.get());
152 std::set<const xAOD::Electron *> ElectronsToRemove;
168 }
else if (!lrtelekey.empty()) {
169 if(
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey) ==
false &&
bool(
m_eleLRT) ==
true)
ATH_MSG_WARNING(
"prompt/LRT OR procedure attempted but " << lrtelekey <<
" not in ROOT file, check config!");
170 ATH_MSG_DEBUG(
"Not applying prompt/LRT electron OR procedure");
173 if (
m_isPHYSLITE && elekey.find(
"AnalysisElectrons")==std::string::npos){
174 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Electrons container to 'AnalysisElectrons'");
175 return StatusCode::FAILURE;
179 if (
bool(
m_eleLRT) &&
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey)){
186 if (containerToBeCopied !=
nullptr) {
198 copy = shallowcopy.first;
199 copyaux = shallowcopy.second;
204 ATH_MSG_DEBUG(
"Not retrieving electron collection, using existing one provided by user");
217 return StatusCode::SUCCESS;
◆ GetEleTriggerEfficiency()
double ST::SUSYObjDef_xAOD::GetEleTriggerEfficiency |
( |
const xAOD::Electron & |
el, |
|
|
const std::string & |
trigExpr = "SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0" |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 588 of file Electrons.cxx.
590 std::string single_str =
"SINGLE_E";
591 std::string single_str_2022 =
"2022_";
592 std::string dilep_str =
"DI_E";
593 std::string multi_str =
"MULTI_L";
598 if ( trigExpr.find(single_str) != std::string::npos || trigExpr.find(single_str_2022) != std::string::npos)
600 else if ( trigExpr.find(dilep_str) != std::string::npos )
601 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
602 else if ( trigExpr.find(multi_str) != std::string::npos )
603 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
605 ATH_MSG_ERROR(
"The trigger expression (" << trigExpr <<
") is not supported by the electron trigger efficiency!");
609 ATH_MSG_ERROR(
"Failed to retrieve signal electron trigger efficiency");
612 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron trigger efficiency");
◆ GetEleTriggerEfficiencySF()
double ST::SUSYObjDef_xAOD::GetEleTriggerEfficiencySF |
( |
const xAOD::Electron & |
el, |
|
|
const std::string & |
trigExpr = "SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0" |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 554 of file Electrons.cxx.
558 std::string single_str =
"SINGLE_E";
559 std::string single_str_2022 =
"2022_";
560 std::string dilep_str =
"DI_E";
561 std::string multi_str =
"MULTI_L";
564 if ( trigExpr.find(single_str) != std::string::npos || trigExpr.find(single_str_2022) != std::string::npos)
566 else if ( trigExpr.find(dilep_str) != std::string::npos )
567 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
568 else if ( trigExpr.find(multi_str) != std::string::npos )
569 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
571 ATH_MSG_ERROR(
"The trigger expression (" << trigExpr <<
") is not supported by the electron trigger SF!");
575 ATH_MSG_ERROR(
"Failed to retrieve signal electron trigger SF");
578 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron trigger SF");
◆ getElSFkeys()
std::vector< std::string > ST::SUSYObjDef_xAOD::getElSFkeys |
( |
const std::string & |
mapFile | ) |
const |
|
protected |
Definition at line 1221 of file SUSYObjDef_xAOD.cxx.
1223 if( mapFile.empty() )
1226 std::vector<std::string> theKeys;
1233 theKeys.push_back(
tokens.at(0));
◆ GetEventInfo()
◆ GetFatJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 238 of file Jets.cxx.
242 return StatusCode::FAILURE;
246 ATH_MSG_ERROR(
"JetFatCalibTool was not initialized for largeR jet!!");
247 return StatusCode::FAILURE;
250 std::string jetkey_tmp = jetkey;
251 if (jetkey.empty()) {
257 if (containerToBeCopied !=
nullptr) {
258 jets = containerToBeCopied;
266 copy = shallowcopy.first;
267 copyaux = shallowcopy.second;
270 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
273 ATH_MSG_DEBUG(
"Not retrieving jet collection, using existing one provided by user");
277 if(
jets->size()==0) {
279 return StatusCode::SUCCESS;
287 ATH_MSG_DEBUG(
"Checking if decorator for JetTruthLabelingTool is available:");
297 for (
const auto&
jet : *
copy) {
302 if ( acc_baseline(*
jet) ){
303 dec_selected(*
jet) = 1;
306 dec_selected(*
jet) = 0;
313 return StatusCode::SUCCESS;
◆ GetInDetLargeD0GSFTracks()
◆ GetInDetLargeD0Tracks()
◆ GetJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 74 of file Jets.cxx.
78 return StatusCode::FAILURE;
81 if (
m_isPHYSLITE && jetkey.find(
"AnalysisJets") == std::string::npos){
82 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Jets container to 'AnalysisJets'");
83 return StatusCode::FAILURE;
93 if (!jetkey.empty()) {
98 ATH_MSG_DEBUG(
"Key for retrieving jet collection: jetkey = " << jetkey_tmp);
102 if (containerToBeCopied !=
nullptr) {
103 jets = containerToBeCopied;
110 copy = shallowcopy.first;
111 copyaux = shallowcopy.second;
114 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
117 ATH_MSG_DEBUG(
"Not retrieving jet collecton, using existing one provided by user");
133 for (
const auto&
jet : *
copy) {
137 for (
const auto&
jet : *copy) {
140 dec_passJvt(*
jet) = acc_passFJvt(*
jet) && acc_passJvt(*
jet);
141 dec_fjvt(*
jet) = acc_fjvt(*
jet);
144 if ( acc_baseline(*
jet) ){
145 if( acc_passJvt(*
jet) ) dec_selected(*
jet) = 2;
146 else dec_selected(*
jet) = 1;
149 dec_selected(*
jet) = 0;
157 std::string auxname = copyaux->
name();
158 if (auxname.compare(
"UNKNOWN")==0) copyaux->
setName(std::string(
"STCalib" + jetkey_tmp +
m_currentSyst.
name() +
"AuxCopy").c_str());
162 return StatusCode::SUCCESS;
◆ GetJetsSyst()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 317 of file Jets.cxx.
321 return StatusCode::FAILURE;
324 std::string jetkey_tmp = jetkey;
325 if (jetkey.empty()) {
330 copy = shallowcopy.first;
331 copyaux = shallowcopy.second;
335 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
342 if (jetkey!=
"AnalysisJets"){
350 for (
const auto&
jet : *
copy) {
354 for (
const auto&
jet : *copy) {
357 dec_passJvt(*
jet) = acc_passFJvt(*
jet) && acc_passJvt(*
jet);
360 if ( acc_baseline(*
jet) ){
361 if( acc_passJvt(*
jet) ) dec_selected(*
jet) = 2;
362 else dec_selected(*
jet) = 1;
365 dec_selected(*
jet) = 0;
376 return StatusCode::SUCCESS;
◆ getKey()
Get the (hashed) key of an object that is in the event store.
This is a bit of a special one. StoreGateSvc
and xAOD::TEvent
both provide ways for getting the SG::sgkey_t
key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.
In order to allow tools to efficiently perform this operation, they can use this helper function.
- See also
- asg::AsgTool::getName
- Parameters
-
ptr | The bare pointer to the object that the event store should know about |
- Returns
- The hashed key of the object in the store. If not found, an invalid (zero) key.
Definition at line 119 of file AsgTool.cxx.
121 #ifdef XAOD_STANDALONE
127 return (
proxy ==
nullptr ? 0 :
proxy->sgkey() );
128 #endif // XAOD_STANDALONE
◆ getMCShowerType()
int ST::SUSYObjDef_xAOD::getMCShowerType |
( |
const std::string & |
sample_name = "" | ) |
const |
|
inlinefinaloverridevirtual |
◆ GetMET()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 23 of file MET.cxx.
33 return StatusCode::FAILURE;
39 return StatusCode::FAILURE;
44 return StatusCode::FAILURE;
49 std::string softTerm =
"SoftClus";
51 softTerm =
"PVSoftTrk";
52 }
else if (doJVTCut) {
53 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
56 metHelper.resetObjSelectionFlags();
68 if (acc_baseline(*
el)) {
72 if (ipart ==
el) {
veto =
true;
break;}
75 if (!
veto) metelectron.push_back(
el);
86 if (acc_baseline(*ph)) {
90 if (ipart == ph) {
veto =
true;
break;}
93 if (!
veto) metgamma.push_back(ph);
104 if (acc_baseline(*tau)) {
108 if (ipart == tau) {
veto =
true;
break;}
111 if (!
veto) mettau.push_back(tau);
123 if (acc_baseline(*
mu)) {
126 if (ipart ==
mu) {
veto =
true;
break;}
129 if (!
veto) metmuon.push_back(
mu);
136 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
137 return StatusCode::SUCCESS;
157 return StatusCode::SUCCESS;
◆ GetMETSig()
StatusCode ST::SUSYObjDef_xAOD::GetMETSig |
( |
xAOD::MissingETContainer & |
met, |
|
|
double & |
metSignificance, |
|
|
bool |
doTST = true , |
|
|
bool |
doJVTCut = true |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 240 of file MET.cxx.
244 std::string softTerm =
"SoftClus";
246 softTerm =
"PVSoftTrk";
247 }
else if (doJVTCut) {
248 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
257 return StatusCode::SUCCESS;
◆ GetMuons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 100 of file Muons.cxx.
104 return StatusCode::FAILURE;
108 auto outputCol = std::make_unique<xAOD::MuonContainer>();
109 std::unique_ptr<xAOD::MuonAuxContainer> outputAuxCol;
110 outputAuxCol = std::make_unique<xAOD::MuonAuxContainer>();
111 outputCol->setStore(outputAuxCol.get());
114 if (
bool(
m_muLRT) && !lrtmuonkey.empty() &&
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey)){
118 if (
evtStore()->contains<xAOD::MuonContainer>(
"StdWithLRTMuons")) {
119 ATH_MSG_DEBUG(
"Merged prompt/LRT container already created in TStore");
121 ATH_MSG_DEBUG(
"Creating merged prompt/LRT container in TStore");
128 auto filtered_muons = std::make_unique<xAOD::MuonContainer>();
129 std::unique_ptr<xAOD::MuonAuxContainer> filtered_muons_aux = std::make_unique<xAOD::MuonAuxContainer>();
130 filtered_muons->setStore(filtered_muons_aux.get());
134 std::vector<bool> writePromptMuon;
135 std::vector<bool> writeLRTMuon;
152 }
else if (!lrtmuonkey.empty()) {
153 if (
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey) ==
false &&
bool(
m_muLRT) ==
true)
ATH_MSG_WARNING(
"prompt/LRT OR procedure attempted but " << lrtmuonkey <<
" not in ROOT file, check config!");
157 if (
m_isPHYSLITE && muonkey.find(
"AnalysisMuons")==std::string::npos){
158 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Muons container to 'AnalysisMuons'");
159 return StatusCode::FAILURE;
163 if (
bool(
m_muLRT) &&
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey)){
170 if (containerToBeCopied !=
nullptr) {
172 muons = containerToBeCopied;
182 copy = shallowcopy.first;
183 copyaux = shallowcopy.second;
188 ATH_MSG_DEBUG(
"Not retrieving muon collection, using existing one provided by user");
202 return StatusCode::SUCCESS;
◆ GetMuonTriggerEfficiency()
double ST::SUSYObjDef_xAOD::GetMuonTriggerEfficiency |
( |
const xAOD::Muon & |
mu, |
|
|
const std::string & |
trigExpr, |
|
|
const bool |
isdata = false |
|
) |
| |
|
finaloverridevirtual |
◆ getName()
const std::string & asg::AsgTool::getName |
( |
const void * |
ptr | ) |
const |
|
inherited |
Get the name of an object that is / should be in the event store.
This is a bit of a special one. StoreGateSvc
and xAOD::TEvent
both provide ways for getting the std::string
name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.
In order to allow tools to efficiently perform this operation, they can use this helper function.
- See also
- asg::AsgTool::getKey
- Parameters
-
ptr | The bare pointer to the object that the event store should know about |
- Returns
- The string name of the object in the store. If not found, an empty string.
Definition at line 106 of file AsgTool.cxx.
108 #ifdef XAOD_STANDALONE
114 static const std::string
dummy =
"";
116 #endif // XAOD_STANDALONE
◆ GetPhotons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 33 of file Photons.cxx.
37 return StatusCode::FAILURE;
40 if (
m_isPHYSLITE && photonkey.find(
"AnalysisPhotons")==std::string::npos){
41 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Photons container to 'AnalysisPhotons'");
42 return StatusCode::FAILURE;
47 if (containerToBeCopied !=
nullptr) {
48 photons = containerToBeCopied;
54 copy = shallowcopy.first;
55 copyaux = shallowcopy.second;
58 ATH_MSG_WARNING(
"Failed to set original object links on " << photonkey);
61 ATH_MSG_DEBUG(
"Not retrieving photon collecton, using existing one provided by user");
74 return StatusCode::SUCCESS;
◆ GetPileupWeight()
float ST::SUSYObjDef_xAOD::GetPileupWeight |
( |
| ) |
|
|
finaloverridevirtual |
◆ GetPileupWeightHash()
ULong64_t ST::SUSYObjDef_xAOD::GetPileupWeightHash |
( |
| ) |
|
|
finaloverridevirtual |
◆ GetPileupWeightPrescaledTrigger()
float ST::SUSYObjDef_xAOD::GetPileupWeightPrescaledTrigger |
( |
const std::string & |
trigger_expr | ) |
|
|
finaloverridevirtual |
◆ GetPrimVtx()
◆ getProperty() [1/2]
template<typename T >
const T* ST::ISUSYObjDef_xAODTool::getProperty |
( |
const std::string & |
name | ) |
|
|
inlineinherited |
◆ getProperty() [2/2]
template<class T >
const T* asg::AsgTool::getProperty |
( |
const std::string & |
name | ) |
const |
|
inherited |
Get one of the tool's properties.
◆ GetRandomRunNumber()
unsigned int ST::SUSYObjDef_xAOD::GetRandomRunNumber |
( |
bool |
muDependentRRN = true | ) |
|
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2986 of file SUSYObjDef_xAOD.cxx.
2989 if (randomrunnumber.isAvailable(*(evtInfo)) && muDependentRRN) {
2990 return randomrunnumber(*(evtInfo));
2992 else if (!muDependentRRN) {
2995 ATH_MSG_ERROR (
"Failed to find RandomRunNumber decoration! You need to call ApplyPRWTool() beforehand!" );
◆ GetRunNumber()
unsigned int ST::SUSYObjDef_xAOD::GetRunNumber |
( |
| ) |
const |
|
finaloverridevirtual |
◆ getSherpaVjetsNjetsWeight() [1/2]
float ST::SUSYObjDef_xAOD::getSherpaVjetsNjetsWeight |
( |
| ) |
const |
|
finaloverridevirtual |
◆ getSherpaVjetsNjetsWeight() [2/2]
float ST::SUSYObjDef_xAOD::getSherpaVjetsNjetsWeight |
( |
const std::string & |
jetContainer | ) |
const |
|
finaloverridevirtual |
◆ GetSignalElecSF()
float ST::SUSYObjDef_xAOD::GetSignalElecSF |
( |
const xAOD::Electron & |
el, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
idSF = true , |
|
|
const bool |
triggerSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const std::string & |
trigExpr = "singleLepton" , |
|
|
const bool |
ecidsSF = false , |
|
|
const bool |
cidSF = false |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 418 of file Electrons.cxx.
428 ATH_MSG_ERROR(
"No signal electron ID or trigger scale factors provided for the selected working point!");
433 std::string singleLepStr =
"singleLepton";
434 std::string diLepStr =
"diLepton";
435 std::string multiLepStr =
"multiLepton";
448 ATH_MSG_ERROR(
"Failed to retrieve signal electron reco SF");
451 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron reco SF");
470 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron id SF");
479 std::vector<std::string> trigMChains={};
480 std::string theExpr (
"");
481 if(trigExpr==singleLepStr) {
490 ATH_MSG_WARNING(
"Only single lepton trigger SFs are supported in GetSignalElecSF(). Use GetTriggerGlobalEfficiencySF() for dilepton or multilepton triggers!");
496 if(!acc_trigmatched(
el)){
497 ATH_MSG_DEBUG(
"Electron was not matched to trigger " << theExpr <<
" - scale factor does not apply (year " << this->
treatAsYear() <<
") Returning 1." );
500 if (trigExpr==multiLepStr || trigExpr==diLepStr) {
501 ATH_MSG_WARNING(
"The dilepton or multilepton trigger SFs are not supported in GetSignalElecSF(). Use GetTriggerGlobalEfficiencySF()!");
526 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron iso SF");
534 if ( ecidsSF || cidSF ) {
544 dec_sfChIDEff(
el) = chf_sf;
549 dec_effscalefact(
el) =
sf;
◆ GetSignalMuonSF()
float ST::SUSYObjDef_xAOD::GetSignalMuonSF |
( |
const xAOD::Muon & |
mu, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const bool |
doBadMuonHP = true , |
|
|
const bool |
warnOVR = true |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 477 of file Muons.cxx.
484 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: Reco getEfficiencyScaleFactor out of validity range");
492 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: TTVA getEfficiencyScaleFactor out of validity range");
498 float sf_badHighPt(1.);
499 if(
m_muId == 4 && doBadMuonHP){
501 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: BadMuonHighPt getEfficiencyScaleFactor out of validity range");
513 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: high-pt Iso getEfficiencyScaleFactor out of validity range");
517 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: Iso getEfficiencyScaleFactor out of validity range");
525 dec_effscalefact(
mu) =
sf;
◆ GetSignalPhotonSF()
◆ GetSignalPhotonSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 244 of file Photons.cxx.
250 if (ret != StatusCode::SUCCESS) {
251 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
255 if (ret != StatusCode::SUCCESS) {
256 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
260 if (ret != StatusCode::SUCCESS) {
261 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
286 double sf_trigger = 1.;
296 if (ret != StatusCode::SUCCESS) {
297 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool back to default.");
301 if (ret != StatusCode::SUCCESS) {
302 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
306 if (ret != StatusCode::SUCCESS) {
307 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
312 dec_effscalefact(ph) =
sf;
◆ GetSignalTauSF()
double ST::SUSYObjDef_xAOD::GetSignalTauSF |
( |
const xAOD::TauJet & |
tau, |
|
|
const bool |
idSF = true , |
|
|
const bool |
triggerSF = true , |
|
|
const std::string & |
trigExpr = "tau25_medium1_tracktwo" |
|
) |
| |
|
finaloverridevirtual |
◆ GetSignalTauSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 159 of file Taus.cxx.
169 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() ); }
172 ret =
tool->applySystematicVariation(systConfig);
173 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name()); }
180 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool back to default"); }
184 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" back to default"); }
187 dec_effscalefact(tau) =
sf;
◆ GetSumOfWeights()
double ST::SUSYObjDef_xAOD::GetSumOfWeights |
( |
int |
channel | ) |
|
|
finaloverridevirtual |
◆ getSystInfo()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2531 of file SUSYObjDef_xAOD.cxx.
2534 sysInfo.affectsKinematics =
false;
2535 sysInfo.affectsWeights =
false;
2536 sysInfo.affectedWeights.clear();
2537 sysInfo.systset.insert(
sys);
2541 sysInfo.affectsWeights =
true;
2543 sysInfo.affectedWeights.insert(ST::Weights::Jet::JVT);
2549 sysInfo.affectsWeights =
true;
2551 sysInfo.affectedWeights.insert(ST::Weights::Jet::FJVT);
2555 if (
sys.name().find(
"__2") == std::string::npos) {
2558 sysInfo.affectsKinematics =
true;
2563 if (
sys.name().find(
"__2") != std::string::npos) {
2566 sysInfo.affectsKinematics =
true;
2574 sysInfo.affectsKinematics =
true;
2580 sysInfo.affectsKinematics =
true;
2586 sysInfo.affectsKinematics =
true;
2592 sysInfo.affectsKinematics =
true;
2599 sysInfo.affectsKinematics =
true;
2605 sysInfo.affectsWeights =
true;
2607 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2612 sysInfo.affectsWeights =
true;
2614 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2619 sysInfo.affectsWeights =
true;
2621 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2626 sysInfo.affectsWeights =
true;
2628 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2633 sysInfo.affectsWeights =
true;
2635 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2640 sysInfo.affectsWeights =
true;
2642 sysInfo.affectedWeights.insert(ST::Weights::Muon::Isolation);
2647 sysInfo.affectsWeights =
true;
2649 sysInfo.affectedWeights.insert(ST::Weights::Muon::Trigger);
2654 sysInfo.affectsWeights =
true;
2656 sysInfo.affectedWeights.insert(ST::Weights::Electron::Reconstruction);
2661 sysInfo.affectsWeights =
true;
2663 sysInfo.affectedWeights.insert(ST::Weights::Electron::ID);
2668 sysInfo.affectsWeights =
true;
2670 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2675 sysInfo.affectsWeights =
true;
2677 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2682 sysInfo.affectsWeights =
true;
2684 sysInfo.affectedWeights.insert(ST::Weights::Electron::Isolation);
2689 sysInfo.affectsWeights =
true;
2691 sysInfo.affectedWeights.insert(ST::Weights::Electron::Isolation);
2696 sysInfo.affectsKinematics =
true;
2697 if (
sys.basename().compare(0, 3,
"EG_") == 0) {
2699 }
else if (
sys.basename().compare(0, 3,
"PH_") == 0) {
2701 }
else if (
sys.basename().compare(0, 3,
"EL_") == 0) {
2708 sysInfo.affectsWeights =
false;
2709 sysInfo.affectsKinematics =
true;
2715 sysInfo.affectsWeights =
true;
2717 sysInfo.affectedWeights.insert(ST::Weights::Photon::Reconstruction);
2722 sysInfo.affectsWeights =
true;
2724 sysInfo.affectedWeights.insert(ST::Weights::Photon::Isolation);
2729 sysInfo.affectsWeights =
true;
2731 sysInfo.affectedWeights.insert(ST::Weights::Photon::Trigger);
2736 sysInfo.affectsWeights =
true;
2738 sysInfo.affectedWeights.insert(ST::Weights::Photon::Trigger);
2743 sysInfo.affectsWeights =
true;
2745 sysInfo.affectedWeights.insert(ST::Weights::Jet::Btag);
2750 sysInfo.affectsWeights =
true;
2752 sysInfo.affectedWeights.insert(ST::Weights::Jet::Btag_Track);
2757 sysInfo.affectsKinematics =
true;
2763 sysInfo.affectsWeights =
true;
2765 sysInfo.affectedWeights.insert(ST::Weights::Tau::Reconstruction);
2769 if(
tool->isAffectedBySystematic(
sys)) {
2770 sysInfo.affectsWeights =
true;
2772 sysInfo.affectedWeights.insert(ST::Weights::Tau::Trigger);
2778 sysInfo.affectsKinematics =
true;
2796 sysInfo.affectsWeights =
true;
2803 sysInfo.affectsKinematics =
true;
2808 std::string affectedType;
2809 switch (sysInfo.affectsType) {
2810 case Unknown : affectedType =
"UNKNOWN";
break;
2811 case Jet : affectedType =
"JET";
break;
2812 case Egamma : affectedType =
"EGAMMA";
break;
2813 case Electron : affectedType =
"ELECTRON";
break;
2814 case Photon : affectedType =
"PHOTON";
break;
2815 case Muon : affectedType =
"MUON";
break;
2816 case Tau : affectedType =
"TAU";
break;
2817 case BTag : affectedType =
"BTAG";
break;
2818 case MET_TST : affectedType =
"MET_TST";
break;
2819 case MET_CST : affectedType =
"MET_CST";
break;
2820 case MET_Track : affectedType =
"MET_Track";
break;
2821 case EventWeight : affectedType =
"EVENT WEIGHT";
break;
2822 case LRT_Object : affectedType =
"LRT_OBJECT";
break;
2826 << ( sysInfo.affectsWeights ?
"weights " :
"" )
2827 << ( sysInfo.affectsKinematics ?
"kinematics " :
"" )
2828 <<
"for " << affectedType );
◆ getSystInfoList()
std::vector< ST::SystInfo > ST::SUSYObjDef_xAOD::getSystInfoList |
( |
| ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2488 of file SUSYObjDef_xAOD.cxx.
2491 return vector<ST::SystInfo>();
2500 vector<SystInfo> sysInfoList;
2501 sysInfoList.reserve(recommendedSystematics.
size() * 2);
2505 infodef.affectsKinematics =
false;
2506 infodef.affectsWeights =
false;
2507 infodef.affectsType =
Unknown;
2508 infodef.affectedWeights.clear();
2509 sysInfoList.push_back(infodef);
2514 for (
const auto&
sys : systSet) {
2518 std::string JER_systematicName =
sys.name();
2519 JER_systematicName = std::regex_replace(JER_systematicName,
std::regex(
"__1"),
"__2");
2527 ATH_MSG_INFO(
"Returning list of " << sysInfoList.size() <<
" systematic variations");
◆ getTauConfig()
void ST::SUSYObjDef_xAOD::getTauConfig |
( |
const std::string & |
tauConfigPath, |
|
|
std::vector< float > & |
pT_window, |
|
|
std::vector< float > & |
eta_window, |
|
|
bool & |
eleOLR, |
|
|
bool & |
muVeto, |
|
|
bool & |
muOLR |
|
) |
| const |
|
protected |
Definition at line 1803 of file SUSYObjDef_xAOD.cxx.
1805 if(tauConfigPath.empty())
return;
1809 rEnv.ReadFile(
filename.c_str(), kEnvAll);
1811 std::vector<std::string>
cuts;
1812 if (rEnv.Defined(
"SelectionCuts")) {
1813 cuts =
split(rEnv.GetValue(
"SelectionCuts",
" "),
" ");
1815 auto *
l = rEnv.GetTable();
1816 for( Int_t
i = 0;
i <
l->GetEntries(); ++
i ) {
1817 cuts.push_back(
l->At(
i)->GetName() );
1826 static const std::string trueBool =
"TRUE";
1829 std::vector<std::string> v_pT_window;
1830 std::vector<std::string> v_eta_window;
1833 float pT_min = -99.0;
1834 float pT_max = -99.0;
1835 float eta_min = -99.0;
1836 float eta_max = -99.0;
1837 for (
const auto&
cut :
cuts) {
1838 if(
cut ==
"PtRegion") {
1839 v_pT_window =
split(rEnv.GetValue(
"PtRegion",
""),
";");
1842 std::back_inserter(pT_window),
1843 [](
const std::string&
s) {
return std::stof(
s); }
1845 }
else if (
cut ==
"PtMin") {
1846 pT_min = rEnv.GetValue(
"PtMin", NAN);
1847 }
else if (
cut ==
"PtMax") {
1848 pT_max = rEnv.GetValue(
"PtMax", NAN);
1849 }
else if (
cut ==
"AbsEtaRegion") {
1850 v_eta_window =
split(rEnv.GetValue(
"AbsEtaRegion",
""),
";");
1853 std::back_inserter(eta_window),
1854 [](
const std::string&
s) {
return std::stof(
s); }
1856 }
else if (
cut ==
"AbsEtaMin") {
1857 eta_min = rEnv.GetValue(
"AbsEtaMin", NAN);
1858 }
else if (
cut ==
"AbsEtaMax") {
1859 eta_max = rEnv.GetValue(
"AbsEtaMax", NAN);
1863 else if (
cut ==
"EleOLR"){
1864 eleOLR = (rEnv.GetValue(
"EleOLR",
"FALSE") == trueBool);
1866 else if (
cut ==
"MuonVeto"){
1867 muVeto = (rEnv.GetValue(
"MuonVeto",
"FALSE") == trueBool);
1869 else if (
cut ==
"MuonOLR"){
1870 muOLR = (rEnv.GetValue(
"MuonOLR",
"FALSE") == trueBool);
1874 if(pT_window.empty()) {
1875 if(pT_min == pT_min) {
1877 pT_window.push_back(pT_min);
1879 pT_window.push_back(-std::numeric_limits<float>::infinity());
1882 if(pT_max == pT_max) {
1884 pT_window.push_back(pT_max);
1886 pT_window.push_back(std::numeric_limits<float>::infinity());
1890 if(eta_window.empty()) {
1891 if(eta_min == eta_min) {
1893 eta_window.push_back(eta_min);
1895 eta_window.push_back(-std::numeric_limits<float>::infinity());
1898 if(eta_max == eta_max) {
1900 eta_window.push_back(eta_max);
1902 eta_window.push_back(std::numeric_limits<float>::infinity());
◆ GetTaus()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 30 of file Taus.cxx.
35 return StatusCode::FAILURE;
38 if (
m_isPHYSLITE && taukey.find(
"AnalysisTauJets")==std::string::npos){
39 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Taus container to 'AnalysisTauJets'");
40 return StatusCode::FAILURE;
45 if (containerToBeCopied !=
nullptr) {
46 taus = containerToBeCopied;
52 copy = shallowcopy.first;
53 copyaux = shallowcopy.second;
59 ATH_MSG_DEBUG(
"Not retrieving tau collecton, using existing one provided by user");
63 for (
const auto& tau : *
copy) {
71 return StatusCode::SUCCESS;
◆ GetTauTriggerEfficiencySF()
double ST::SUSYObjDef_xAOD::GetTauTriggerEfficiencySF |
( |
const xAOD::TauJet & |
tau, |
|
|
const std::string & |
trigExpr = "tau25_medium1_tracktwo" |
|
) |
| |
|
finaloverridevirtual |
◆ GetTotalElectronSF()
◆ GetTotalElectronSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 636 of file Electrons.cxx.
641 if (ret != StatusCode::SUCCESS) {
642 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
646 if (ret != StatusCode::SUCCESS) {
647 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) for systematic var. " << systConfig.
name() );
651 if (ret != StatusCode::SUCCESS) {
652 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
656 if (ret != StatusCode::SUCCESS) {
657 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
661 if (ret != StatusCode::SUCCESS) {
662 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) for systematic var. " << systConfig.
name() );
666 if (ret != StatusCode::SUCCESS) {
667 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEfficiencyCorrectionTool for systematic var. " << systConfig.
name() );
676 if (ret != StatusCode::SUCCESS) {
677 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) back to default.");
681 if (ret != StatusCode::SUCCESS) {
682 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) back to default.");
686 if (ret != StatusCode::SUCCESS) {
687 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) back to default.");
691 if (ret != StatusCode::SUCCESS) {
692 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) back to default.");
696 if (ret != StatusCode::SUCCESS) {
697 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) back to default.");
701 if (ret != StatusCode::SUCCESS) {
702 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEfficiencyCorrectionTool back to default.");
◆ GetTotalJetSF()
◆ GetTotalJetSFsys()
◆ GetTotalMuonSF()
double ST::SUSYObjDef_xAOD::GetTotalMuonSF |
( |
const xAOD::MuonContainer & |
muons, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const std::string & |
trigExpr = "HLT_mu20_iloose_L1MU15_OR_HLT_mu50" , |
|
|
const bool |
bmhptSF = true |
|
) |
| |
|
finaloverridevirtual |
◆ GetTotalMuonSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 619 of file Muons.cxx.
623 if ( ret != StatusCode::SUCCESS) {
624 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
628 if ( ret != StatusCode::SUCCESS) {
629 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors for systematic var. " << systConfig.
name() );
633 if ( ret != StatusCode::SUCCESS) {
634 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
638 if ( ret != StatusCode::SUCCESS) {
639 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors for systematic var. " << systConfig.
name() );
643 if ( ret != StatusCode::SUCCESS) {
644 ATH_MSG_ERROR(
"Cannot configure MuonHighPtIsolationScaleFactors for systematic var. " << systConfig.
name() );
648 if ( ret != StatusCode::SUCCESS) {
649 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors for systematic var. " << systConfig.
name() );
653 if (ret != StatusCode::SUCCESS) {
654 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
658 if (ret != StatusCode::SUCCESS) {
659 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
666 if ( ret != StatusCode::SUCCESS) {
667 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors back to default.");
671 if ( ret != StatusCode::SUCCESS) {
672 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors back to default.");
676 if ( ret != StatusCode::SUCCESS) {
677 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors back to default.");
681 if ( ret != StatusCode::SUCCESS) {
682 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors back to default.");
686 if ( ret != StatusCode::SUCCESS) {
687 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors back to default.");
691 if ( ret != StatusCode::SUCCESS) {
692 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors back to default.");
696 if (ret != StatusCode::SUCCESS) {
697 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) back to default.");
701 if (ret != StatusCode::SUCCESS) {
702 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) back to default.");
◆ GetTotalMuonTriggerSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 544 of file Muons.cxx.
546 if (trigExpr.empty() || sfmuons.
empty())
return 1.;
552 const char *
tmp = trigExpr.c_str();
553 while( (
tmp = strstr(
tmp,
"mu")) ){
558 bool isdimuon = (trigExpr.find(
"2mu") != std::string::npos);
559 bool isOR = (trigExpr.find(
"OR") != std::string::npos);
561 if((!isdimuon && mulegs<2) || (isdimuon && sfmuons.
size()==2) || (mulegs>=2 && isOR)){
569 else if(mulegs!=2 && isOR){
570 ATH_MSG_WARNING(
"SF for " << trigExpr <<
" are only supported for two muon events!");
574 std::string newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
"HLT_2",
"").Data();
577 if (isdimuon) { newtrigExpr +=
"_"+newtrigExpr; }
578 boost::replace_all(newtrigExpr,
"HLT_",
"");
579 boost::char_separator<char>
sep(
"_");
581 for (
const auto& mutrig : boost::tokenizer<boost::char_separator<char>>(newtrigExpr,
sep)) {
582 double dataFactor = 1.;
583 double mcFactor = 1.;
590 if( (1-mcFactor) > 0. )
591 trig_sf *= (1-dataFactor)/(1-mcFactor);
◆ GetTotalPhotonSF()
◆ GetTotalPhotonSFsys()
◆ GetTotalTauSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 227 of file Taus.cxx.
233 if (!acc_passOR.isAvailable(*tau)) {
234 ATH_MSG_WARNING(
"Tau does not have Overlap Removal decision set. You should only call GetTotalTauSF with taus that have been passed through OR. SF will NOT be applied!");
240 if (acc_signal(*tau) && acc_passOR(*tau)) {
◆ GetTotalTauSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 249 of file Taus.cxx.
254 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() ); }
257 ret =
tool->applySystematicVariation(systConfig);
258 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name()); }
265 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool back to default"); }
269 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" back to default"); }
◆ GetTrackJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 165 of file Jets.cxx.
169 return StatusCode::FAILURE;
173 ATH_MSG_DEBUG(
"Function argument jetkey (trkjet): " << jetkey);
179 if (!jetkey.empty()) {
184 ATH_MSG_DEBUG(
"Key for retrieving trkjet collection (as well as bjet info): jetkey = " << jetkey_tmp);
188 if (containerToBeCopied !=
nullptr) {
189 jets = containerToBeCopied;
196 copy = shallowcopy.first;
197 copyaux = shallowcopy.second;
200 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
203 ATH_MSG_DEBUG(
"Not retrieving jet collection, using existing one provided by user");
211 for (
const auto&
jet : *
copy) {
219 if (!acc_signal(*jet1))
continue;
222 if (!acc_baseline(*jet2))
continue;
225 const xAOD::Jet* to_check = acc_VRradius(*jet1) < acc_VRradius(*jet2) ? jet1 : jet2;
226 if( dr_jets < acc_VRradius(*to_check)) dec_passDRcut(*to_check) =
false;
235 return StatusCode::SUCCESS;
◆ GetTrackMET()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 161 of file MET.cxx.
167 return StatusCode::FAILURE;
173 return StatusCode::FAILURE;
178 return StatusCode::FAILURE;
183 metHelper.resetObjSelectionFlags();
190 if (acc_baseline(*
el)) metelectron.push_back(
el);
200 if (acc_baseline(*
mu)) metmuon.push_back(
mu);
206 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
207 return StatusCode::SUCCESS;
211 std::string softTerm =
"PVSoftTrk";
220 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (PVSoftTrk) systematics.");
226 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (RefJet) systematics.");
235 ATH_MSG_VERBOSE(
"Track MET: Missing Et (x,y): (" <<
met[
"Track"]->mpx() <<
"," <<
met[
"Track"]->mpy() <<
")");
237 return StatusCode::SUCCESS;
◆ GetTrigChainGroup()
◆ GetTriggerFeatures()
Trig::FeatureContainer ST::SUSYObjDef_xAOD::GetTriggerFeatures |
( |
const std::string & |
chainName = "EF_.*" , |
|
|
unsigned int |
condition = TrigDefs::Physics |
|
) |
| const |
◆ GetTriggerGlobalEfficiency() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 562 of file Trigger.cxx.
565 double trig_eff_data(1.);
567 if (trigExpr!=
"multiLepton" && trigExpr!=
"diLepton") {
568 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger efficiency");
572 std::vector<const xAOD::Electron*> elec_trig;
574 if (!acc_passOR(*
electron))
continue;
575 if (!acc_signal(*
electron))
continue;
579 std::vector<const xAOD::Muon*> muon_trig;
581 if (!acc_passOR(*
muon))
continue;
582 if (!acc_signal(*
muon))
continue;
583 muon_trig.push_back(
muon);
587 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton") {
589 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
591 }
else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton") {
593 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
598 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton" &&
matched) {
601 else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton" &&
matched) {
607 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger efficiency");
610 ATH_MSG_VERBOSE(
"OutOfValidityRange found for multi-lepton trigger efficiency");
616 if (
isData())
return trig_eff_data;
617 else return trig_eff;
◆ GetTriggerGlobalEfficiency() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 623 of file Trigger.cxx.
626 double trig_eff_data(1.);
628 if (trigExpr!=
"diPhoton") {
629 ATH_MSG_ERROR(
"Failed to retrieve diphoton trigger efficiency");
633 std::vector<const xAOD::Photon*> ph_trig;
635 if (!acc_passOR(*
photon))
continue;
636 if (!acc_signal(*
photon))
continue;
637 ph_trig.push_back(
photon);
641 if (ph_trig.size()>1) {
647 ATH_MSG_ERROR(
"Failed to retrieve diphoton trigger efficiency");
650 ATH_MSG_VERBOSE(
"OutOfValidityRange found for diphoton trigger efficiency");
656 if (
isData())
return trig_eff_data;
657 else return trig_eff;
◆ GetTriggerGlobalEfficiencySF() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 407 of file Trigger.cxx.
411 if (trigExpr!=
"multiLepton" && trigExpr!=
"diLepton") {
412 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger SF");
416 std::vector<const xAOD::Electron*> elec_trig;
418 if (!acc_passOR(*
electron))
continue;
419 if (!acc_signal(*
electron))
continue;
423 std::vector<const xAOD::Muon*> muon_trig;
425 if (!acc_passOR(*
muon))
continue;
426 if (!acc_signal(*
muon))
continue;
427 muon_trig.push_back(
muon);
431 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton") {
433 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
435 }
else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton") {
437 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
442 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton" &&
matched) {
445 else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton" &&
matched) {
451 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger SF");
454 ATH_MSG_VERBOSE(
"OutOfValidityRange found for multi-lepton trigger SF");
◆ GetTriggerGlobalEfficiencySF() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 505 of file Trigger.cxx.
509 if (trigExpr!=
"diPhoton") {
514 std::vector<const xAOD::Photon*> ph_trig;
516 if (!acc_passOR(*
photon))
continue;
517 if (!acc_signal(*
photon))
continue;
518 ph_trig.push_back(
photon);
522 if (ph_trig.size()>1) {
◆ GetTriggerGlobalEfficiencySFsys() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 463 of file Trigger.cxx.
468 if (trigExpr ==
"diLepton") {
470 if (ret != StatusCode::SUCCESS) {
471 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) for systematic var. " << systConfig.
name() );
475 if (trigExpr ==
"multiLepton") {
477 if (ret != StatusCode::SUCCESS) {
478 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) for systematic var. " << systConfig.
name() );
486 if (trigExpr ==
"diLepton") {
488 if (ret != StatusCode::SUCCESS) {
489 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) back to default.");
492 if (trigExpr ==
"multiLepton") {
494 if (ret != StatusCode::SUCCESS) {
495 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) back to default.");
◆ GetTriggerGlobalEfficiencySFsys() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 540 of file Trigger.cxx.
546 if (ret != StatusCode::SUCCESS) {
547 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) for systematic var. " << systConfig.
name() );
555 if (ret != StatusCode::SUCCESS) {
556 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) back to default.");
◆ GetTriggerOR()
std::vector< std::string > ST::SUSYObjDef_xAOD::GetTriggerOR |
( |
const std::string & |
trigExpr | ) |
const |
Definition at line 329 of file Trigger.cxx.
331 static const std::string delOR =
"_OR_";
332 std::vector<std::string> trigchains = {};
333 std::string newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
"||",delOR).Data();
334 newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
" ",
"").Data();
337 while ((
pos = newtrigExpr.find(delOR)) != std::string::npos) {
338 trigchains.push_back(
"HLT_"+newtrigExpr.substr(0,
pos) );
339 newtrigExpr.erase(0,
pos + delOR.length());
341 if(
pos==std::string::npos)
342 trigchains.push_back(
"HLT_"+newtrigExpr);
◆ GetTriggerTokens()
void ST::SUSYObjDef_xAOD::GetTriggerTokens |
( |
std::string |
trigExpr, |
|
|
std::vector< std::string > & |
v_trigs15_cache, |
|
|
std::vector< std::string > & |
v_trigs16_cache, |
|
|
std::vector< std::string > & |
v_trigs17_cache, |
|
|
std::vector< std::string > & |
v_trigs18_cache, |
|
|
std::vector< std::string > & |
v_trigs22_cache |
|
) |
| const |
Definition at line 347 of file Trigger.cxx.
351 static const std::string del15 =
"_2015_";
352 static const std::string del16 =
"_2016_";
353 static const std::string del17 =
"_2017_";
354 static const std::string del18 =
"_2018_";
355 static const std::string del22 =
"_2022_";
358 std::string token15, token16, token17, token18, token22;
361 if ( (
pos = trigExpr.find(del15)) != std::string::npos) {
362 trigExpr.erase(0,
pos + del15.length());
365 while ((
pos = trigExpr.find(del16)) != std::string::npos) {
366 token15 = trigExpr.substr(0,
pos);
367 token16 = trigExpr.erase(0,
pos + del16.length() + del17.length() - 1);
374 if ( (
pos = trigExpr.find(del22)) != std::string::npos) {
375 trigExpr.erase(0,
pos + del22.length());
380 if(token15.empty()) token15 = trigExpr;
381 if(token16.empty()) token16 = trigExpr;
382 if(token17.empty()) token17 = trigExpr;
383 if(token18.empty()) token18 = trigExpr;
386 if(token22.empty()) token22 = trigExpr;
◆ GetTrigPrescale()
float ST::SUSYObjDef_xAOD::GetTrigPrescale |
( |
const std::string & |
tr_item | ) |
const |
|
finaloverridevirtual |
◆ handle()
void asg::AsgMetadataTool::handle |
( |
const Incident & |
inc | ) |
|
|
protectedvirtualinherited |
Function receiving incidents from IncidentSvc/TEvent.
Reimplemented in Trig::TrigDecisionTool.
Definition at line 130 of file AsgMetadataTool.cxx.
136 if( inc.type() == IncidentType::BeginInputFile ) {
140 throw std::runtime_error(
"Couldn't call beginInputFile()" );
142 }
else if( inc.type() == IncidentType::EndInputFile ) {
145 throw std::runtime_error(
"Couldn't call endInputFile()" );
147 }
else if( inc.type() == IncidentType::BeginEvent ) {
155 throw std::runtime_error(
"Couldn't call beginInputFile()" );
160 throw std::runtime_error(
"Couldn't call beginEvent()" );
163 #ifdef XAOD_STANDALONE
164 }
else if( inc.type() == IncidentType::MetaDataStop ) {
167 throw std::runtime_error(
"Couldn't call metaDataStop()" );
170 #endif // XAOD_STANDALONE
172 ATH_MSG_WARNING(
"Unknown incident type received in AsgMetaDataTool: " << inc.type() );
◆ initialize()
StatusCode ST::SUSYObjDef_xAOD::initialize |
( |
| ) |
|
|
finaloverridevirtual |
Dummy implementation of the initialisation function.
It's here to allow the dual-use tools to skip defining an initialisation function. Since many are doing so...
Reimplemented from asg::AsgTool.
Definition at line 867 of file SUSYObjDef_xAOD.cxx.
870 ATH_MSG_ERROR(
"Initialising for a second time -- something is wrong!");
871 return StatusCode::FAILURE;
877 bool autoconf(
false);
878 #ifndef XAOD_STANDALONE // For now metadata is Athena-only
881 ATH_MSG_INFO(
"Autoconfiguring: dataSource, mcCampaign, isPHYSLITE");
882 std::string projectName =
"";
884 if ( projectName ==
"IS_SIMULATION" ) {
885 std::string simFlavour =
"";
887 TString
s(simFlavour);
s.ToUpper();
889 }
else if (projectName.compare(0, 4,
"data") == 0 ) {
892 ATH_MSG_ERROR(
"Failed to autoconfigure -- project_name matches neither IS_SIMULATION nor data!");
893 return StatusCode::FAILURE;
906 ATH_MSG_FATAL(
"You must set the DataSource property to Data, FullSim or AtlfastII !!");
907 if (autoconf)
ATH_MSG_FATAL(
"Autoconfiguration seems to have failed!");
910 return StatusCode::FAILURE;
922 return StatusCode::FAILURE;
957 m_eleIdDFName =
m_eleId.find(
"DNN") == std::string::npos ?
"DFCommonElectronsLH" :
"DFCommonElectronsDNN";
958 m_eleIdDFName += TString(
m_eleId).ReplaceAll(
"LooseAndBLayer",
"LooseBL").ReplaceAll(
"LLH",
"").ReplaceAll(
"DNNnoCF",
"").ReplaceAll(
"DNN",
"").Data();
959 if (
m_eleId.find(
"noCF") != std::string::npos)
993 return StatusCode::SUCCESS;
◆ inputHandles()
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.
◆ inputMetaStore()
AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::inputMetaStore |
( |
| ) |
const |
|
inherited |
Accessor for the input metadata store.
Definition at line 88 of file AsgMetadataTool.cxx.
90 #ifdef XAOD_STANDALONE
92 #else // XAOD_STANDALONE
94 #endif // XAOD_STANDALONE
◆ isAtlfast()
bool ST::SUSYObjDef_xAOD::isAtlfast |
( |
| ) |
const |
|
inlinefinaloverridevirtual |
◆ IsBadJet()
◆ IsBadMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 402 of file Muons.cxx.
405 dec_bad(
input) =
false;
408 dec_bad_highPt(
input) =
false;
411 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
412 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
413 if (!
track)
return false;
418 ATH_MSG_WARNING(
"Non-SAF muon without a track; cannot test IsBadMuon criteria");
425 bool isbad = Rerr > qopcut;
426 bool isbadHighPt = Rerr > qopcut;
434 dec_bad(
input) = isbad;
435 dec_bad_highPt(
input) = isbadHighPt;
◆ IsBJet()
◆ IsBJetContinuous()
int ST::SUSYObjDef_xAOD::IsBJetContinuous |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsBJetLoose()
bool ST::SUSYObjDef_xAOD::IsBJetLoose |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsCosmicMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 441 of file Muons.cxx.
443 dec_cosmic(
input) =
false;
446 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
447 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
449 ATH_MSG_VERBOSE(
"WARNING: SAF muon without CB track found. Not possible to check cosmic muon criteria");
456 ATH_MSG_WARNING(
"Non-SAF muon without primary track particle found. Not possible to check cosmic muon criteria");
461 double mu_d0 =
track->d0();
463 double primvertex_z =
pv ?
pv->z() : 0;
464 double mu_z0_exPV =
track->z0() +
track->vz() - primvertex_z;
466 bool isCosmicMuon = (std::abs(mu_z0_exPV) >= z0cut || std::abs(mu_d0) >= d0cut);
469 ATH_MSG_VERBOSE(
"COSMIC PV Z = " << primvertex_z <<
", track z0 = " << mu_z0_exPV <<
", track d0 = " << mu_d0);
472 dec_cosmic(
input) = isCosmicMuon;
◆ isData()
bool ST::SUSYObjDef_xAOD::isData |
( |
| ) |
const |
|
inlinefinaloverridevirtual |
◆ IsHighPtMuon()
◆ IsMETTrigPassed() [1/2]
bool ST::SUSYObjDef_xAOD::IsMETTrigPassed |
( |
const std::string & |
triggerName, |
|
|
bool |
j400_OR = false |
|
) |
| const |
|
finaloverridevirtual |
◆ IsMETTrigPassed() [2/2]
bool ST::SUSYObjDef_xAOD::IsMETTrigPassed |
( |
unsigned int |
runnumber = 0 , |
|
|
bool |
j400_OR = false |
|
) |
| const |
|
finaloverridevirtual |
◆ isNominal()
◆ IsPFlowCrackVetoCleaning()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 261 of file MET.cxx.
268 bool passPFlowCVCleaning =
true;
272 if (acc_passCrackVetoCleaning.isAvailable(*
el)) {
273 if (!acc_passCrackVetoCleaning(*
el)) {
274 passPFlowCVCleaning =
false;
278 ATH_MSG_WARNING(
"DFCommonCrackVetoCleaning variable is not available! Use p3830 onwards for PFlow jets!");
283 if (passPFlowCVCleaning &&
gamma) {
285 if (acc_passCrackVetoCleaning.isAvailable(*ph)) {
286 if (!acc_passCrackVetoCleaning(*ph)) {
287 passPFlowCVCleaning =
false;
291 ATH_MSG_WARNING(
"DFCommonCrackVetoCleaning variable is not available! Use p3830 onwards for PFlow jets!");
296 return passPFlowCVCleaning;
◆ isPrompt()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 23 of file Truth.cxx.
25 const int type = acc_truthType(*
part);
26 int origin = acc_truthOrigin(*
part);
28 if(acc_bkgTruthOrigin.isAvailable(*
part)){
29 originbkg = acc_bkgTruthOrigin(*
part);
32 ATH_MSG_DEBUG(
"::isPrompt() : No bkgTruthOrigin decoration available. Returning false by default.");
44 case MCTruthPartClassifier::IsoElectron:
66 ATH_MSG_DEBUG(
"::isPrompt() : Only Electrons supported at the moment!");
◆ IsSignalElectron()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 360 of file Electrons.cxx.
362 if (!acc_baseline(
input))
return false;
364 dec_passSignalID(
input) =
false;
373 ATH_MSG_VERBOSE (
"DFCommonElectronsLHxxx variables are not found. Calculating the ID from LH tool..");
381 if (!acc_passSignalID(
input))
return false;
383 if (
input.p4().Perp2() <= etcut * etcut ||
input.p4().Perp2() == 0)
return false;
384 if ( etacut==DUMMYDEF ){
385 if(std::abs(
input.caloCluster()->etaBE(2)) >
m_eleEta )
return false;
387 else if ( std::abs(
input.caloCluster()->etaBE(2)) > etacut )
return false;
390 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
395 if (acc_d0sig(
input) != 0) {
396 if (d0sigcut > 0.0 && std::abs(acc_d0sig(
input)) > d0sigcut)
return false;
399 if (z0cut > 0.0 && std::abs(acc_z0sinTheta(
input)) > z0cut)
return false;
411 dec_signal(
input) =
true;
◆ IsSignalJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 653 of file Jets.cxx.
654 if ( !acc_baseline(
input) || !acc_passOR(
input) )
return false;
656 if (
input.pt() <=
ptcut || std::abs(
input.eta()) >= etacut)
return false;
658 bool isgoodjet = !acc_bad(
input) && acc_passJvt(
input);
660 dec_signal(
input) = isgoodjet;
667 float emfrac, hecf, LArQuality, HECQuality, Timing, fracSamplingMax, NegativeE, AverageLArQF;
668 std::vector<float> sumpttrk_vec;
681 if (!sumpttrk_vec.empty() && this->GetPrimVtx()) {
695 ATH_MSG_INFO(
"JET fracSamplingMax: " << fracSamplingMax );
◆ IsSignalMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 341 of file Muons.cxx.
343 if (!acc_baseline(
input))
return false;
344 if (!acc_passSignalID(
input))
return false;
347 if ( etacut==DUMMYDEF ){
350 else if ( std::abs(
input.eta()) > etacut )
return false;
352 if (z0cut > 0.0 && std::abs(acc_z0sinTheta(
input)) > z0cut)
return false;
353 if (acc_d0sig(
input) != 0) {
354 if (d0sigcut > 0.0 && std::abs(acc_d0sig(
input)) > d0sigcut)
return false;
365 dec_signal(
input) =
true;
369 <<
" signal? " <<
static_cast<int>(acc_signal(
input))
370 <<
" isolation? " <<
static_cast<int>(acc_isol(
input))
371 <<
" passedHighPtCuts? " <<
static_cast<int>(acc_passedHighPtCuts(
input)));
374 <<
" signal? " <<
static_cast<int>( acc_signal(
input))
375 <<
" isolation? " <<
static_cast<int>( acc_isol(
input)));
379 return acc_signal(
input);
◆ IsSignalPhoton()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 164 of file Photons.cxx.
166 dec_signal(
input) =
false;
168 if ( !acc_baseline(
input) )
return false;
173 if ( etacut==DUMMYDEF ){
176 else if ( std::abs(
input.caloCluster()->etaBE(2)) > etacut )
return false;
179 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
192 ATH_MSG_VERBOSE (
"DFCommonPhotonsIsEMxxx variables are not found. Calculating the ID from Photon ID tool..");
195 if ( !passID )
return false;
197 dec_signal(
input) =
true;
◆ IsSignalTau()
◆ IsTrackBJet()
bool ST::SUSYObjDef_xAOD::IsTrackBJet |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsTrackBJetContinuous()
int ST::SUSYObjDef_xAOD::IsTrackBJetContinuous |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ isTrigInTDT()
bool ST::SUSYObjDef_xAOD::isTrigInTDT |
( |
std::scoped_lock< std::mutex > & |
lock, |
|
|
const std::string & |
triggerName |
|
) |
| const |
|
private |
Definition at line 92 of file Trigger.cxx.
95 auto mapItr = m_checkedTriggers.find(triggerName);
96 if ( mapItr == m_checkedTriggers.end() ) {
101 return mapItr->second;
◆ IsTrigMatched() [1/4]
◆ IsTrigMatched() [2/4]
◆ IsTrigMatched() [3/4]
◆ IsTrigMatched() [4/4]
◆ IsTrigPassed()
bool ST::SUSYObjDef_xAOD::IsTrigPassed |
( |
const std::string & |
tr_item, |
|
|
unsigned int |
condition = TrigDefs::Physics |
|
) |
| const |
|
finaloverridevirtual |
◆ IsTruthBJet()
bool ST::SUSYObjDef_xAOD::IsTruthBJet |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 309 of file Truth.cxx.
312 if (acc_signal(
input)) {
315 if (!
input.getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
319 isBjet = std::abs(truthlabel) == 5;
323 dec_bjet_jetunc(
input) = isBjet;
◆ isVariation()
◆ isWeight()
Definition at line 2076 of file SUSYObjDef_xAOD.cxx.
2078 bool affectsWeights =
false;
2079 for (
const auto&
sys : systSet) {
2081 if(
info.affectsKinematics) {
return false; }
2082 affectsWeights = affectsWeights or
info.affectsWeights;
2084 return affectsWeights;
◆ JetPassJVT()
bool ST::SUSYObjDef_xAOD::JetPassJVT |
( |
xAOD::Jet & |
input | ) |
|
|
finaloverridevirtual |
◆ JVT_SF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 947 of file Jets.cxx.
955 if (acc_signal_less_JVT(*
jet) && acc_passOR(*
jet)) {
956 jvtjets.push_back(
jet);
961 float current_sf = 0;
965 if (acc_passJvt(*
jet)) {
979 ATH_MSG_VERBOSE(
"Skip SF application in SUSYTools_xAOD::JVT_SF as jet outside validate range" );
982 ATH_MSG_VERBOSE(
"Retrieve SF for jet in SUSYTools_xAOD::JVT_SF with value " << current_sf );
983 totalSF *= current_sf;
988 ATH_MSG_VERBOSE(
"Retrieve total SF for jet container in SUSYTools_xAOD::JVT_SF with value " << totalSF );
◆ JVT_SFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 994 of file Jets.cxx.
1001 if ( ret != StatusCode::SUCCESS) {
1002 ATH_MSG_ERROR(
"Cannot configure NNjvtEfficiencyTool for systematic var. " << systConfig.
name() );
1011 if ( ret != StatusCode::SUCCESS) {
1012 ATH_MSG_ERROR(
"Cannot configure NNjvtEfficiencyTool for systematic var. " << systConfig.
name() );
◆ MergeElectrons()
◆ MergeMuons()
◆ metaDataStop()
StatusCode asg::AsgMetadataTool::metaDataStop |
( |
| ) |
|
|
protectedvirtualinherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msg_level_name()
const std::string & asg::AsgTool::msg_level_name |
( |
| ) |
const |
|
inherited |
A deprecated function for getting the message level's name.
Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:
MSG::name( msg().level() )
This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.
- Returns
- The string name of the current minimum message level that's printed
Definition at line 101 of file AsgTool.cxx.
◆ msgLvl()
◆ NearbyLeptonCorrections()
◆ outputHandles()
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.
◆ outputMetaStore()
AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::outputMetaStore |
( |
| ) |
const |
|
inherited |
Accessor for the output metadata store.
Definition at line 97 of file AsgMetadataTool.cxx.
99 #ifdef XAOD_STANDALONE
101 #else // XAOD_STANDALONE
103 #endif // XAOD_STANDALONE
◆ OverlapRemoval()
◆ prepareLRTElectrons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 90 of file Electrons.cxx.
95 if ( acc_lrtFilter.isAvailable(*idtrack) )
97 if (
static_cast<int>(acc_lrtFilter(*idtrack) ) ){
98 std::unique_ptr<xAOD::Electron> copyElectron = std::make_unique<xAOD::Electron>(*
electron);
103 copy->push_back( std::move(copyElectron) );
108 std::unique_ptr<xAOD::Electron> copyElectron = std::make_unique<xAOD::Electron>(*
electron);
111 copy->push_back( std::move(copyElectron) );
114 return StatusCode::SUCCESS;
◆ prepareLRTMuons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 73 of file Muons.cxx.
78 if ( acc_lrtFilter.isAvailable(*idtrack) )
80 if (
static_cast<int>(acc_lrtFilter(*idtrack) ) ){
81 std::unique_ptr<xAOD::Muon> copyMuon = std::make_unique<xAOD::Muon>(*
muon);
85 copy->push_back( std::move(copyMuon) );
90 std::unique_ptr<xAOD::Muon> copyMuon = std::make_unique<xAOD::Muon>(*
muon);
93 copy->push_back( std::move(copyMuon) );
97 return StatusCode::SUCCESS;
◆ print() [1/2]
void asg::AsgTool::print |
( |
| ) |
const |
|
virtualinherited |
Print the state of the tool.
Implements asg::IAsgTool.
Reimplemented in JetRecTool, JetFinder, JetModifiedMassDrop, JetFromPseudojet, JetReclusterer, JetReclusteringTool, JetTruthLabelingTool, JetPileupLabelingTool, HI::HIPileupTool, JetDumper, JetBottomUpSoftDrop, JetRecursiveSoftDrop, JetSoftDrop, JetConstituentsRetriever, JetSubStructureMomentToolsBase, JetSplitter, JetToolRunner, JetPruner, JetPseudojetRetriever, JetTrimmer, AsgHelloTool, and KtDeltaRTool.
Definition at line 131 of file AsgTool.cxx.
◆ print() [2/2]
virtual void asg::IAsgTool::print |
( |
| ) |
const |
|
pure virtualinherited |
Print the state of the tool.
Implemented in JetRecTool, JetFinder, JetModifiedMassDrop, JetFromPseudojet, JetReclusterer, JetReclusteringTool, JetTruthLabelingTool, JetPileupLabelingTool, HI::HIPileupTool, asg::AsgTool, JetDumper, JetBottomUpSoftDrop, JetRecursiveSoftDrop, JetSoftDrop, JetConstituentsRetriever, JetSubStructureMomentToolsBase, JetSplitter, JetToolRunner, JetPruner, JetPseudojetRetriever, JetTrimmer, AsgHelloTool, and KtDeltaRTool.
◆ readConfig()
StatusCode ST::SUSYObjDef_xAOD::readConfig |
( |
| ) |
|
|
finaloverrideprotectedvirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1317 of file SUSYObjDef_xAOD.cxx.
1324 success = rEnv.ReadFile(
m_configFile.c_str(), kEnvAll);
1325 if (success != 0)
return StatusCode::FAILURE;
1334 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Jet.InputType") );
1337 int muIdTmp = rEnv.GetValue(
"Muon.Id", 1);
1338 m_muId = (muIdTmp<4 ? static_cast<int>(xAOD::Muon::Quality(muIdTmp)) : muIdTmp);
1341 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Muon.Id") );
1344 int muIdTmp = rEnv.GetValue(
"MuonBaseline.Id", 1);
1345 m_muIdBaseline = (muIdTmp<4 ? static_cast<int>(xAOD::Muon::Quality(muIdTmp)) : muIdTmp);
1348 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"MuonBaseline.Id") );
1352 std::string prop = rEnv.GetValue(
"Jet.JVT_WP",
"");
1353 if ( !prop.empty() ) {
1354 ATH_MSG_WARNING(
"readConfig(): Found deprecated property name Jet.JVT_WP. Please move to using Jet.JvtWP. Propagating for now.");
1355 rEnv.SetValue(
"Jet.JvtWP", prop.c_str());
1356 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Jet.JVT_WP") );
1365 m_conf_to_prop[
"EleBaseline.CrackVeto"] =
"EleBaselineCrackVeto";
1367 m_conf_to_prop[
"Ele.AllowRun3TrigSFFallback"] =
"EleAllowRun3TrigSFFallback";
1371 m_conf_to_prop[
"PhotonBaseline.CrackVeto"] =
"PhotonBaselineCrackVeto";
1379 m_conf_to_prop[
"OR.DoMuonJetGhostAssociation"] =
"ORDoMuonJetGhostAssociation";
1394 m_conf_to_prop[
"Trigger.UpstreamMatching"] =
"TriggerUpstreamMatching";
1400 m_conf_to_prop[
"SigLepPh.IsoCloseByOR"] =
"SigLepPhIsoCloseByOR";
1401 m_conf_to_prop[
"MET.RemoveOverlappingCaloTaggedMuons"] =
"METRemoveORCaloTaggedMuons";
1402 m_conf_to_prop[
"MET.DoSetMuonJetEMScale"] =
"METDoSetMuonJetEMScale";
1454 configFromFile(
m_electronTriggerSFStringSingle,
"Ele.TriggerSFStringSingle", rEnv,
"SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0");
1464 configFromFile(
m_trig2015combination_diLep,
"Trig.Dilep2015", rEnv,
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose || mu20_iloose_L1MU15_OR_mu40 || 2e12_lhloose_L12EM10VH || e17_lhloose_mu14 || e7_lhmedium_mu24 || mu18_mu8noL1 || 2mu10");
1465 configFromFile(
m_trig2016combination_diLep,
"Trig.Dilep2016", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e17_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_L1EM22VHI_mu8noL1 || mu22_mu8noL1 || 2mu14");
1466 configFromFile(
m_trig2017combination_diLep,
"Trig.Dilep2017", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || mu22_mu8noL1 || 2mu14");
1467 configFromFile(
m_trig2018combination_diLep,
"Trig.Dilep2018", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || mu22_mu8noL1 || 2mu14");
1470 configFromFile(
m_trig2015combination_multiLep,
"Trig.Multi2015", rEnv,
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose || mu20_iloose_L1MU15_OR_mu40 || 2e12_lhloose_L12EM10VH || e17_lhloose_2e9_lhloose || 2e12_lhloose_mu10 || e12_lhloose_2mu10 || e17_lhloose_mu14 || e7_lhmedium_mu24 || mu18_mu8noL1 || 2mu10 || 3mu6");
1471 configFromFile(
m_trig2016combination_multiLep,
"Trig.Multi2016", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e17_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_L1EM22VHI_mu8noL1 || e17_lhloose_nod0_2e9_lhloose_nod0 || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1472 configFromFile(
m_trig2017combination_multiLep,
"Trig.Multi2017", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || e24_lhvloose_nod0_2e12_lhvloose_nod0_L1EM20VH_3EM10VH || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1473 configFromFile(
m_trig2018combination_multiLep,
"Trig.Multi2018", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || e24_lhvloose_nod0_2e12_lhvloose_nod0_L1EM20VH_3EM10VH || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1551 configFromFile(
m_WtagConfig,
"Jet.WtaggerConfig", rEnv,
"SmoothedContainedWTagger_AntiKt10UFOCSSKSoftDrop_FixedSignalEfficiency80_20220221.dat");
1552 configFromFile(
m_ZtagConfig,
"Jet.ZtaggerConfig", rEnv,
"SmoothedContainedZTagger_AntiKt10UFOCSSKSoftDrop_FixedSignalEfficiency80_20220221.dat");
1557 configFromFile(
m_jesConfig,
"Jet.JESConfig", rEnv,
m_isRun3 ?
"AntiKt4EMPFlow_MC23a_PreRecR22_Phase2_CalibConfig_ResPU_EtaJES_GSC_240306_InSitu.config" :
"PreRec_R22_PFlow_ResPU_EtaJES_GSC_February23_230215.config");
1558 configFromFile(
m_jesConfigAFII,
"Jet.JESConfigAFII", rEnv,
m_isRun3 ?
"AntiKt4EMPFlow_MC23a_PreRecR22_Phase2_CalibConfig_ResPU_EtaJES_GSC_240306_InSitu.config" :
"PreRec_R22_PFlow_ResPU_EtaJES_GSC_February23_230215.config");
1559 configFromFile(
m_jesConfigJMS,
"Jet.JESConfigJMS", rEnv,
"JES_JMS_MC16Recommendation_Consolidated_MC_only_EMTopo_July2019_Rel21.config");
1561 configFromFile(
m_jesConfigFat,
"Jet.JESConfigFat", rEnv,
"JES_MC20PreRecommendation_R10_UFO_CSSK_SoftDrop_JMS_R21Insitu_10Mar2023.config");
1667 configFromFile(
m_prwActualMu2017File,
"PRW.ActualMu2017File", rEnv,
"GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root");
1668 configFromFile(
m_prwActualMu2018File,
"PRW.ActualMu2018File", rEnv,
"GoodRunsLists/data18_13TeV/20190318/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root");
1680 configFromFile(
m_autoconfigPRWRtags,
"PRW.autoconfigPRWRtags", rEnv,
"mc20a:r13167_r14859,mc20d:r13144_r14860,mc20e:r13145_r14861,mc21a:r13752_r13829,mc23a:r14622_r14932_r15540,mc23c:r14799_r14908,mc23d:r15224_r15530,mc23e:r16083");
1693 if (rEnv.GetTable() && rEnv.GetTable()->GetSize()>0){
1694 ATH_MSG_ERROR(
"Found " << rEnv.GetTable()->GetSize() <<
" unparsed environment options:");
1697 return StatusCode::FAILURE;
1702 if (
m_WtagConfig.find(
"Efficiency50") != std::string::npos){
1705 else if (
m_WtagConfig.find(
"Efficiency80") != std::string::npos){
1709 ATH_MSG_ERROR(
"You have specified a large-R W-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1713 if (
m_ZtagConfig.find(
"Efficiency50") != std::string::npos){
1716 else if (
m_ZtagConfig.find(
"Efficiency80") != std::string::npos){
1720 ATH_MSG_ERROR(
"You have specified a large-R Z-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1723 std::string TopTagEff =
"";
1724 std::string TopTagType =
"";
1733 ATH_MSG_ERROR(
"You have specified a large-R Top-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1737 TopTagType =
"Inclusive";
1740 TopTagType =
"Contained";
1743 ATH_MSG_ERROR(
"You have specified a large-R Top-tag config without a matching uncertainties file. Please fix this. Currently the contained and inclusive WPs are supported");
1745 m_TopTagUncConfig =
"R10_SF_LCTopo_TopTag"+TopTagType+
"_SigEff"+TopTagEff+
".config";
1775 return StatusCode::SUCCESS;
◆ renounce()
◆ renounceArray()
◆ resetSystematics()
StatusCode ST::SUSYObjDef_xAOD::resetSystematics |
( |
| ) |
|
|
finaloverridevirtual |
◆ setBoolProperty()
StatusCode ST::SUSYObjDef_xAOD::setBoolProperty |
( |
const std::string & |
name, |
|
|
const bool & |
property |
|
) |
| |
|
finaloverridevirtual |
◆ SetBtagWeightDecorations()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1114 of file Jets.cxx.
1117 ATH_MSG_ERROR( btagSelTool->name() <<
": could not retrieve b-tag weight (" << btagTagger <<
")." );
1118 return StatusCode::FAILURE;
1123 double btag_pb(-10), btag_pc(-10), btag_pu(-10), btag_ptau(-10);
1125 std::string actualTagger = btagTagger;
1126 if (btagTagger ==
"GN2v00LegacyWP" || btagTagger ==
"GN2v00NewAliasWP"){
1127 actualTagger =
"GN2v00";
1133 dec_btag_pb(
input) = btag_pb;
1134 dec_btag_pc(
input) = btag_pc;
1135 dec_btag_pu(
input) = btag_pu;
1136 dec_btag_ptau(
input) = btag_ptau;
1137 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pb: " << btag_pb );
1138 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pc: " << btag_pc );
1139 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pu: " << btag_pu );
1140 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type ptau: " << btag_ptau );
1142 if ( btagSelTool->name().find(
"DL1")!=std::string::npos ) {
1143 dec_btag_dl1pb(
input) = btag_pb;
1144 dec_btag_dl1pc(
input) = btag_pc;
1145 dec_btag_dl1pu(
input) = btag_pu;
1148 dec_btag_dl1pb(
input) = -10;
1149 dec_btag_dl1pc(
input) = -10;
1150 dec_btag_dl1pu(
input) = -10;
1152 return StatusCode::SUCCESS;
◆ setDataSource()
void ST::SUSYObjDef_xAOD::setDataSource |
( |
int |
source | ) |
|
◆ setUseIncidents()
void asg::AsgMetadataTool::setUseIncidents |
( |
const bool |
flag | ) |
|
|
inlineprotectedinherited |
◆ split()
const std::vector< std::string > ST::SUSYObjDef_xAOD::split |
( |
const std::string & |
s, |
|
|
const std::string & |
delim |
|
) |
| const |
|
protected |
Definition at line 1779 of file SUSYObjDef_xAOD.cxx.
1780 assert(delim.length() == 1);
1781 std::vector<std::string>
retval;
1784 if (
s.find(delim)==std::string::npos) {
1792 while ((
next =
s.find(delim, last)) != std::string::npos) {
1794 last =
next + delim.length();
1798 retval.emplace_back(
s.substr(last));
◆ SUSYToolsInit()
StatusCode SUSYObjDef_xAOD::SUSYToolsInit |
( |
| ) |
|
|
private |
Definition at line 109 of file SUSYToolsInit.cxx.
113 ATH_MSG_FATAL(
"You must set the DataSource property to Data, FullSim or AtlfastII !!");
114 ATH_MSG_FATAL(
"Expect segfaults if you're not checking status codes, which you should be !!");
115 return StatusCode::FAILURE;
119 ATH_MSG_INFO(
"SUSYTools subtools already created. Ignoring this call.");
120 ATH_MSG_INFO(
"Note: No longer necessary to explicitly call SUSYToolsInit. Will avoid creating tools again.");
121 return StatusCode::SUCCESS;
129 std::vector<std::string> file_conf;
135 std::vector<std::string> file_ilumi;
165 ATH_MSG_INFO(
"Using user-configured LRT uncertainty tool");
169 std::string toolName;
171 std::string jetname,
jetcoll,fatjetcoll;
181 toolName =
"JetCalibTool_" + jetname;
183 std::string JES_config_file, calibseq;
187 return StatusCode::FAILURE;
192 ATH_MSG_WARNING(
"Jet JES/JER recommendations currently not available for fast sim in Run 3, falling back to full sim version");
197 JES_config_file = JESconfig;
201 std::string insitu(
"_Insitu");
202 auto found = calibseq.find(insitu);
203 if(
found != std::string::npos){
204 calibseq.erase(
found, insitu.length());
210 ATH_MSG_ERROR(
"JMS calibration is not supported yet for R22. Please modify your settings.");
211 return StatusCode::FAILURE;
229 if(fatjetcoll ==
"AnalysisLargeRJets") {
230 ATH_MSG_DEBUG(
"Fall back to calibration for AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets, original name for AnalysisLargeRJets");
231 fatjetcoll =
"AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets";
233 if (fatjetcoll.size()>3)fatjetcoll.erase(fatjetcoll.size()-4,4);
235 toolName =
"JetFatCalibTool_" +
m_fatJets;
241 if(
isData()) jesCalibSeqFat +=
"_Insitu";
265 #ifndef XAOD_STANDALONE
274 ATH_MSG_ERROR(
"Error while reading large-R config file : " << WConfigPath );
275 return StatusCode::FAILURE;
277 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << WConfigPath );
292 #ifndef XAOD_STANDALONE
301 ATH_MSG_ERROR(
"Error while reading large-R config file : " << ZConfigPath );
302 return StatusCode::FAILURE;
304 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << ZConfigPath );
319 #ifndef XAOD_STANDALONE
328 ATH_MSG_ERROR(
"Error while reading large-R config file : " << TopConfigPath );
329 return StatusCode::FAILURE;
331 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << TopConfigPath );
373 if(jetdef !=
"AntiKt4EMPFlow"){
374 ATH_MSG_WARNING(
"Jet Uncertaintes recommendations only exist for PFlow jets, falling back to AntiKt4EMPFlow");
375 jetdef =
"AntiKt4EMPFlow";
377 toolName =
"JetUncertaintiesTool_" + jetdef;
380 ATH_MSG_WARNING(
"Jet Uncertaintes pre-recommendations for Run3 only exist for full sim");
395 ATH_MSG_INFO(
"Set up Jet PD Smear Uncertainty tool...");
400 if(jetdef !=
"AntiKt4EMPFlow"){
401 ATH_MSG_WARNING(
"Jet Uncertaintes recommendations only exist for PFlow jets, falling back to AntiKt4EMPFlow");
402 jetdef =
"AntiKt4EMPFlow";
404 toolName =
"JetUncertaintiesPDSmearTool_" + jetdef;
411 ATH_MSG_ERROR(
"You are trying to use the SimpleJER set, with PDsmearing. There is no functionality for this. Please fix your config file. Either run with PDSmear set to false, or run with the AllJER or FullJER sets.");
412 return StatusCode::FAILURE;
422 ATH_MSG_DEBUG(
"Do not retrieve the jet PD Smearing tool if it is not configured");
428 ATH_MSG_INFO(
"Won't initialise jet uncertainty tool for fat jets until we get rec for UFO");
465 ATH_MSG_INFO(
" Won't initialise Wtagger uncertainty tool for fat jets until we get rec for UFO");
480 ATH_MSG_INFO(
" Won't initialise Ztagger uncertainty tool for fat jets until we get rec for UFO");
495 ATH_MSG_INFO(
" Won't initialise top-tagger uncertainty tool for fat jets until we get rec for UFO");
523 toolName =
"JetCleaningTool";
535 toolName =
"PileupLabelingTool";
539 #ifndef XAOD_STANDALONE
552 toolName =
"NNJvtMomentTool";
555 #ifndef XAOD_STANDALONE
567 toolName =
"NNJvtSelectionTool";
581 toolName =
"NNJvtEfficiencyTool";
595 toolName =
"fJvtSelectionTool";
609 toolName =
"fJvtEfficiencyTool";
625 std::string muQualBaseline =
"";
628 ATH_MSG_WARNING(
"No muon scale factors are available for VeryLoose working point.");
633 case 4: muQualBaseline =
"HighPt";
break;
634 case 5: muQualBaseline =
"LowPt";
break;
635 case 6: muQualBaseline =
"LowPtMVA";
break;
636 case 7: muQualBaseline =
"HighPt3Layers";
break;
639 return StatusCode::FAILURE;
656 if (IdBaselineInt == 4) {
667 toolName =
"MuonSelectionTool_Baseline_" + muQualBaseline;
673 ") that is tighter than the signal cut (" <<
m_muEta <<
"). Please check your config." );
674 return StatusCode::FAILURE;
678 if (IdBaselineInt == 6){
681 }
else if (IdBaselineInt == 7){
690 std::string muQual =
"";
693 ATH_MSG_WARNING(
"No muon scale factors are available for VeryLoose working point.");
698 case 4: muQual =
"HighPt";
break;
699 case 5: muQual =
"LowPt";
break;
700 case 6: muQual =
"LowPtMVA";
break;
701 case 7: muQual =
"HighPt3Layers";
break;
703 ATH_MSG_ERROR(
"Invalid muon working point provided: " <<
m_muId <<
". Cannot initialise!");
704 return StatusCode::FAILURE;
709 toolName =
"MuonSelectionTool_" + muQual;
717 }
else if (IdInt == 7){
727 toolName =
"MuonSelectionHighPtTool_" + muQual;
740 toolName =
"MuonLRTOverlapRemovalTool";
751 toolName =
"MuonEfficiencyScaleFactors_" + muQual;
761 toolName =
"MuonEfficiencyScaleFactorsBMHighPt_" + muQual;
771 ATH_MSG_WARNING(
"Requested TTVA SFs without d0sig and z0 cuts. Disabling scale factors as they will not make sense.");
776 toolName =
"MuonTTVAEfficiencyScaleFactors";
789 toolName =
"MuonIsolationScaleFactors_" +
m_muIso_WP;
795 <<
") does not have SFs defined. Will try to find an appropriate fall-back.");
800 <<
" is not supported, and does not have SFs available. Falling back to "
802 <<
" for SF determination.");
804 ATH_MSG_ERROR(
"*** The muon isolation WP you selected (" <<
m_muIso_WP <<
") is not currentely supported, and no known fall-back option for SFs exists. Sorry! ***");
805 return StatusCode::FAILURE;
825 <<
") does not have SFs defined. Will try to find an appropriate fall-back.");
830 <<
" is not supported, and does not have SFs available. Falling back to "
831 << tmp_muIsoHighPt_WP
832 <<
" for SF determination.");
834 ATH_MSG_ERROR(
"*** The muon isolation WP you selected (" <<
m_muIsoHighPt_WP <<
") is not currentely supported, and no known fall-back option for SFs exists. Sorry! ***");
835 return StatusCode::FAILURE;
853 toolName =
"MuonTriggerScaleFactors_" + muQual;
855 if ( muQual==
"LowPt" ) {
856 ATH_MSG_WARNING(
"You're using the LowPt muon selection, which is not supported yet in terms of muon trigger scale facorts. TEMPORAIRLY configuring the muonTriggerSFTool for Medium muons. Beware!");
877 toolName =
"EleSelLikelihood_" +
m_eleId;
879 if (
m_eleId.find(
"DNN") != std::string::npos) {
887 ATH_MSG_INFO(
"Overriding specified Ele.Id working point in favour of configuration file");
891 return StatusCode::FAILURE;
894 ATH_MSG_WARNING(
" ****************************************************************************");
896 ATH_MSG_WARNING(
" These may be used for loose electron CRs but no scale factors are provided.");
897 ATH_MSG_WARNING(
" ****************************************************************************");
919 ATH_MSG_INFO(
"Overriding specified EleBaseline.Id working point in favour of configuration file");
923 return StatusCode::FAILURE;
936 toolName =
"ElectronLRTOverlapRemovalTool";
953 return StatusCode::FAILURE;
967 return StatusCode::FAILURE;
1000 ATH_MSG_INFO(
"Running on Run2 samples; Using egamma SF tools from R21 map ");
1004 toolName =
"AsgElectronEfficiencyCorrectionTool_reco";
1015 std::string eleId = TString(
m_eleId).ReplaceAll(
"AndBLayer",
"BLayer").ReplaceAll(
"LLH",
"").Data();
1017 if (
m_eleId.find(
"DNN") != std::string::npos) {
1018 eleId = TString(eleId).ReplaceAll(
"DNNnoCF",
"").ReplaceAll(
"DNN",
"").ReplaceAll(
"Loose",
"LooseBLayer").Data();
1019 ATH_MSG_WARNING(
"Electron DNN ID working point " <<
m_eleId <<
" doesn't have SFs yet, fall back to " << eleId);
1023 toolName =
"AsgElectronEfficiencyCorrectionTool_id_" +
m_eleId;
1027 std::map<std::string,std::string> corrFNList;
1030 std::string
WP = WP_fname.substr(0,WP_fname.find(
":"));
1031 std::string
fname = WP_fname.substr(WP_fname.find(
":")+1);
1034 ATH_MSG_WARNING(
"Will use correction file rather than central map file." );
1039 std::string EleIso(
"");
1045 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_iso_*) Your selected electron Iso WP ("
1047 <<
") does not have iso SFs defined. Falling back to "
1049 <<
" for SF calculations");
1053 return StatusCode::FAILURE;
1056 toolName =
"AsgElectronEfficiencyCorrectionTool_iso_" +
m_eleId + EleIso;
1059 if ( (!
m_EG_corrFNList.empty()) && corrFNList.find(EleIso)!=corrFNList.end() ) {
1066 ATH_MSG_WARNING(
"(" << toolName <<
") Your electron Iso WP: " << EleIso<<
" is no longer supported. This will almost certainly cause a crash now.");
1078 if (!
isData() && ((EleIso.find(
"TightTrackOnly_VarRad")!=std::string::npos)||
1079 (EleIso.find(
"TightTrackOnly_FixedRad")!=std::string::npos)||
1080 (EleIso.find(
"Tight_VarRad")!=std::string::npos)||
1081 (EleIso.find(
"Loose_VarRad")!=std::string::npos))) {
1082 if (
isAtlfast())
ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool/"+toolName+
"). Your selected electron Iso WP (" + EleIso +
") don't have AFII SF. Falling back to FullSim");
1095 std::string EleIsohighPt(
"");
1101 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_iso_*) Your selected high-pT electron Iso WP ("
1103 <<
") does not have iso SFs defined. Falling back to "
1105 <<
" for SF calculations");
1109 return StatusCode::FAILURE;
1112 toolName =
"AsgElectronEfficiencyCorrectionTool_isoHigPt_" +
m_eleId + EleIsohighPt;
1115 if ( (!
m_EG_corrFNList.empty()) && corrFNList.find(EleIsohighPt)!=corrFNList.end() ) {
1123 ATH_MSG_WARNING(
"(" << toolName <<
") Your electron high-pt Iso WP: " << EleIsohighPt <<
" is no longer supported. This will almost certainly cause a crash now.");
1144 if(
m_isRun3 && eleId.find(
"LooseBLayer") != std::string::npos)
ATH_MSG_WARNING(
"Replacing 'LooseBLayer' with 'Loose' for Electron ID while configuring single-ele trigger SF using: " <<
m_eleEffMapFilePath);
1145 std::string triggerEleID =
m_isRun3? TString(eleId).ReplaceAll(
"LooseBLayer",
"Loose").Data() : eleId;
1151 bool pass_isRun3TrigSFFallback =
true;
1152 if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"Loose") != std::string::npos) {triggerEleID =
"Loose";}
1153 else if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1154 else if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1155 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"Loose") != std::string::npos) {triggerEleID =
"Loose";}
1156 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleIso=
"Tight_VarRad";}
1157 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1158 else if (triggerEleID.find(
"Loose") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleID =
"Loose"; triggerEleIso =
"Loose_VarRad";}
1159 else if (triggerEleID.find(
"Loose") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Loose"; triggerEleIso =
"Loose_VarRad";}
1160 else {pass_isRun3TrigSFFallback=
false;}
1161 if(pass_isRun3TrigSFFallback){
1162 ATH_MSG_INFO(
" ************** This is only for testing/studying purpose! ************** ");
1163 ATH_MSG_INFO(
" ************** For official recommendation, please get in contact with the SUSY Bkg Forum ************** ");
1164 ATH_MSG_INFO(
"In the current map ("<<
m_eleEffMapFilePath<<
"), the only supported Electron ID working-points supported for Electron Trigger Scale Factor are 'Loose_Loose_VarRad' and 'Tight_Tight_VarRad' ");
1165 ATH_MSG_INFO(
"Only for single-lepton trigger scale factor, fall back to Electron ID: -> "<< triggerEleID <<
" with Isolation: " << triggerEleIso);
1177 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_trig_singleLep_*) Your selected electron Iso WP ("
1179 <<
") does not have trigger SFs defined. Falling back to "
1181 <<
" for SF calculations");
1185 return StatusCode::FAILURE;
1188 toolName =
"AsgElectronEfficiencyCorrectionTool_trig_singleLep_" + triggerEleID;
1204 toolName =
"AsgElectronEfficiencyCorrectionTool_trigEff_singleLep_" + triggerEleID;
1221 std::map<std::string,std::string> electronTriggerSFMapMixedLepton {
1223 {
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose,e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0",
m_electronTriggerSFStringSingle},
1224 {
"e24_lhvloose_nod0_L1EM20VH,e17_lhvloose_nod0,e12_lhloose_L1EM10VH",
"DI_E_2015_e12_lhloose_L1EM10VH_2016_e17_lhvloose_nod0_2017_2018_e24_lhvloose_nod0_L1EM20VH"},
1225 {
"e26_lhmedium_nod0_L1EM22VHI,e26_lhmedium_nod0",
"MULTI_L_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_e26_lhmedium_nod0_L1EM22VHI_2017_2018_e26_lhmedium_nod0"},
1226 {
"e17_lhloose,e17_lhloose_nod0",
"MULTI_L_2015_e17_lhloose_2016_2018_e17_lhloose_nod0"},
1227 {
"e12_lhloose,e12_lhloose_nod0",
"MULTI_L_2015_e12_lhloose_2016_2018_e12_lhloose_nod0"},
1228 {
"e7_lhmedium,e7_lhmedium_nod0",
"MULTI_L_2015_e7_lhmedium_2016_2018_e7_lhmedium_nod0"},
1229 {
"e9_lhloose,e9_lhloose_nod0,e12_lhvloose_nod0_L1EM10VH",
"TRI_E_2015_e9_lhloose_2016_e9_lhloose_nod0_2017_2018_e12_lhvloose_nod0_L1EM10VH"}
1235 if (triglist_2017to2018.find(
"2e17_lhvloose_nod0_L12EM15VHI") != std::string::npos) {
1236 electronTriggerSFMapMixedLepton[
"e17_lhvloose_nod0_L1EM15VHI"] =
"DI_E_2015_e12_lhloose_L1EM10VH_2016_e17_lhvloose_nod0_2017_2018_e17_lhvloose_nod0_L1EM15VHI";
1239 std::string triggerMixedEleIso(
"");
1241 for(
auto const&
item : electronTriggerSFMapMixedLepton){
1248 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_trig_mixLep_*) Your selected electron Iso WP ("
1250 <<
") does not have trigger SFs defined. Falling back to "
1251 << triggerMixedEleIso
1252 <<
" for SF calculations");
1254 ATH_MSG_ERROR(
"*** THE MIXED ELECTRON TRIGGER SF YOU SELECTED (" <<
item.second <<
") GOT NO SUPPORT FOR YOUR ID+ISO WPs (" <<
m_eleId <<
"+" <<
m_eleIso_WP <<
"). The fallback options failed as well sorry! ***");
1255 return StatusCode::FAILURE;
1258 ATH_MSG_VERBOSE (
"Selected WP: " <<
item.second <<
"_" << eleId <<
"_" << triggerMixedEleIso);
1260 toolName =
"AsgElectronEfficiencyCorrectionTool_trig_mixLep_" + (
item.first).substr(0,8) +
m_eleId;
1264 ATH_CHECK( t_sf->setProperty(
"IdKey", eleId) );
1265 ATH_CHECK( t_sf->setProperty(
"IsoKey", triggerMixedEleIso) );
1270 ATH_CHECK( t_sf->setProperty(
"OutputLevel", this->msg().level()) );
1273 #ifndef XAOD_STANDALONE
1279 toolName =
"AsgElectronEfficiencyCorrectionTool_trigEff_mixLep_" + (
item.first).substr(0,8) +
m_eleId;
1282 ATH_CHECK( t_eff->setProperty(
"TriggerKey",
"Eff_"+
item.second) );
1283 ATH_CHECK( t_eff->setProperty(
"IdKey", eleId) );
1284 ATH_CHECK( t_eff->setProperty(
"IsoKey", triggerMixedEleIso) );
1289 ATH_CHECK( t_eff->setProperty(
"OutputLevel", this->msg().level()) );
1292 #ifndef XAOD_STANDALONE
1300 else ATH_MSG_WARNING(
"*** THE ELECTRON TRIGGER SF MIXED AND SF DILEP ARE CURRENTY NOT SUPPORTED IN RUN3 ***");
1302 ATH_MSG_WARNING(
"*** THE ELECTRON CHARGE FLIP SF ARE CURRENTY NOT SUPPORTED ***");
1346 photonIso_forTrigSF =
"TightCaloOnly";
1348 photonIso_forTrigSF = TString(
m_photonIso_WP).ReplaceAll(
"FixedCut",
"").Data();
1360 std::map<std::string,std::string> diphotonTriggerSFMapAsymmetric {
1362 {
"g25_loose,g25_medium_L1EM20VH",
"DI_PH_2015_g25_loose_2016_g25_loose_2017_g25_medium_L1EM20VH_2018_g25_medium_L1EM20VH"},
1363 {
"g35_loose,g35_medium_L1EM20VH",
"DI_PH_2015_g35_loose_2016_g35_loose_2017_g35_medium_L1EM20VH_2018_g35_medium_L1EM20VH"},
1366 for(
auto const&
item : diphotonTriggerSFMapAsymmetric){
1368 toolName =
"AsgPhotonEfficiencyCorrectionTool_trigSF_asymm_diphoton_" + (
item.first).substr(0,9) + photonIso_forTrigSF;
1370 ATH_CHECK( ph_trigSF->setProperty(
"MapFilePath",
"PhotonEfficiencyCorrection/2015_2018/rel21.2/Summer2020_Rec_v1/map1.txt") );
1371 ATH_CHECK( ph_trigSF->setProperty(
"IsoKey", photonIso_forTrigSF) );
1372 ATH_CHECK( ph_trigSF->setProperty(
"TriggerKey",
item.second) );
1373 ATH_CHECK( ph_trigSF->setProperty(
"ForceDataType", 1) );
1374 ATH_CHECK( ph_trigSF->setProperty(
"OutputLevel", this->msg().level()) );
1377 #ifndef XAOD_STANDALONE
1383 toolName =
"AsgPhotonEfficiencyCorrectionTool_trigEff_asymm_diphoton_" + (
item.first).substr(0,9) + photonIso_forTrigSF;
1385 ATH_CHECK( ph_trigEff->setProperty(
"MapFilePath",
"PhotonEfficiencyCorrection/2015_2018/rel21.2/Summer2020_Rec_v1/map1.txt") );
1386 ATH_CHECK( ph_trigEff->setProperty(
"IsoKey", photonIso_forTrigSF) );
1387 ATH_CHECK( ph_trigEff->setProperty(
"TriggerKey",
"Eff_"+
item.second) );
1388 ATH_CHECK( ph_trigEff->setProperty(
"ForceDataType", 1) );
1389 ATH_CHECK( ph_trigEff->setProperty(
"OutputLevel", this->msg().level()) );
1392 #ifndef XAOD_STANDALONE
1461 else if (
m_tauId ==
"rnn001")
inputfile =
"SUSYTools/tau_selection_rnn001.conf";
1462 else if (
m_tauId ==
"VeryLoose")
inputfile =
"SUSYTools/tau_selection_veryloose.conf";
1463 else if (
m_tauId ==
"Loose")
inputfile =
"SUSYTools/tau_selection_loose.conf";
1464 else if (
m_tauId ==
"Medium")
inputfile =
"SUSYTools/tau_selection_medium.conf";
1465 else if (
m_tauId ==
"Tight")
inputfile =
"SUSYTools/tau_selection_tight.conf";
1468 return StatusCode::FAILURE;
1474 return StatusCode::FAILURE;
1483 toolName =
"TauSelectionTool_" +
m_tauId;
1501 return StatusCode::FAILURE;
1516 toolName =
"TauEffTool_" +
m_tauId;
1520 std::vector<int> correction_types;
1523 ANA_MSG_DEBUG(
"Found JetIDWP in tau config file : " << jetIDWP );
1531 ATH_MSG_ERROR(
"Invalid Tau ID in tau config file " << jetIDWP);
1532 return StatusCode::FAILURE;
1535 correction_types.insert(correction_types.end(), {TauAnalysisTools::EfficiencyCorrectionType::SFRecoHadTau,
1536 TauAnalysisTools::EfficiencyCorrectionType::SFJetIDHadTau});
1540 ANA_MSG_DEBUG(
"Found EleIDWP in tau config file : " << eleIDWP );
1541 int ele_id_lvl = -1;
1546 ATH_MSG_INFO(
"No or invalid Ele OR in tau config file " << eleIDWP <<
" will not apply SFs for electro veto" );
1549 if (ele_id_lvl != -1 )
1550 correction_types.insert(correction_types.end(), {TauAnalysisTools::EfficiencyCorrectionType::SFEleIDHadTau,
1551 TauAnalysisTools::EfficiencyCorrectionType::SFEleIDElectron});
1574 return StatusCode::FAILURE;
1579 {
"HLT_tau25_medium1_tracktwo",
"HLT_tau25_medium1_tracktwo"},
1580 {
"HLT_tau35_medium1_tracktwo",
"HLT_tau35_medium1_tracktwo"},
1581 {
"HLT_tau50L1TAU12_medium1_tracktwo",
"HLT_tau50_medium1_tracktwo_L1TAU12"},
1582 {
"HLT_tau60_medium1_tracktwo",
"HLT_tau60_medium1_tracktwo"},
1583 {
"HLT_tau80L1TAU60_medium1_tracktwo",
"HLT_tau80_medium1_tracktwo_L1TAU60"},
1584 {
"HLT_tau125_medium1_tracktwo",
"HLT_tau125_medium1_tracktwo"},
1585 {
"HLT_tau160_medium1_tracktwo",
"HLT_tau160_medium1_tracktwo"},
1586 {
"HLT_tau160L1TAU100_medium1_tracktwo",
"HLT_tau160_medium1_tracktwo_L1TAU100"},
1588 {
"HLT_tau25_medium1_tracktwoEF",
"HLT_tau25_medium1_tracktwoEF"},
1589 {
"HLT_tau35L1TAU12IM_medium1_tracktwoEF",
"HLT_tau35_medium1_tracktwoEF_L1TAU12IM"},
1590 {
"HLT_tau35_medium1_tracktwoEF",
"HLT_tau35_medium1_tracktwoEF"},
1591 {
"HLT_tau60_medium1_tracktwoEF",
"HLT_tau60_medium1_tracktwoEF"},
1592 {
"HLT_tau80L1TAU60_medium1_tracktwoEF",
"HLT_tau80_medium1_tracktwoEF_L1TAU60"},
1593 {
"HLT_tau160L1TAU100_medium1_tracktwoEF",
"HLT_tau160_medium1_tracktwoEF_L1TAU100"},
1595 {
"HLT_tau25_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau25_medium1_tracktwoEF,HLT_tau25_mediumRNN_tracktwoMVA"},
1596 {
"HLT_tau35L1TAU12IM_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau35_medium1_tracktwoEF_L1TAU12IM,HLT_tau35_mediumRNN_tracktwoMVA_L1TAU12IM"},
1597 {
"HLT_tau35_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau35_medium1_tracktwoEF,HLT_tau35_mediumRNN_tracktwoMVA"},
1598 {
"HLT_tau60_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau60_medium1_tracktwoEF,HLT_tau60_mediumRNN_tracktwoMVA"},
1599 {
"HLT_tau80L1TAU60_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau80_medium1_tracktwoEF_L1TAU60,HLT_tau80_mediumRNN_tracktwoMVA_L1TAU60"},
1600 {
"HLT_tau160L1TAU100_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau160_medium1_tracktwoEF_L1TAU100,HLT_tau160_mediumRNN_tracktwoMVA_L1TAU100"}
1604 toolName =
"TauTrigEffTool_" +
m_tauId +
"_" + trigger.first;
1606 ATH_CHECK( tau_trigSF->setProperty(
"EfficiencyCorrectionTypes", std::vector<int>({TauAnalysisTools::SFTriggerHadTau})) );
1607 ATH_CHECK( tau_trigSF->setProperty(
"TriggerName", trigger.first) );
1608 ATH_CHECK( tau_trigSF->setProperty(
"JetIDLevel", iTauID) );
1610 ATH_CHECK( tau_trigSF->setProperty(
"OutputLevel", this->msg().level()) );
1651 std::string jetcollBTag =
jetcoll;
1652 if (
jetcoll ==
"AntiKt4LCTopoJets") {
1653 ATH_MSG_WARNING(
" *** HACK *** Treating LCTopoJets jets as EMTopo -- use at your own risk!");
1654 jetcollBTag =
"AntiKt4EMTopoJets";
1661 ATH_MSG_WARNING(
"You are using a "<<(!
m_isRun3 ?
"Run3":
"Run2")<<
" CDI file while running on "<<(!
m_isRun3 ?
"Run2":
"Run3")<<
" sample; Please updates your CDI file to the correct version for "<<(!
m_isRun3 ?
"Run2":
"Run3"));
1665 if (jetcollBTag.find(
"AntiKt4EMTopoJets") == std::string::npos && jetcollBTag.find(
"AntiKt4EMPFlowJets")==std::string::npos) {
1666 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1667 return StatusCode::FAILURE;
1684 if (
jetcoll !=
"AntiKt4EMTopoJets" &&
jetcoll !=
"AntiKt4EMPFlowJets") {
1685 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1686 return StatusCode::FAILURE;
1689 toolName =
"BTagSelOR_" + jetcollBTag +
m_orBtagWP;
1702 const std::string& BTagColl_TrkJet = trkjetcoll;
1706 ATH_MSG_INFO(
"TrackJet collection set to None: disabling btagging for TrackJets.");
1710 if (trkjetcoll.find(
"AntiKt2PV0TrackJets")==std::string::npos && trkjetcoll.find(
"AntiKtVR30Rmax4Rmin02TrackJets")==std::string::npos) {
1711 ATH_MSG_WARNING(
"** Only AntiKt2PV0TrackJets and AntiKtVR30Rmax4Rmin02TrackJets are supported with FTAG scale factors!");
1712 return StatusCode::FAILURE;
1731 std::string MCshowerID;
1733 MCshowerID=
"default";
1744 MCshowerID=
"default";
1751 if (
jetcoll !=
"AntiKt4EMTopoJets" &&
jetcoll !=
"AntiKt4EMPFlowJets") {
1752 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1753 return StatusCode::FAILURE;
1775 if (trkjetcoll.find(
"AntiKt2PV0TrackJets")==std::string::npos && trkjetcoll.find(
"AntiKtVR30Rmax4Rmin02TrackJets")==std::string::npos) {
1776 ATH_MSG_WARNING(
"** Only AntiKt2PV0TrackJets and AntiKtVR30Rmax4Rmin02TrackJets are supported with FTAG scale factors!");
1777 return StatusCode::FAILURE;
1780 toolName =
"BTagSF_" + trkjetcoll;
1833 ATH_MSG_ERROR(
"Can only have CST *or* TST configured for MET maker. Please unset either METDoCaloSyst or METDoTrkSyst in your config file" );
1834 return StatusCode::FAILURE;
1859 #ifndef XAOD_STANDALONE // Athena and AthAnalysis; need to take into account that MuonCalibTool is private tool
1864 if(jetname ==
"AntiKt4EMTopo" || jetname ==
"AntiKt4EMPFlow"){
1867 ATH_MSG_WARNING(
"Object-based METSignificance recommendations only exist for EMTopo and PFlow, falling back to AntiKt4EMTopo");
1878 if (IdBaselineInt == 4)
1882 #else // AnalysisBase; can just pass the muon calib tool configured above
1887 if(jetname ==
"AntiKt4EMTopo" || jetname ==
"AntiKt4EMPFlow"){
1890 ATH_MSG_WARNING(
"Object-based METSignificance recommendations only exist for EMTopo and PFlow, falling back to AntiKt4EMTopo");
1916 #ifndef XAOD_STANDALONE // Athena and AthAnalysis
1919 #else // AnalysisBase
1963 std::string no2e17(
"");
1973 ATH_MSG_DEBUG(
"TrigGlobalEfficiencyCorrectionTool/TrigGlobal_diLep: no2e17 trigger string: " << no2e17 );
1975 std::map<std::string,std::string> triggers_diLep;
1979 triggers_diLep[
"326834-328393"] = no2e17;
1998 std::string no2e17(
"");
2008 ATH_MSG_DEBUG(
"TrigGlobalEfficiencyCorrectionTool/TrigGlobal_multiLep: no2e17 trigger string: " << no2e17 );
2010 std::map<std::string,std::string> triggers_multiLep;
2014 triggers_multiLep[
"326834-328393"] = no2e17;
2114 #ifndef XAOD_ANALYSIS
2131 std::string toolName =
"ORTool" +
suffix;
2132 ATH_MSG_INFO(
"SUSYTools: Autoconfiguring " << toolName);
2149 orFlags.outputPassValue =
true;
2152 orFlags.doEleEleOR =
true;
2153 }
else orFlags.doEleEleOR =
false;
2154 orFlags.doElectrons =
true;
2155 orFlags.doMuons =
true;
2156 orFlags.doJets =
true;
2275 return StatusCode::SUCCESS;
◆ sysInitialize()
StatusCode asg::AsgMetadataTool::sysInitialize |
( |
| ) |
|
|
virtualinherited |
Function initialising the tool in the correct way in Athena.
This function is used to set up the callbacks from IncidentSvc in Athena at the right time during initialisation, without the user having to do anything special in his/her code.
Reimplemented from AthCommonDataStore< AthCommonMsg< AlgTool > >.
Definition at line 110 of file AsgMetadataTool.cxx.
112 #ifndef XAOD_STANDALONE
119 incSvc->addListener(
this, IncidentType::BeginEvent, 0,
false );
124 #endif // not XAOD_STANDALONE
127 return StatusCode::SUCCESS;
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ treatAsYear()
int ST::SUSYObjDef_xAOD::treatAsYear |
( |
const int |
runNumber = -1 | ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 3062 of file SUSYObjDef_xAOD.cxx.
3066 if (theRunNumber<290000)
return 2015;
3067 else if (theRunNumber<320000)
return 2016;
3068 else if (theRunNumber<342000)
return 2017;
3069 else if (theRunNumber<400000)
return 2018;
3070 else if (theRunNumber<450000)
return 2022;
◆ TrigMatch() [1/10]
void ST::SUSYObjDef_xAOD::TrigMatch |
( |
const std::initializer_list< const xAOD::IParticle * > & |
v, |
|
|
const std::initializer_list< std::string > & |
items |
|
) |
| |
|
finaloverridevirtual |
◆ TrigMatch() [2/10]
◆ TrigMatch() [3/10]
◆ TrigMatch() [4/10]
◆ TrigMatch() [5/10]
◆ TrigMatch() [6/10]
◆ TrigMatch() [7/10]
◆ TrigMatch() [8/10]
◆ TrigMatch() [9/10]
◆ TrigMatch() [10/10]
◆ TrigSingleLep()
std::string ST::SUSYObjDef_xAOD::TrigSingleLep |
( |
| ) |
const |
|
finaloverridevirtual |
◆ updateVHKA()
◆ validConfig()
StatusCode ST::SUSYObjDef_xAOD::validConfig |
( |
bool |
strict = false | ) |
const |
|
protected |
baseline vs signal pt check
WP check
check pt and eta range
Definition at line 1907 of file SUSYObjDef_xAOD.cxx.
1914 if(
strict)
return StatusCode::FAILURE;
1918 if(
strict)
return StatusCode::FAILURE;
1923 if(
strict)
return StatusCode::FAILURE;
1927 if(
strict)
return StatusCode::FAILURE;
1933 if(
strict)
return StatusCode::FAILURE;
1937 if(
strict)
return StatusCode::FAILURE;
1941 if(
strict)
return StatusCode::FAILURE;
1947 if(
strict)
return StatusCode::FAILURE;
1951 if(
strict)
return StatusCode::FAILURE;
1955 if(
strict)
return StatusCode::FAILURE;
1959 if(
strict)
return StatusCode::FAILURE;
1964 ATH_MSG_WARNING(
"Your minimum signal jet pt is less than 20 GeV! Jet.Pt : " <<
m_jetPt <<
". This is NOT supported by the jet group!");
1974 ATH_MSG_WARNING(
"You btagging MinPt settings are inconsistent! EM(Topo|PFlow)Jets: not calibrated below 20 GeV (Btag.MinPt: " <<
m_BtagMinPt/1000. <<
" GeV set), VRTrackJets: not calibrated below 10 GeV (BtagTrkJet.MinPt: " <<
m_BtagMinPt_trkJet/1000. <<
" GeV set).");
1981 if(
strict)
return StatusCode::FAILURE;
1986 if(
strict)
return StatusCode::FAILURE;
1990 std::vector<float> pT_window;
1991 std::vector<float> eta_window;
2000 if (
m_tauId ==
"rnn001") theConfig =
"SUSYTools/tau_selection_rnn001.conf";
2001 else if (
m_tauId ==
"VeryLoose") theConfig =
"SUSYTools/tau_selection_veryloose.conf";
2002 else if (
m_tauId ==
"Loose") theConfig =
"SUSYTools/tau_selection_loose.conf";
2003 else if (
m_tauId ==
"Medium") theConfig =
"SUSYTools/tau_selection_medium.conf";
2004 else if (
m_tauId ==
"Tight") theConfig =
"SUSYTools/tau_selection_tight.conf";
2008 getTauConfig(theConfig, pT_window, eta_window, elOLR, muVeto, muOLR);
2012 ATH_MSG_WARNING(
"Your baseline tau pt configuration is inconsistent! pre pT cut : " <<
m_tauPrePtCut <<
" / TauSelectionTool window (in MeV) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2013 if(
strict)
return StatusCode::FAILURE;
2016 if(
m_tauPt > 0 and (
m_tauPt != 1000*pT_window[0] or (pT_window[1] > 0 and
m_tauPt > 1000*pT_window[1]))) {
2017 ATH_MSG_WARNING(
"Your baseline tau pt configuration is inconsistent! pT cut : " <<
m_tauPt <<
" / TauSelectionTool window (in Mev) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2018 if(
strict)
return StatusCode::FAILURE;
2022 ATH_MSG_WARNING(
"Your baseline tau eta configuration is inconsistent! eta cut : " <<
m_tauEta <<
" != TauSelectionTool max eta : " << eta_window[eta_window.size()-1]);
2023 if(
strict)
return StatusCode::FAILURE;
2031 if (
m_tauId ==
"rnn001") theConfig =
"SUSYTools/tau_selection_rnn001.conf";
2032 else if (
m_tauId ==
"VeryLoose") theConfig =
"SUSYTools/tau_selection_veryloose.conf";
2033 else if (
m_tauId ==
"Loose") theConfig =
"SUSYTools/tau_selection_loose.conf";
2034 else if (
m_tauId ==
"Medium") theConfig =
"SUSYTools/tau_selection_medium.conf";
2035 else if (
m_tauId ==
"Tight") theConfig =
"SUSYTools/tau_selection_tight.conf";
2038 getTauConfig(theConfig, pT_window, eta_window, elOLR, muVeto, muOLR);
2041 ATH_MSG_WARNING(
"Your tau pt configuration is inconsistent! pre pT cut : " <<
m_tauPrePtCut <<
" / TauSelectionTool window (in MeV) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2042 if(
strict)
return StatusCode::FAILURE;
2045 if(
m_tauPt > 0 and (
m_tauPt != 1000*pT_window[0] or (pT_window[1] > 0 and
m_tauPt > 1000*pT_window[1]))) {
2046 ATH_MSG_WARNING(
"Your tau pt configuration is inconsistent! pT cut : " <<
m_tauPt <<
" / TauSelectionTool window (in Mev) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2047 if(
strict)
return StatusCode::FAILURE;
2051 ATH_MSG_WARNING(
"Your tau eta configuration is inconsistent! eta cut : " <<
m_tauEta <<
" != TauSelectionTool max eta : " << eta_window[eta_window.size()-1]);
2052 if(
strict)
return StatusCode::FAILURE;
2057 return StatusCode::SUCCESS;
◆ ATLAS_THREAD_SAFE [1/2]
std::map<std::string, std::function<bool()> > m_metTriggerFuncs ST::SUSYObjDef_xAOD::ATLAS_THREAD_SAFE |
|
mutableprivate |
◆ ATLAS_THREAD_SAFE [2/2]
std::map<std::string, bool> m_checkedTriggers ST::SUSYObjDef_xAOD::ATLAS_THREAD_SAFE |
|
mutableprivate |
◆ lrt_electrons
◆ lrt_muons
◆ m_acc_eleId
◆ m_acc_eleIdBaseline
◆ m_acc_jetClean
◆ m_acc_photonId
◆ m_acc_photonIdBaseline
◆ m_applyJVTCut
bool ST::SUSYObjDef_xAOD::m_applyJVTCut |
|
protected |
◆ m_autoconfigPRW
bool ST::SUSYObjDef_xAOD::m_autoconfigPRW |
|
protected |
◆ m_autoconfigPRWCombinedmode
bool ST::SUSYObjDef_xAOD::m_autoconfigPRWCombinedmode |
|
protected |
◆ m_autoconfigPRWFile
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWFile |
|
protected |
◆ m_autoconfigPRWPath
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWPath |
|
protected |
◆ m_autoconfigPRWRPVmode
bool ST::SUSYObjDef_xAOD::m_autoconfigPRWRPVmode |
|
protected |
◆ m_autoconfigPRWRtags
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWRtags |
|
protected |
◆ m_badJetCut
std::string ST::SUSYObjDef_xAOD::m_badJetCut |
|
protected |
◆ m_badmuQoverP
double ST::SUSYObjDef_xAOD::m_badmuQoverP |
|
protected |
◆ m_beginInputFileCalled
bool asg::AsgMetadataTool::m_beginInputFileCalled |
|
privateinherited |
Flag helping to discover when the tool misses the opening of the first input file.
Definition at line 126 of file AsgMetadataTool.h.
◆ m_bool_prop_set
std::set<std::string> ST::SUSYObjDef_xAOD::m_bool_prop_set |
|
private |
◆ m_btagEffTool
◆ m_btagEffTool_trkJet
◆ m_bTaggingCalibrationFilePath
std::string ST::SUSYObjDef_xAOD::m_bTaggingCalibrationFilePath |
|
protected |
◆ m_BtagKeyOverride
std::string ST::SUSYObjDef_xAOD::m_BtagKeyOverride |
|
protected |
◆ m_BtagMinPt
double ST::SUSYObjDef_xAOD::m_BtagMinPt |
|
protected |
◆ m_BtagMinPt_trkJet
double ST::SUSYObjDef_xAOD::m_BtagMinPt_trkJet |
|
protected |
◆ m_btagSelTool
◆ m_btagSelTool_OR
◆ m_btagSelTool_trkJet
◆ m_BtagSystStrategy
std::string ST::SUSYObjDef_xAOD::m_BtagSystStrategy |
|
protected |
◆ m_BtagTagger
std::string ST::SUSYObjDef_xAOD::m_BtagTagger |
|
protected |
◆ m_BtagTagger_trkJet
std::string ST::SUSYObjDef_xAOD::m_BtagTagger_trkJet |
|
protected |
◆ m_BtagWP
std::string ST::SUSYObjDef_xAOD::m_BtagWP |
|
protected |
◆ m_BtagWP_trkJet
std::string ST::SUSYObjDef_xAOD::m_BtagWP_trkJet |
|
protected |
◆ m_caloMETsyst
bool ST::SUSYObjDef_xAOD::m_caloMETsyst |
|
protected |
◆ m_commonPRWFileMC20a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20a |
|
protected |
◆ m_commonPRWFileMC20d
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20d |
|
protected |
◆ m_commonPRWFileMC20e
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20e |
|
protected |
◆ m_commonPRWFileMC21a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC21a |
|
protected |
◆ m_commonPRWFileMC23a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23a |
|
protected |
◆ m_commonPRWFileMC23c
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23c |
|
protected |
◆ m_commonPRWFileMC23d
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23d |
|
protected |
◆ m_commonPRWFileMC23e
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23e |
|
protected |
◆ m_conf_to_prop
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_conf_to_prop |
|
private |
◆ m_configFile
std::string ST::SUSYObjDef_xAOD::m_configFile |
|
protected |
◆ m_currentSyst
◆ m_dataSource
int ST::SUSYObjDef_xAOD::m_dataSource |
|
protected |
◆ m_deadHVTool
◆ m_debug
bool ST::SUSYObjDef_xAOD::m_debug |
|
protected |
◆ m_defaultJets
std::string ST::SUSYObjDef_xAOD::m_defaultJets |
|
protected |
◆ m_defaultSyst
◆ m_defaultTrackJets
std::string ST::SUSYObjDef_xAOD::m_defaultTrackJets |
|
protected |
◆ m_defaultTruthJets
std::string ST::SUSYObjDef_xAOD::m_defaultTruthJets |
|
protected |
◆ m_detStore
◆ m_doElIsoSignal
bool ST::SUSYObjDef_xAOD::m_doElIsoSignal |
|
protected |
◆ m_doFwdJVT
bool ST::SUSYObjDef_xAOD::m_doFwdJVT |
|
protected |
◆ m_doIsoSignal
bool ST::SUSYObjDef_xAOD::m_doIsoSignal |
|
protected |
◆ m_doModifiedEleId
bool ST::SUSYObjDef_xAOD::m_doModifiedEleId |
|
protected |
◆ m_doMuIsoSignal
bool ST::SUSYObjDef_xAOD::m_doMuIsoSignal |
|
protected |
◆ m_doPhiReso
bool ST::SUSYObjDef_xAOD::m_doPhiReso |
|
protected |
◆ m_doPhIsoSignal
bool ST::SUSYObjDef_xAOD::m_doPhIsoSignal |
|
protected |
◆ m_doTTVAsf
bool ST::SUSYObjDef_xAOD::m_doTTVAsf |
|
protected |
◆ m_EG_corrFNList
std::string ST::SUSYObjDef_xAOD::m_EG_corrFNList |
|
protected |
◆ m_EG_corrModel
std::string ST::SUSYObjDef_xAOD::m_EG_corrModel |
|
protected |
◆ m_egammaAmbiguityTool
◆ m_egammaCalibTool
◆ m_el_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_el_id_support |
|
protected |
◆ m_el_iso_fallback
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_el_iso_fallback |
|
protected |
◆ m_el_iso_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_el_iso_support |
|
protected |
◆ m_eleAllowRun3TrigSFFallback
bool ST::SUSYObjDef_xAOD::m_eleAllowRun3TrigSFFallback |
|
protected |
◆ m_eleBaselineCrackVeto
bool ST::SUSYObjDef_xAOD::m_eleBaselineCrackVeto |
|
protected |
◆ m_elebaselined0sig
double ST::SUSYObjDef_xAOD::m_elebaselined0sig |
|
protected |
◆ m_eleBaselineEta
double ST::SUSYObjDef_xAOD::m_eleBaselineEta |
|
protected |
◆ m_eleBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_eleBaselineIso_WP |
|
protected |
◆ m_eleBaselinePt
double ST::SUSYObjDef_xAOD::m_eleBaselinePt |
|
protected |
◆ m_elebaselinez0
double ST::SUSYObjDef_xAOD::m_elebaselinez0 |
|
protected |
◆ m_elecChargeEffCorrTool
◆ m_elecChargeIDSelectorTool
◆ m_elecEfficiencySFTool_chf
◆ m_elecEfficiencySFTool_id
◆ m_elecEfficiencySFTool_iso
◆ m_elecEfficiencySFTool_isoHighPt
◆ m_elecEfficiencySFTool_reco
◆ m_elecEfficiencySFTool_trig_mixLep
◆ m_elecEfficiencySFTool_trig_singleLep
◆ m_elecEfficiencySFTool_trigEff_mixLep
◆ m_elecEfficiencySFTool_trigEff_singleLep
◆ m_eleChID_signal
bool ST::SUSYObjDef_xAOD::m_eleChID_signal |
|
protected |
◆ m_eleChID_WP
std::string ST::SUSYObjDef_xAOD::m_eleChID_WP |
|
protected |
◆ m_eleChIso
bool ST::SUSYObjDef_xAOD::m_eleChIso |
|
protected |
◆ m_elecLRTORTool
◆ m_eleConfig
std::string ST::SUSYObjDef_xAOD::m_eleConfig |
|
protected |
◆ m_eleConfigBaseline
std::string ST::SUSYObjDef_xAOD::m_eleConfigBaseline |
|
protected |
◆ m_eleCrackVeto
bool ST::SUSYObjDef_xAOD::m_eleCrackVeto |
|
protected |
◆ m_elecSelLikelihood
◆ m_elecSelLikelihoodBaseline
◆ m_elecTrigEffTools
◆ m_elecTrigSFTools
◆ m_electronTriggerSFStringSingle
std::string ST::SUSYObjDef_xAOD::m_electronTriggerSFStringSingle |
|
protected |
◆ m_eled0sig
double ST::SUSYObjDef_xAOD::m_eled0sig |
|
protected |
◆ m_eleEffMapFilePath
std::string ST::SUSYObjDef_xAOD::m_eleEffMapFilePath |
|
protected |
◆ m_eleEffMapFilePathRun2
std::string ST::SUSYObjDef_xAOD::m_eleEffMapFilePathRun2 |
|
protected |
◆ m_eleEta
double ST::SUSYObjDef_xAOD::m_eleEta |
|
protected |
◆ m_EleFatJetDR
double ST::SUSYObjDef_xAOD::m_EleFatJetDR |
|
protected |
◆ m_eleId
std::string ST::SUSYObjDef_xAOD::m_eleId |
|
protected |
◆ m_eleIdBaseline
std::string ST::SUSYObjDef_xAOD::m_eleIdBaseline |
|
protected |
◆ m_eleIdBaselineDFName
std::string ST::SUSYObjDef_xAOD::m_eleIdBaselineDFName |
|
protected |
◆ m_eleIdDFName
std::string ST::SUSYObjDef_xAOD::m_eleIdDFName |
|
protected |
◆ m_eleIdExpert
bool ST::SUSYObjDef_xAOD::m_eleIdExpert |
|
protected |
◆ m_eleIso_WP
std::string ST::SUSYObjDef_xAOD::m_eleIso_WP |
|
protected |
◆ m_eleIsoHighPt_WP
std::string ST::SUSYObjDef_xAOD::m_eleIsoHighPt_WP |
|
protected |
◆ m_eleIsoHighPtThresh
double ST::SUSYObjDef_xAOD::m_eleIsoHighPtThresh |
|
protected |
◆ m_eleLRT
bool ST::SUSYObjDef_xAOD::m_eleLRT |
|
protected |
◆ m_eleLRT_strat
int ST::SUSYObjDef_xAOD::m_eleLRT_strat |
|
protected |
◆ m_elePt
double ST::SUSYObjDef_xAOD::m_elePt |
|
protected |
◆ m_eleTerm
std::string ST::SUSYObjDef_xAOD::m_eleTerm |
|
protected |
◆ m_elez0
double ST::SUSYObjDef_xAOD::m_elez0 |
|
protected |
◆ m_evtStore
◆ m_fatJets
std::string ST::SUSYObjDef_xAOD::m_fatJets |
|
protected |
◆ m_fatJetUncConfig
std::string ST::SUSYObjDef_xAOD::m_fatJetUncConfig |
|
protected |
◆ m_fatjetUncertaintiesTool
◆ m_fatJetUncVars
std::string ST::SUSYObjDef_xAOD::m_fatJetUncVars |
|
protected |
◆ m_fJvtConfigRun2
std::string ST::SUSYObjDef_xAOD::m_fJvtConfigRun2 |
|
protected |
◆ m_fJvtConfigRun3
std::string ST::SUSYObjDef_xAOD::m_fJvtConfigRun3 |
|
protected |
◆ m_fJvtEtaMin
double ST::SUSYObjDef_xAOD::m_fJvtEtaMin |
|
protected |
◆ m_fJvtPtMax
double ST::SUSYObjDef_xAOD::m_fJvtPtMax |
|
protected |
◆ m_fJvtWP
std::string ST::SUSYObjDef_xAOD::m_fJvtWP |
|
protected |
◆ m_force_noElId
bool ST::SUSYObjDef_xAOD::m_force_noElId |
|
protected |
◆ m_force_noMuId
bool ST::SUSYObjDef_xAOD::m_force_noMuId |
|
protected |
◆ m_gammaTerm
std::string ST::SUSYObjDef_xAOD::m_gammaTerm |
|
protected |
◆ m_GSFLRTCollectionName
◆ m_inputMetaStore
◆ m_inputMETCore
std::string ST::SUSYObjDef_xAOD::m_inputMETCore |
|
protected |
◆ m_inputMETMap
std::string ST::SUSYObjDef_xAOD::m_inputMETMap |
|
protected |
◆ m_inputMETRef
std::string ST::SUSYObjDef_xAOD::m_inputMETRef |
|
protected |
◆ m_inputMETSuffix
std::string ST::SUSYObjDef_xAOD::m_inputMETSuffix |
|
protected |
◆ m_isoBaselineTool
◆ m_IsoCloseByORpassLabel
std::string ST::SUSYObjDef_xAOD::m_IsoCloseByORpassLabel |
|
protected |
◆ m_isoCloseByTool
◆ m_isoCorrTool
◆ m_isoHighPtTool
◆ m_isoTool
◆ m_isPHYSLITE
bool ST::SUSYObjDef_xAOD::m_isPHYSLITE |
|
protected |
◆ m_isRun3
bool ST::SUSYObjDef_xAOD::m_isRun3 |
|
protected |
◆ m_jesCalibArea
std::string ST::SUSYObjDef_xAOD::m_jesCalibArea |
|
protected |
◆ m_jesCalibSeq
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeq |
|
protected |
◆ m_jesCalibSeqFat
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeqFat |
|
protected |
◆ m_jesCalibSeqJMS
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeqJMS |
|
protected |
◆ m_jesConfig
std::string ST::SUSYObjDef_xAOD::m_jesConfig |
|
protected |
◆ m_jesConfigAFII
std::string ST::SUSYObjDef_xAOD::m_jesConfigAFII |
|
protected |
◆ m_jesConfigFat
std::string ST::SUSYObjDef_xAOD::m_jesConfigFat |
|
protected |
◆ m_jesConfigFatData
std::string ST::SUSYObjDef_xAOD::m_jesConfigFatData |
|
protected |
◆ m_jesConfigJMS
std::string ST::SUSYObjDef_xAOD::m_jesConfigJMS |
|
protected |
◆ m_jesConfigJMSData
std::string ST::SUSYObjDef_xAOD::m_jesConfigJMSData |
|
protected |
◆ m_jetCalibTool
◆ m_jetCleanDFName
std::string ST::SUSYObjDef_xAOD::m_jetCleanDFName |
|
protected |
◆ m_jetCleaningTool
◆ m_jetEta
double ST::SUSYObjDef_xAOD::m_jetEta |
|
protected |
◆ m_jetFatCalibTool
◆ m_JetFatJetDR
double ST::SUSYObjDef_xAOD::m_JetFatJetDR |
|
protected |
◆ m_jetfJvtEfficiencyTool
◆ m_jetfJvtSelectionTool
◆ m_jetInputType
int ST::SUSYObjDef_xAOD::m_jetInputType |
|
protected |
◆ m_jetJvt
double ST::SUSYObjDef_xAOD::m_jetJvt |
|
protected |
◆ m_jetJvtUpdateTool
◆ m_jetNNJvtEfficiencyTool
◆ m_jetNNJvtMomentTool
◆ m_jetNNJvtSelectionTool
◆ m_jetPileupLabelingTool
◆ m_jetPt
double ST::SUSYObjDef_xAOD::m_jetPt |
|
protected |
◆ m_jetTerm
std::string ST::SUSYObjDef_xAOD::m_jetTerm |
|
protected |
◆ m_jetTruthLabelingTool
◆ m_JetTruthLabelName
std::string ST::SUSYObjDef_xAOD::m_JetTruthLabelName |
|
protected |
◆ m_jetUncertaintiesAnalysisFile
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesAnalysisFile |
|
protected |
◆ m_jetUncertaintiesCalibArea
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesCalibArea |
|
protected |
◆ m_jetUncertaintiesConfig
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesConfig |
|
protected |
◆ m_jetUncertaintiesMCType
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesMCType |
|
protected |
◆ m_jetUncertaintiesPDsmearing
bool ST::SUSYObjDef_xAOD::m_jetUncertaintiesPDsmearing |
|
protected |
◆ m_jetUncertaintiesPDSmearTool
◆ m_jetUncertaintiesTool
◆ m_JMScalib
bool ST::SUSYObjDef_xAOD::m_JMScalib |
|
protected |
◆ m_JvtConfigRun2
std::string ST::SUSYObjDef_xAOD::m_JvtConfigRun2 |
|
protected |
◆ m_JvtConfigRun3
std::string ST::SUSYObjDef_xAOD::m_JvtConfigRun3 |
|
protected |
◆ m_JvtPtMax
double ST::SUSYObjDef_xAOD::m_JvtPtMax |
|
protected |
◆ m_JvtWP
std::string ST::SUSYObjDef_xAOD::m_JvtWP |
|
protected |
◆ m_label_truthKey
◆ m_legsPerTool
std::map<std::string,std::string> ST::SUSYObjDef_xAOD::m_legsPerTool |
|
protected |
◆ m_legsPerTool_ph
std::map<std::string,std::string> ST::SUSYObjDef_xAOD::m_legsPerTool_ph |
|
protected |
◆ m_LRTCollectionName
◆ m_LRTuncTool
◆ m_mcCampaign
std::string ST::SUSYObjDef_xAOD::m_mcCampaign |
|
protected |
◆ m_mcChannel
int ST::SUSYObjDef_xAOD::m_mcChannel |
|
protected |
◆ m_metDoMuonEloss
bool ST::SUSYObjDef_xAOD::m_metDoMuonEloss |
|
protected |
◆ m_metDoRemoveMuonJets
bool ST::SUSYObjDef_xAOD::m_metDoRemoveMuonJets |
|
protected |
◆ m_metDoSetMuonJetEMScale
bool ST::SUSYObjDef_xAOD::m_metDoSetMuonJetEMScale |
|
protected |
◆ m_metGreedyPhotons
bool ST::SUSYObjDef_xAOD::m_metGreedyPhotons |
|
protected |
◆ m_metJetSelection
std::string ST::SUSYObjDef_xAOD::m_metJetSelection |
|
protected |
◆ m_metMaker
◆ m_metRemoveOverlappingCaloTaggedMuons
bool ST::SUSYObjDef_xAOD::m_metRemoveOverlappingCaloTaggedMuons |
|
protected |
◆ m_metSignif
◆ m_metsysConfigPrefix
std::string ST::SUSYObjDef_xAOD::m_metsysConfigPrefix |
|
protected |
◆ m_metSystTool
◆ m_metUseGhostMuons
bool ST::SUSYObjDef_xAOD::m_metUseGhostMuons |
|
protected |
◆ m_metVeryGreedyPhotons
bool ST::SUSYObjDef_xAOD::m_metVeryGreedyPhotons |
|
protected |
◆ m_mu_id_support
int ST::SUSYObjDef_xAOD::m_mu_id_support |
|
protected |
◆ m_mu_iso_fallback
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_mu_iso_fallback |
|
protected |
◆ m_mu_iso_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_mu_iso_support |
|
protected |
◆ m_mubaselined0sig
double ST::SUSYObjDef_xAOD::m_mubaselined0sig |
|
protected |
◆ m_muBaselineEta
double ST::SUSYObjDef_xAOD::m_muBaselineEta |
|
protected |
◆ m_muBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_muBaselineIso_WP |
|
protected |
◆ m_muBaselinePt
double ST::SUSYObjDef_xAOD::m_muBaselinePt |
|
protected |
◆ m_mubaselinez0
double ST::SUSYObjDef_xAOD::m_mubaselinez0 |
|
protected |
◆ m_muCalibrationMode
int ST::SUSYObjDef_xAOD::m_muCalibrationMode |
|
protected |
◆ m_muCosmicd0
double ST::SUSYObjDef_xAOD::m_muCosmicd0 |
|
protected |
◆ m_muCosmicz0
double ST::SUSYObjDef_xAOD::m_muCosmicz0 |
|
protected |
◆ m_mud0sig
double ST::SUSYObjDef_xAOD::m_mud0sig |
|
protected |
◆ m_muEffCorrForce1D
bool ST::SUSYObjDef_xAOD::m_muEffCorrForce1D |
|
protected |
◆ m_muEta
double ST::SUSYObjDef_xAOD::m_muEta |
|
protected |
◆ m_muHighPtExtraSmear
bool ST::SUSYObjDef_xAOD::m_muHighPtExtraSmear |
|
protected |
◆ m_muId
int ST::SUSYObjDef_xAOD::m_muId |
|
protected |
◆ m_muIdBaseline
int ST::SUSYObjDef_xAOD::m_muIdBaseline |
|
protected |
◆ m_muIso_WP
std::string ST::SUSYObjDef_xAOD::m_muIso_WP |
|
protected |
◆ m_muIsoHighPt_WP
std::string ST::SUSYObjDef_xAOD::m_muIsoHighPt_WP |
|
protected |
◆ m_muIsoHighPtThresh
double ST::SUSYObjDef_xAOD::m_muIsoHighPtThresh |
|
protected |
◆ m_muLRT
bool ST::SUSYObjDef_xAOD::m_muLRT |
|
protected |
◆ m_muonCalibTool
◆ m_muonEfficiencyBMHighPtSFTool
◆ m_muonEfficiencySFTool
◆ m_muonHighPtIsolationSFTool
◆ m_muonIsolationSFTool
◆ m_muonLRTORTool
◆ m_muonSelectionHighPtTool
◆ m_muonSelectionTool
◆ m_muonSelectionToolBaseline
◆ m_muonTerm
std::string ST::SUSYObjDef_xAOD::m_muonTerm |
|
protected |
◆ m_muonTriggerSFTool
◆ m_muonTrigSFTools
◆ m_muonTTVAEfficiencySFTool
◆ m_muPt
double ST::SUSYObjDef_xAOD::m_muPt |
|
protected |
◆ m_murequirepassedHighPtCuts
bool ST::SUSYObjDef_xAOD::m_murequirepassedHighPtCuts |
|
protected |
◆ m_muz0
double ST::SUSYObjDef_xAOD::m_muz0 |
|
protected |
◆ m_orApplyRelPt
bool ST::SUSYObjDef_xAOD::m_orApplyRelPt |
|
protected |
◆ m_orBJetPtUpperThres
double ST::SUSYObjDef_xAOD::m_orBJetPtUpperThres |
|
protected |
◆ m_orBoostedElectronC1
double ST::SUSYObjDef_xAOD::m_orBoostedElectronC1 |
|
protected |
◆ m_orBoostedElectronC2
double ST::SUSYObjDef_xAOD::m_orBoostedElectronC2 |
|
protected |
◆ m_orBoostedElectronMaxConeSize
double ST::SUSYObjDef_xAOD::m_orBoostedElectronMaxConeSize |
|
protected |
◆ m_orBoostedMuonC1
double ST::SUSYObjDef_xAOD::m_orBoostedMuonC1 |
|
protected |
◆ m_orBoostedMuonC2
double ST::SUSYObjDef_xAOD::m_orBoostedMuonC2 |
|
protected |
◆ m_orBoostedMuonMaxConeSize
double ST::SUSYObjDef_xAOD::m_orBoostedMuonMaxConeSize |
|
protected |
◆ m_orBtagWP
std::string ST::SUSYObjDef_xAOD::m_orBtagWP |
|
protected |
◆ m_orDoBjet
bool ST::SUSYObjDef_xAOD::m_orDoBjet |
|
protected |
◆ m_orDoBoostedElectron
bool ST::SUSYObjDef_xAOD::m_orDoBoostedElectron |
|
protected |
◆ m_orDoBoostedMuon
bool ST::SUSYObjDef_xAOD::m_orDoBoostedMuon |
|
protected |
◆ m_orDoElBjet
bool ST::SUSYObjDef_xAOD::m_orDoElBjet |
|
protected |
◆ m_orDoEleJet
bool ST::SUSYObjDef_xAOD::m_orDoEleJet |
|
protected |
◆ m_orDoElEl
bool ST::SUSYObjDef_xAOD::m_orDoElEl |
|
protected |
◆ m_orDoElMu
bool ST::SUSYObjDef_xAOD::m_orDoElMu |
|
protected |
◆ m_orDoFatjets
bool ST::SUSYObjDef_xAOD::m_orDoFatjets |
|
protected |
◆ m_orDoMuBjet
bool ST::SUSYObjDef_xAOD::m_orDoMuBjet |
|
protected |
◆ m_orDoMuonJet
bool ST::SUSYObjDef_xAOD::m_orDoMuonJet |
|
protected |
◆ m_orDoMuonJetGhostAssociation
bool ST::SUSYObjDef_xAOD::m_orDoMuonJetGhostAssociation |
|
protected |
◆ m_orDoPhoton
bool ST::SUSYObjDef_xAOD::m_orDoPhoton |
|
protected |
◆ m_orDoTau
bool ST::SUSYObjDef_xAOD::m_orDoTau |
|
protected |
◆ m_orDoTauBjet
bool ST::SUSYObjDef_xAOD::m_orDoTauBjet |
|
protected |
◆ m_orInputLabel
std::string ST::SUSYObjDef_xAOD::m_orInputLabel |
|
protected |
◆ m_orLinkOverlapObjects
bool ST::SUSYObjDef_xAOD::m_orLinkOverlapObjects |
|
protected |
◆ m_orMuJetInnerDR
double ST::SUSYObjDef_xAOD::m_orMuJetInnerDR |
|
protected |
◆ m_orMuJetPtRatio
double ST::SUSYObjDef_xAOD::m_orMuJetPtRatio |
|
protected |
◆ m_orMuJetTrkPtRatio
double ST::SUSYObjDef_xAOD::m_orMuJetTrkPtRatio |
|
protected |
◆ m_orPhotonFavoured
bool ST::SUSYObjDef_xAOD::m_orPhotonFavoured |
|
protected |
◆ m_orRemoveCaloMuons
bool ST::SUSYObjDef_xAOD::m_orRemoveCaloMuons |
|
protected |
◆ m_orToolbox
◆ m_outElectronLocation
◆ m_outMETTerm
std::string ST::SUSYObjDef_xAOD::m_outMETTerm |
|
protected |
◆ m_outMuonLocation
◆ m_outputMetaStore
◆ m_ph_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_ph_id_support |
|
protected |
◆ m_photonAllowLate
bool ST::SUSYObjDef_xAOD::m_photonAllowLate |
|
protected |
◆ m_photonBaselineCrackVeto
bool ST::SUSYObjDef_xAOD::m_photonBaselineCrackVeto |
|
protected |
◆ m_photonBaselineEta
double ST::SUSYObjDef_xAOD::m_photonBaselineEta |
|
protected |
◆ m_photonBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_photonBaselineIso_WP |
|
protected |
◆ m_photonBaselinePt
double ST::SUSYObjDef_xAOD::m_photonBaselinePt |
|
protected |
◆ m_photonCrackVeto
bool ST::SUSYObjDef_xAOD::m_photonCrackVeto |
|
protected |
◆ m_photonEfficiencySFTool
◆ m_photonEfficiencySFTool_trigEff_AsymDiphoton
◆ m_photonEfficiencySFTool_trigSF_AsymDiphoton
◆ m_photonEta
double ST::SUSYObjDef_xAOD::m_photonEta |
|
protected |
◆ m_photonId
std::string ST::SUSYObjDef_xAOD::m_photonId |
|
protected |
◆ m_photonIdBaseline
std::string ST::SUSYObjDef_xAOD::m_photonIdBaseline |
|
protected |
◆ m_photonIdBaselineDFName
std::string ST::SUSYObjDef_xAOD::m_photonIdBaselineDFName |
|
protected |
◆ m_photonIdDFName
std::string ST::SUSYObjDef_xAOD::m_photonIdDFName |
|
protected |
◆ m_photonIso_WP
std::string ST::SUSYObjDef_xAOD::m_photonIso_WP |
|
protected |
◆ m_photonIsolationSFTool
◆ m_photonPt
double ST::SUSYObjDef_xAOD::m_photonPt |
|
protected |
◆ m_photonSelIsEM
◆ m_photonSelIsEMBaseline
◆ m_photonTrigEffTools
◆ m_photonTriggerName
std::string ST::SUSYObjDef_xAOD::m_photonTriggerName |
|
protected |
◆ m_photonTriggerSFTool
◆ m_photonTrigSFTools
◆ m_pmgSHnjetWeighter
◆ m_pmgSHnjetWeighterWZ
◆ m_prwActualMu2017File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2017File |
|
protected |
◆ m_prwActualMu2018File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2018File |
|
protected |
◆ m_prwActualMu2022File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2022File |
|
protected |
◆ m_prwActualMu2023File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2023File |
|
protected |
◆ m_prwActualMu2024File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2024File |
|
protected |
◆ m_prwConfFiles
std::vector<std::string> ST::SUSYObjDef_xAOD::m_prwConfFiles |
|
protected |
◆ m_prwDataSF
double ST::SUSYObjDef_xAOD::m_prwDataSF |
|
protected |
◆ m_prwDataSF_DW
double ST::SUSYObjDef_xAOD::m_prwDataSF_DW |
|
protected |
◆ m_prwDataSF_UP
double ST::SUSYObjDef_xAOD::m_prwDataSF_UP |
|
protected |
◆ m_prwLcalcFiles
std::vector<std::string> ST::SUSYObjDef_xAOD::m_prwLcalcFiles |
|
protected |
◆ m_prwTool
◆ m_runDepPrescaleWeightPRW
bool ST::SUSYObjDef_xAOD::m_runDepPrescaleWeightPRW |
|
protected |
◆ m_runECIS
bool ST::SUSYObjDef_xAOD::m_runECIS |
|
protected |
◆ m_showerType
int ST::SUSYObjDef_xAOD::m_showerType |
|
protected |
◆ m_slices
std::map<std::string,bool> ST::SUSYObjDef_xAOD::m_slices |
|
protected |
◆ m_softTermParam
int ST::SUSYObjDef_xAOD::m_softTermParam |
|
protected |
◆ m_strictConfigCheck
bool ST::SUSYObjDef_xAOD::m_strictConfigCheck |
|
protected |
◆ m_subtool_init
bool ST::SUSYObjDef_xAOD::m_subtool_init |
|
protected |
◆ m_tau_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_tau_id_support |
|
protected |
◆ m_tau_trig_support
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_tau_trig_support |
|
protected |
◆ m_tauConfigPath
std::string ST::SUSYObjDef_xAOD::m_tauConfigPath |
|
protected |
◆ m_tauConfigPathBaseline
std::string ST::SUSYObjDef_xAOD::m_tauConfigPathBaseline |
|
protected |
◆ m_tauConfigReader
TEnv ST::SUSYObjDef_xAOD::m_tauConfigReader |
|
protected |
◆ m_tauDoTTM
bool ST::SUSYObjDef_xAOD::m_tauDoTTM |
|
protected |
◆ m_tauEffTool
◆ m_tauEta
double ST::SUSYObjDef_xAOD::m_tauEta |
|
protected |
◆ m_tauId
std::string ST::SUSYObjDef_xAOD::m_tauId |
|
protected |
◆ m_tauIdBaseline
std::string ST::SUSYObjDef_xAOD::m_tauIdBaseline |
|
protected |
◆ m_tauJetORtool
◆ m_tauPrePtCut
double ST::SUSYObjDef_xAOD::m_tauPrePtCut |
|
protected |
◆ m_tauPt
double ST::SUSYObjDef_xAOD::m_tauPt |
|
protected |
◆ m_tauSelTool
◆ m_tauSelToolBaseline
◆ m_tauSmearingTool
◆ m_tauSmearingToolGenerator
std::string ST::SUSYObjDef_xAOD::m_tauSmearingToolGenerator |
|
protected |
◆ m_tauSmearingToolRecommendationTag
std::string ST::SUSYObjDef_xAOD::m_tauSmearingToolRecommendationTag |
|
protected |
◆ m_tauTerm
std::string ST::SUSYObjDef_xAOD::m_tauTerm |
|
protected |
◆ m_tauTrigEffTool
◆ m_tauTruthMatch
◆ m_tool_init
bool ST::SUSYObjDef_xAOD::m_tool_init |
|
protected |
◆ m_TopconfigReader
TEnv ST::SUSYObjDef_xAOD::m_TopconfigReader |
|
protected |
◆ m_TopDecorName
std::string ST::SUSYObjDef_xAOD::m_TopDecorName |
|
protected |
◆ m_ToptagConfig
std::string ST::SUSYObjDef_xAOD::m_ToptagConfig |
|
protected |
◆ m_TopTaggerCalibArea
std::string ST::SUSYObjDef_xAOD::m_TopTaggerCalibArea |
|
protected |
◆ m_TopTaggerTool
◆ m_TopTagjetUncertaintiesTool
◆ m_TopTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_TopTagUncConfig |
|
protected |
◆ m_treatPUJets
bool ST::SUSYObjDef_xAOD::m_treatPUJets |
|
protected |
◆ m_trig2015combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_diLep |
|
protected |
◆ m_trig2015combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_diPhoton |
|
protected |
◆ m_trig2015combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_multiLep |
|
protected |
◆ m_trig2015combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_singleLep |
|
protected |
◆ m_trig2016combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_diLep |
|
protected |
◆ m_trig2016combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_diPhoton |
|
protected |
◆ m_trig2016combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_multiLep |
|
protected |
◆ m_trig2016combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_singleLep |
|
protected |
◆ m_trig2017combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_diLep |
|
protected |
◆ m_trig2017combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_diPhoton |
|
protected |
◆ m_trig2017combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_multiLep |
|
protected |
◆ m_trig2017combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_singleLep |
|
protected |
◆ m_trig2018combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_diLep |
|
protected |
◆ m_trig2018combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_diPhoton |
|
protected |
◆ m_trig2018combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_multiLep |
|
protected |
◆ m_trig2018combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_singleLep |
|
protected |
◆ m_trig2022combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_diLep |
|
protected |
◆ m_trig2022combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_diPhoton |
|
protected |
◆ m_trig2022combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_multiLep |
|
protected |
◆ m_trig2022combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_singleLep |
|
protected |
◆ m_trigConfTool
◆ m_trigDecTool
◆ m_trigDRScoringTool
◆ m_triggerCacheMutex
std::mutex ST::SUSYObjDef_xAOD::m_triggerCacheMutex |
|
mutableprivate |
◆ m_trigGlobalEffCorrTool_diLep
◆ m_trigGlobalEffCorrTool_diPhoton
◆ m_trigGlobalEffCorrTool_multiLep
◆ m_trigMatchingPrefix
std::string ST::SUSYObjDef_xAOD::m_trigMatchingPrefix |
|
protected |
Use composite trigger matching tool if matching was done upstream.
Definition at line 523 of file SUSYObjDef_xAOD.h.
◆ m_trigMatchingTool
◆ m_trigMatchScoringTool
◆ m_trigNToys_diLep
int ST::SUSYObjDef_xAOD::m_trigNToys_diLep |
|
protected |
◆ m_trigNToys_diPhoton
int ST::SUSYObjDef_xAOD::m_trigNToys_diPhoton |
|
protected |
◆ m_trigNToys_multiLep
int ST::SUSYObjDef_xAOD::m_trigNToys_multiLep |
|
protected |
◆ m_trkJetEta
double ST::SUSYObjDef_xAOD::m_trkJetEta |
|
protected |
◆ m_trkJetPt
double ST::SUSYObjDef_xAOD::m_trkJetPt |
|
protected |
◆ m_trkJetsyst
bool ST::SUSYObjDef_xAOD::m_trkJetsyst |
|
protected |
◆ m_trkMETsyst
bool ST::SUSYObjDef_xAOD::m_trkMETsyst |
|
protected |
◆ m_upstreamTriggerMatching
bool ST::SUSYObjDef_xAOD::m_upstreamTriggerMatching |
|
protected |
◆ m_useBtagging
bool ST::SUSYObjDef_xAOD::m_useBtagging |
|
protected |
◆ m_useBtagging_trkJet
bool ST::SUSYObjDef_xAOD::m_useBtagging_trkJet |
|
protected |
◆ m_useCommonPRWFiles
bool ST::SUSYObjDef_xAOD::m_useCommonPRWFiles |
|
protected |
◆ m_useIncidents
bool asg::AsgMetadataTool::m_useIncidents |
|
privateinherited |
◆ m_useSigLepForIsoCloseByOR
bool ST::SUSYObjDef_xAOD::m_useSigLepForIsoCloseByOR |
|
protected |
◆ m_useTRUTH3
bool ST::SUSYObjDef_xAOD::m_useTRUTH3 |
|
protected |
◆ m_v_trigs15_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_diLep |
|
private |
◆ m_v_trigs15_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_multiLep |
|
private |
◆ m_v_trigs15_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_singleEle |
|
private |
◆ m_v_trigs15_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_singleLep |
|
private |
◆ m_v_trigs16_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_diLep |
|
private |
◆ m_v_trigs16_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_multiLep |
|
private |
◆ m_v_trigs16_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_singleEle |
|
private |
◆ m_v_trigs16_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_singleLep |
|
private |
◆ m_v_trigs17_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_diLep |
|
private |
◆ m_v_trigs17_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_multiLep |
|
private |
◆ m_v_trigs17_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_singleEle |
|
private |
◆ m_v_trigs17_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_singleLep |
|
private |
◆ m_v_trigs18_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_diLep |
|
private |
◆ m_v_trigs18_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_multiLep |
|
private |
◆ m_v_trigs18_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_singleEle |
|
private |
◆ m_v_trigs18_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_singleLep |
|
private |
◆ m_v_trigs22_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_diLep |
|
private |
◆ m_v_trigs22_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_multiLep |
|
private |
◆ m_v_trigs22_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_singleEle |
|
private |
◆ m_v_trigs22_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_singleLep |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_WconfigReader
TEnv ST::SUSYObjDef_xAOD::m_WconfigReader |
|
protected |
◆ m_WDecorName
std::string ST::SUSYObjDef_xAOD::m_WDecorName |
|
protected |
◆ m_WtagConfig
std::string ST::SUSYObjDef_xAOD::m_WtagConfig |
|
protected |
◆ m_WTaggerTool
◆ m_WTagjetUncertaintiesTool
◆ m_WTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_WTagUncConfig |
|
protected |
◆ m_WZTaggerCalibArea
std::string ST::SUSYObjDef_xAOD::m_WZTaggerCalibArea |
|
protected |
◆ m_ZconfigReader
TEnv ST::SUSYObjDef_xAOD::m_ZconfigReader |
|
protected |
◆ m_ZDecorName
std::string ST::SUSYObjDef_xAOD::m_ZDecorName |
|
protected |
◆ m_ZtagConfig
std::string ST::SUSYObjDef_xAOD::m_ZtagConfig |
|
protected |
◆ m_ZTaggerTool
◆ m_ZTagjetUncertaintiesTool
◆ m_ZTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_ZTagUncConfig |
|
protected |
◆ prompt_electrons
◆ prompt_muons
The documentation for this class was generated from the following files:
std::vector< std::string > m_v_trigs15_cache_singleLep
def retrieve(aClass, aKey=None)
bool m_autoconfigPRWCombinedmode
double GetTauTriggerEfficiencySF(const xAOD::TauJet &tau, const std::string &trigExpr="tau25_medium1_tracktwo") override final
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonEfficiencySFTool
bool emulateHLT(const std::string &triggerName) const
const std::string bJetLabel
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoHighPtTool
std::string m_photonIdBaselineDFName
std::string m_autoconfigPRWRtags
SG::WriteHandleKey< xAOD::ElectronContainer > m_outElectronLocation
virtual double pt() const override final
The transverse momentum ( ) of the particle.
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_GSFLRTCollectionName
double m_orBoostedElectronC1
@ numberOfPixelHoles
number of pixel layers on track with absence of hits [unit8_t].
double m_photonBaselinePt
bool IsHighPtMuon(const xAOD::Muon &input) const override final
StatusCode MergeElectrons(const xAOD::ElectronContainer &electrons, xAOD::ElectronContainer *outputCol, const std::set< const xAOD::Electron * > &ElectronsToRemove) const override final
asg::AnaToolHandle< IAsgDeadHVCellRemovalTool > m_deadHVTool
asg::AnaToolHandle< CP::IJvtEfficiencyTool > m_jetfJvtEfficiencyTool
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > m_tauSelTool
double GetEleTriggerEfficiencySF(const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final
std::string m_trig2022combination_multiLep
std::string m_commonPRWFileMC23e
double GetTotalTauSF(const xAOD::TauJetContainer &taus, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final
bool m_metDoSetMuonJetEMScale
std::vector< std::string > m_v_trigs18_cache_diLep
Const iterator class for DataVector/DataList.
float BtagSF(const xAOD::JetContainer *jets) override final
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_ZTagjetUncertaintiesTool
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_multiLep
int IsTrackBJetContinuous(const xAOD::Jet &input) const override final
bool IsTruthBJet(const xAOD::Jet &input) const override final
Electron_v1 Electron
Definition of the current "egamma version".
Egamma_v1 Egamma
Definition of the current "egamma version".
std::string m_trig2022combination_diPhoton
std::mutex m_triggerCacheMutex
std::string m_jetUncertaintiesCalibArea
std::string m_prwActualMu2022File
std::string m_jesConfigAFII
std::string m_BtagSystStrategy
std::string m_tauIdBaseline
bool IsSignalElectron(const xAOD::Electron &input, const float etcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecChargeEffCorrTool
StatusCode prepareLRTMuons(const xAOD::MuonContainer *inMuons, xAOD::MuonContainer *copy) const override final
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > m_photonTrigEffTools
double JVT_SFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
std::string m_eleIsoHighPt_WP
bool m_eleAllowRun3TrigSFFallback
asg::AnaToolHandle< CP::IEgammaCalibrationAndSmearingTool > m_egammaCalibTool
Combined electron collection.
double GetTotalMuonTriggerSF(const xAOD::MuonContainer &sfmuons, const std::string &trigExpr) override final
std::string m_trig2016combination_diPhoton
virtual CorrectionCode getTriggerEfficiency(const xAOD::Muon &mu, Double_t &efficiency, const std::string &trigger, Bool_t dataType) const =0
const std::vector< std::string > split(const std::string &s, const std::string &delim) const
const xAOD::ElectronContainer * prompt_electrons
bool m_metDoRemoveMuonJets
std::vector< CP::SystematicSet > make_systematics_vector(const SystematicSet &systematics)
utility functions for working with systematics
std::string find(const std::string &s)
return a remapped string
SG::ReadDecorHandleKey< xAOD::JetContainer > m_label_truthKey
std::map< std::string, std::string > m_conf_to_prop
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonEfficiencyBMHighPtSFTool
asg::AnaToolHandle< IWeightTool > m_pmgSHnjetWeighterWZ
virtual StatusCode rebuildJetMET(const std::string &metJetKey, const std::string &metSoftKey, xAOD::MissingETContainer *metCont, const xAOD::JetContainer *jets, const xAOD::MissingETContainer *metCoreCont, xAOD::MissingETAssociationHelper &helper, bool doJetJVT)=0
bool IsBJet(const xAOD::Jet &input) const override final
std::vector< std::string > m_v_trigs15_cache_multiLep
std::map< std::string, std::string > m_legsPerTool
std::string m_ZTagUncConfig
std::string m_tauSmearingToolGenerator
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_diPhoton
bool m_photonBaselineCrackVeto
virtual StatusCode markInvisible(const xAOD::IParticleContainer *collection, xAOD::MissingETAssociationHelper &helper, xAOD::MissingETContainer *metCont)=0
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_reco
Combined muon collection.
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
void getTauConfig(const std::string &tauConfigPath, std::vector< float > &pT_window, std::vector< float > &eta_window, bool &eleOLR, bool &muVeto, bool &muOLR) const
static StatusCode setProperty(const std::string &name, const std::string &property, const W &value, bool override=true)
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecSelLikelihood
std::vector< std::string > GetTriggerOR(const std::string &trigExpr) const
asg::AnaToolHandle< IJetUpdateJvt > m_jetJvtUpdateTool
StatusCode FillMuon(xAOD::Muon &input, const float ptcut, const float etacut) override final
size_t size() const
returns: size of the set
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > m_elecEfficiencySFTool_trig_mixLep
void GetTriggerTokens(std::string, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
double GetTotalMuonSF(const xAOD::MuonContainer &muons, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final
asg::AnaToolHandle< JetPileupTag::JetVertexNNTagger > m_jetNNJvtMomentTool
bool IsBadMuon(const xAOD::Muon &input, const float qopcut) const override final
const xAOD::MuonContainer * lrt_muons
std::string m_fJvtConfigRun2
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonTriggerSFTool
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoBaselineTool
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > m_elecTrigEffTools
std::string m_JvtConfigRun2
asg::AnaToolHandle< TauAnalysisTools::ITauSmearingTool > m_tauSmearingTool
std::vector< std::string > m_v_trigs17_cache_singleEle
bool IsCosmicMuon(const xAOD::Muon &input, const float z0cut, const float d0cut) const override final
double d0significance(const xAOD::TrackParticle *tp, double d0_uncert_beam_spot_2)
std::vector< std::string > m_el_iso_support
const TruthParticle * truthParticle(size_t index) const
Get a pointer to one of the truth particles.
StatusCode recommendedTools(const ORFlags &flags, ToolBox &toolBox)
Pre-configured standard recommended OR tools.
std::string m_trig2015combination_singleLep
void configFromFile(bool &property, const std::string &propname, TEnv &rEnv, bool defaultValue)
bool m_metRemoveOverlappingCaloTaggedMuons
asg::AnaToolHandle< IMETMaker > m_metMaker
StatusCode FillElectron(xAOD::Electron &input, const float etcut, const float etacut) override final
std::string m_trig2018combination_diPhoton
Class to wrap a set of SystematicVariations.
asg::AnaToolHandle< Trig::IMatchScoringTool > m_trigMatchScoringTool
float GetTotalElectronSF(const xAOD::ElectronContainer &electrons, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final
asg::AnaToolHandle< JSSWTopTaggerDNN > m_TopTaggerTool
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
std::string m_photonIso_WP
StatusCode prepareLRTElectrons(const xAOD::ElectronContainer *inMuons, xAOD::ElectronContainer *copy) const override final
const T * get(size_type n) const
Access an element, as an rvalue.
SG::AuxElement::ConstAccessor< char > m_acc_jetClean
std::vector< std::string > m_v_trigs18_cache_singleLep
std::string name() const
returns: the systematics joined into a single string.
float GetSignalElecSF(const xAOD::Electron &el, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final
float beamPosSigmaX() const
The width of the beam spot in the X direction.
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonTTVAEfficiencySFTool
std::map< std::string, std::string > m_el_iso_fallback
const char * name() const
Get the name of the container instance.
SG::AuxElement::ConstAccessor< char > m_acc_eleId
std::string m_commonPRWFileMC21a
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
std::string m_prwActualMu2024File
bool IsSignalPhoton(const xAOD::Photon &input, const float ptcut, const float etacut=DUMMYDEF) const override final
virtual double GetSignificance() const =0
@ numberOfTRTHits
number of TRT hits [unit8_t].
bool m_orDoTau
Overlap removal options.
std::vector< std::string > m_v_trigs18_cache_singleEle
const uint32_t BADCLUSELECTRON
asg::AnaToolHandle< CP::IPileupReweightingTool > m_prwTool
std::string m_muBaselineIso_WP
std::string m_trig2016combination_multiLep
std::string m_inputMETSuffix
asg::AnaToolHandle< SmoothedWZTagger > m_WTaggerTool
Helper class to provide constant type-safe access to aux data.
std::string m_eleConfigBaseline
const xAOD::Vertex * GetPrimVtx() const override final
std::vector< std::string > m_v_trigs22_cache_singleLep
std::string m_bTaggingCalibrationFilePath
std::vector< std::string > m_v_trigs22_cache_singleEle
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > m_photonTrigSFTools
#define ATH_MSG_VERBOSE(x)
asg::AnaToolHandle< Trig::IMatchingTool > m_trigMatchingTool
const std::string & key() const
Return the StoreGate ID for the referenced object.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_jetUncertaintiesPDSmearTool
StatusCode FillJet(xAOD::Jet &input, const bool doCalib=true, bool isFat=false, bool doLargeRdecorations=false) override final
bool IsSignalMuon(const xAOD::Muon &input, const float ptcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final
double m_elebaselined0sig
Class providing the definition of the 4-vector interface.
asg::AnaToolHandle< CP::IElectronLRTOverlapRemovalTool > m_elecLRTORTool
std::string m_trig2017combination_diPhoton
double GetSignalPhotonSFsys(const xAOD::Photon &ph, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final
std::vector< std::string > m_mu_iso_support
std::vector< std::string > m_tau_id_support
bool is_same_particle(const T1 &p1, const T2 &p2)
Method to establish if two particles in the GenEvent actually represent the same particle.
@ numberOfBLayerHits
these are the hits in the first pixel layer, i.e.
std::string m_fatJetUncVars
virtual StatusCode rebuildMET(const std::string &metKey, xAOD::Type::ObjectType metType, xAOD::MissingETContainer *metCont, const xAOD::IParticleContainer *collection, xAOD::MissingETAssociationHelper &helper, MissingETBase::UsageHandler::Policy objScale=MissingETBase::UsageHandler::PhysicsObject)=0
std::string m_eleEffMapFilePath
uint32_t runNumber() const
The current event's run number.
std::string m_eleIdBaseline
bool isVariation(const CP::SystematicSet &syst) const
float BtagSF_trkJet(const xAOD::JetContainer *trkjets) override final
ORUtils::ToolBox m_orToolbox
std::string m_tauConfigPath
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_LRTCollectionName
double m_photonBaselineEta
virtual void setOwner(IDataHandleHolder *o)=0
std::vector< std::string > m_v_trigs15_cache_singleEle
asg::AnaToolHandle< CP::IMuonLRTOverlapRemovalTool > m_muonLRTORTool
std::string m_commonPRWFileMC20d
const xAOD::TrackParticleContainer & GetInDetLargeD0GSFTracks(const EventContext &ctx) const override final
bool IsTrackBJet(const xAOD::Jet &input) const override final
asg::AnaToolHandle< IBTaggingEfficiencyTool > m_btagEffTool_trkJet
StatusCode FillTrackJet(xAOD::Jet &input) override final
double FJVT_SFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
StatusCode buildMETSum(const std::string &totalName, xAOD::MissingETContainer *metCont)
uint32_t mcChannelNumber() const
The MC generator's channel number.
std::vector< std::string > m_v_trigs17_cache_diLep
std::map< std::string, bool > m_slices
bool m_orLinkOverlapObjects
std::string m_eleEffMapFilePathRun2
@ JetConstitScaleMomentum
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_isoHighPt
std::string m_trig2018combination_singleLep
double m_orBoostedMuonMaxConeSize
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonEfficiencySFTool
virtual CorrectionCode getTriggerScaleFactor(const xAOD::MuonContainer &mucont, Double_t &triggersf, const std::string &trigger) const =0
std::map< std::string, std::string > m_tau_trig_support
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_diLep
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
std::string m_WZTaggerCalibArea
std::vector< std::string > m_prwLcalcFiles
bool passOQquality(const xAOD::Photon &ph)
Helper to ease the implemmantation of the pass Quality requirements.
@ OutOfValidityRange
Input object is out of validity range.
SG::AuxElement::ConstAccessor< char > m_acc_photonIdBaseline
std::vector< std::string > m_el_id_support
@ Error
Some error happened during the object correction.
std::string m_defaultJets
std::vector< std::string > m_ph_id_support
StatusCode SUSYToolsInit()
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > m_elecEfficiencySFTool_trigEff_mixLep
void addGhostMuonsToJets(const xAOD::MuonContainer &muons, xAOD::JetContainer &jets)
std::string m_TopTaggerCalibArea
bool isWeight(const CP::SystematicSet &systSet) const
std::string m_fatJetUncConfig
int IsBJetContinuous(const xAOD::Jet &input) const override final
unsigned int GetRunNumber() const override final
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_id
Handle class for reading a decoration on an object.
StatusCode readConfig() override final
bool pc(const std::string &taggername, double &value) const
virtual asg::AcceptData accept(const xAOD::IParticle *part) const =0
accept with pointer to IParticle so as to not hide the IAsgSelectionTool one
std::string m_IsoCloseByORpassLabel
const xAOD::ElectronContainer * lrt_electrons
std::string m_tauSmearingToolRecommendationTag
Helper class to provide type-safe access to aux data.
std::string m_jetUncertaintiesConfig
Prefix for trigger matchiing container name.
asg::AnaToolHandle< IJetCalibrationTool > m_jetCalibTool
std::map< std::string, std::string > m_mu_iso_fallback
std::vector< std::string > m_v_trigs22_cache_multiLep
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > m_photonEfficiencySFTool_trigEff_AsymDiphoton
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > m_photonEfficiencySFTool_trigSF_AsymDiphoton
bool isNominal(const CP::SystematicSet &syst) const
double GetMuonTriggerEfficiency(const xAOD::Muon &mu, const std::string &trigExpr, const bool isdata=false) override final
double deltaR(double rapidity1, double phi1, double rapidity2, double phi2)
from bare bare rapidity,phi
std::string m_jesCalibArea
float nSCTHits(const U &p)
const uint16_t AuthorAmbiguous
Object Reconstructed by standard cluster-based algorithm.
std::string m_trig2017combination_singleLep
float nTRTHits(const U &p)
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonIsolationSFTool
std::string m_jetCleanDFName
std::string m_jesCalibSeq
::StatusCode StatusCode
StatusCode definition for legacy code.
SystType getSystType(const CP::SystematicVariation &systematic)
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_jetUncertaintiesTool
bool IsSignalJet(const xAOD::Jet &input, const float ptcut, const float etacut) const override final
Class describing a truth particle in the MC record.
Class describing a tau jet.
std::vector< std::string > m_v_trigs17_cache_singleLep
asg::AnaToolHandle< CP::IMuonCalibrationAndSmearingTool > m_muonCalibTool
asg::AnaToolHandle< SmoothedWZTagger > m_ZTaggerTool
std::string m_trig2017combination_multiLep
std::pair< std::vector< unsigned int >, bool > res
double FJVT_SF(const xAOD::JetContainer *jets) override final
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
std::string m_jesConfigJMS
std::string m_eleIdDFName
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
std::string m_jetUncertaintiesMCType
std::string m_commonPRWFileMC20e
bool check_isTighter(const std::string &wp1, const std::string &wp, const std::vector< std::string > &list) const
std::string m_jetUncertaintiesAnalysisFile
std::map< std::string, std::string > m_legsPerTool_ph
asg::AnaToolHandle< IAsgSelectionTool > m_jetfJvtSelectionTool
asg::AnaToolHandle< IAsgPhotonIsEMSelector > m_photonSelIsEM
std::string m_trig2016combination_diLep
bool m_jetUncertaintiesPDsmearing
asg::AnaToolHandle< IMETSystematicsTool > m_metSystTool
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
const xAOD::MuonContainer * prompt_muons
double m_BtagMinPt_trkJet
std::vector< std::string > m_v_trigs15_cache_diLep
double m_muIsoHighPtThresh
asg::AnaToolHandle< JetPileupLabelingTool > m_jetPileupLabelingTool
std::string m_trigMatchingPrefix
Use composite trigger matching tool if matching was done upstream.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_WTagjetUncertaintiesTool
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > m_tauSelToolBaseline
bool isData() const override final
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
std::set< std::string > m_bool_prop_set
std::string m_trig2018combination_diLep
std::string m_jesConfigFat
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
std::string m_trig2022combination_diLep
bool IsBadJet(const xAOD::Jet &input) const override final
std::string m_eleIdBaselineDFName
bool IsTrigMatched(const xAOD::IParticle *part, const std::string &tr_item) override final
@ numberOfSCTHoles
number of SCT holes [unit8_t].
bool isAtlfast() const override final
std::string m_trig2015combination_multiLep
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool_trkJet
size_t index() const
Return the index of this element within its container.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_fatjetUncertaintiesTool
std::string m_jesCalibSeqJMS
float nSCTHoles(const U &p)
std::string m_WTagUncConfig
bool m_runDepPrescaleWeightPRW
StatusCode SetBtagWeightDecorations(const xAOD::Jet &input, const asg::AnaToolHandle< IBTaggingSelectionTool > &btagSelTool, const std::string &btagTagger) const override final
std::string m_prwActualMu2017File
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_trigEff_singleLep
const xAOD::EventInfo * GetEventInfo() const override final
asg::AnaToolHandle< ORUtils::IOverlapTool > m_tauJetORtool
std::string m_photonBaselineIso_WP
virtual void renounce()=0
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_iso
std::vector< std::string > m_prwConfFiles
std::string m_metJetSelection
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
float beamPosSigmaY() const
The width of the beam spot in the Y direction.
asg::AnaToolHandle< TauAnalysisTools::ITauTruthMatchingTool > m_tauTruthMatch
std::string m_trig2022combination_singleLep
std::string EG_WP(const std::string &wp) const
bool pu(const std::string &taggername, double &value) const
std::string m_inputMETCore
float averageInteractionsPerCrossing() const
Average interactions per crossing for all BCIDs - for out-of-time pile-up.
bool check_isOption(const std::string &wp, const std::vector< std::string > &list) const
Container for xAOD::MissingET_v1 objects.
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecSelLikelihoodBaseline
asg::AnaToolHandle< TrigConf::ITrigConfigTool > m_trigConfTool
double GetSignalPhotonSF(const xAOD::Photon &ph, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final
Muon_v1 Muon
Reference the current persistent version:
std::string m_ToptagConfig
asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > m_tauEffTool
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionToolBaseline
bool IsMETTrigPassed(unsigned int runnumber=0, bool j400_OR=false) const override final
std::string to_string(const DetectorType &type)
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
float getSherpaVjetsNjetsWeight() const override final
void TrigMatch(const xAOD::IParticle *p, std::initializer_list< std::string >::iterator, std::initializer_list< std::string >::iterator) override final
bool m_useBtagging_trkJet
StatusCode FillTau(xAOD::TauJet &input) override final
asg::AnaToolHandle< CP::IIsolationCloseByCorrectionTool > m_isoCloseByTool
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_trig_singleLep
std::string m_trig2018combination_multiLep
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool_OR
size_t nTruthParticles() const
Get the number of truth particles.
virtual StatusCode tag(const xAOD::Jet &jet) const override
Decorate single jet with tagging info.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
std::string m_commonPRWFileMC20a
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionHighPtTool
std::string m_fJvtConfigRun3
std::string m_BtagWP_trkJet
void setName(const char *name)
Set the name of the container instance.
std::pair< std::unique_ptr< T >, std::unique_ptr< ShallowAuxContainer > > shallowCopyContainer(const T &cont, [[maybe_unused]] const EventContext &ctx)
Function making a shallow copy of a constant container.
SG::WriteHandleKey< xAOD::MuonContainer > m_outMuonLocation
Class describing the basic event information.
Photon_v1 Photon
Definition of the current "egamma version".
SG::AuxElement::ConstAccessor< char > m_acc_photonId
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
ST::SystInfo getSystInfo(const CP::SystematicVariation &sys) const override final
struct TBPatternUnitContext Muon
bool isPileup(int origin)
from pileup
const BTagging * getBTagging(const SG::AuxElement &part)
Access the default xAOD::BTagging object associated to an object.
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool
asg::AnaToolHandle< IAsgSelectionTool > m_jetNNJvtSelectionTool
@ numberOfTRTOutliers
number of TRT outliers [unit8_t].
double m_orMuJetTrkPtRatio
StatusCode FillPhoton(xAOD::Photon &input, const float ptcut, const float etacut) override final
std::vector< std::string > m_v_trigs16_cache_diLep
asg::AnaToolHandle< CP::IMuonTriggerScaleFactors > m_muonTriggerSFTool
const uint32_t BADCLUSPHOTON
double GetSignalTauSF(const xAOD::TauJet &tau, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final
std::vector< std::string > getElSFkeys(const std::string &mapFile) const
std::string m_jesConfigJMSData
std::string m_trig2016combination_singleLep
@ Ok
The correction was done successfully.
asg::AnaToolHandle< IBTaggingEfficiencyTool > m_btagEffTool
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecChargeIDSelectorTool
float beamPosSigmaXY() const
The beam spot shape's X-Y correlation.
double m_orBoostedElectronMaxConeSize
StatusCode FindSusyHP(int &pdgid1, int &pdgid2) const
std::string m_eleBaselineIso_WP
std::string m_inputMETMap
std::string m_BtagTagger_trkJet
bool m_autoconfigPRWRPVmode
Class describing a Vertex.
static bool FindSusyHardProc(const xAOD::TruthParticleContainer *truthP, int &pdgid1, int &pdgid2, bool isTruth3=false)
StatusCode validConfig(bool strict=false) const
std::string m_EG_corrModel
std::vector< std::string > m_v_trigs18_cache_multiLep
std::string m_JetTruthLabelName
double JVT_SF(const xAOD::JetContainer *jets) override final
#define ATH_MSG_WARNING(x)
bool m_orDoBoostedElectron
@ numberOfSCTDeadSensors
number of dead SCT sensors crossed [unit8_t].
asg::AnaToolHandle< IAsgPhotonIsEMSelector > m_photonSelIsEMBaseline
float GetSignalMuonSF(const xAOD::Muon &mu, const bool recoSF=true, const bool isoSF=true, const bool doBadMuonHP=true, const bool warnOVR=true) override final
This module implements the central registry for handling systematic uncertainties with CP tools.
DataVector adapter that acts like it holds const pointers.
A struct of global config options used to simplify the config helper interface.
bool m_metVeryGreedyPhotons
double GetTriggerGlobalEfficiencySF(const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final
bool setOriginalObjectLink(const IParticle &original, IParticle ©)
This function should be used by CP tools when they make a deep copy of an object in their correctedCo...
asg::AnaToolHandle< Trig::TrigDecisionTool > m_trigDecTool
std::string m_metsysConfigPrefix
std::string m_defaultTrackJets
std::string m_prwActualMu2023File
std::string m_jesCalibSeqFat
std::string m_TopTagUncConfig
SG::AuxElement::ConstAccessor< char > m_acc_eleIdBaseline
StatusCode applySystematicVariation(const CP::SystematicSet &systConfig) override final
Return value from object correction CP tools.
CP::SystematicSet m_currentSyst
std::string m_tauConfigPathBaseline
const uint16_t AuthorPhoton
Object Reconstructed by standard cluster-based algorithm.
std::string m_autoconfigPRWPath
std::string m_photonIdDFName
asg::AnaToolHandle< IJetCalibrationTool > m_jetFatCalibTool
std::string m_electronTriggerSFStringSingle
asg::AnaToolHandle< CP::IJvtEfficiencyTool > m_jetNNJvtEfficiencyTool
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
virtual CorrectionCode getEfficiencyScaleFactor(const xAOD::Muon &mu, float &sf, const xAOD::EventInfo *info=0) const =0
Retrieve the Scale factor.
float BtagSFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
std::vector< std::string > m_v_trigs17_cache_multiLep
std::string m_trig2017combination_diLep
asg::AnaToolHandle< Trig::IMatchScoringTool > m_trigDRScoringTool
std::string m_trig2015combination_diLep
asg::AnaToolHandle< JetTruthLabelingTool > m_jetTruthLabelingTool
@ numberOfSCTHits
number of hits in SCT [unit8_t].
asg::AnaToolHandle< IMETSignificance > m_metSignif
@ Tau
The object is a tau (jet)
std::string m_autoconfigPRWFile
std::vector< std::string > m_v_trigs16_cache_singleLep
std::string m_jesConfigFatData
virtual StatusCode rebuildTrackMET(const std::string &metJetKey, const std::string &metSoftKey, xAOD::MissingETContainer *metCont, const xAOD::JetContainer *jets, const xAOD::MissingETContainer *metCoreCont, xAOD::MissingETAssociationHelper &helper, bool doJetJVT)=0
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...
std::string m_commonPRWFileMC23c
std::vector< std::string > m_v_trigs16_cache_multiLep
bool passOQqualityDelayed(const xAOD::Photon &ph)
Helpers to ease the implementation of the pass Quality requirements.
@ numberOfPixelDeadSensors
number of dead pixel sensors crossed [unit8_t].
bool m_muHighPtExtraSmear
std::string m_photonTriggerName
Class describing a TrackParticle.
std::vector< std::string > veto
these patterns are anded
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_TopTagjetUncertaintiesTool
double m_orBoostedElectronC2
const IParticle * getOriginalObject(const IParticle ©)
This function can be used to conveniently get a pointer back to the original object from which a copy...
@ BTag
The object is a b-tagging object.
StatusCode MergeMuons(const xAOD::MuonContainer &muons, const std::vector< bool > &writeMuon, xAOD::MuonContainer *outputCol) const override final
std::vector< std::string > getListOfTriggers() const
std::vector< std::string > m_v_trigs22_cache_diLep
std::string m_orInputLabel
virtual StatusCode decorate(const xAOD::JetContainer &jetCont) const override
Decorate a jet collection without otherwise modifying it.
bool m_eleBaselineCrackVeto
std::string m_muIsoHighPt_WP
bool m_murequirepassedHighPtCuts
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonHighPtIsolationSFTool
std::string m_photonIdBaseline
int treatAsYear(const int runNumber=-1) const override final
setBGCode setTAP setLVL2ErrorBits bool
ToolHandleArray< CP::IMuonTriggerScaleFactors > m_muonTrigSFTools
asg::AnaToolHandle< IJetSelector > m_jetCleaningTool
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
StatusCode autoconfigurePileupRWTool(const std::string &PRWfilesDir="dev/PileupReweighting/share/", const std::string &PRWfileName="", bool usePathResolver=true, bool RPVLLmode=false, bool Combinedmode=false, const std::string &HFFilter="")
std::string m_BtagKeyOverride
std::string m_commonPRWFileMC23a
bool m_orDoMuonJetGhostAssociation
size_type size() const noexcept
Returns the number of elements in the collection.
asg::AnaToolHandle< CP::IIsolationCorrectionTool > m_isoCorrTool
std::string m_defaultTruthJets
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > m_elecTrigSFTools
std::vector< asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > > m_tauTrigEffTool
Jet_v1 Jet
Definition of the current "jet version".
std::string m_TopDecorName
std::vector< std::string > m_v_trigs16_cache_singleEle
std::string m_commonPRWFileMC23d
bool empty() const noexcept
Returns true if the collection is empty.
const xAOD::TrackParticleContainer & GetInDetLargeD0Tracks(const EventContext &ctx) const override final
bool m_upstreamTriggerMatching
asg::AnaToolHandle< InDet::IInclusiveTrackFilterTool > m_LRTuncTool
virtual StatusCode varianceMET(xAOD::MissingETContainer *metCont, float avgmu, const std::string &jetTermName, const std::string &softTermName, const std::string &totalMETName)=0
std::string m_EG_corrFNList
bool match(std::string s1, std::string s2)
match the individual directories of two strings
bool IsSignalTau(const xAOD::TauJet &input, const float ptcut, const float etacut) const override final
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonIsolationSFTool
bool isTrigInTDT(std::scoped_lock< std::mutex > &lock, const std::string &triggerName) const
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
bool m_useSigLepForIsoCloseByOR
virtual StatusCode tag(const xAOD::Jet &jet) const override
Decorate single jet with tagging info.
static SystematicRegistry & getInstance()
Get the singleton instance of the registry for the curren thread.
static std::string retrieveMetadata(const std::string &folder, const std::string &key, const ServiceHandle< StoreGateSvc > &inputMetaStore)
method that always returns as a string you can use from, e.g, pyROOT with evt = ROOT....
asg::AnaToolHandle< IEGammaAmbiguityTool > m_egammaAmbiguityTool
std::string m_prwActualMu2018File
bool pb(const std::string &taggername, double &value) const
double m_eleIsoHighPtThresh
double m_orBJetPtUpperThres
std::string m_trig2015combination_diPhoton
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoTool
std::string m_JvtConfigRun3
CP::SystematicSet m_defaultSyst
bool IsBJetLoose(const xAOD::Jet &input) const override final
asg::AnaToolHandle< IWeightTool > m_pmgSHnjetWeighter