12 InDetTrackSystematicsTool::InDetTrackSystematicsTool(
const std::string& name )
22 if (registry.registerSystematics(*
this) != StatusCode::SUCCESS) {
24 return StatusCode::FAILURE;
27 return StatusCode::SUCCESS;
33 return ( affSysts.find(systematic) != affSysts.end() );
55 (
systematics, affectingSysts, filteredSysts) != StatusCode::SUCCESS ) {
57 return StatusCode::FAILURE;
61 auto isIn = [&](InDet::TrackSystematic syst) {
63 return filteredSysts.
find( InDet::TrackSystematicMap.at( syst ) ) != filteredSysts.
end();
65 bool isSetTrkLoose = isIn( TRK_FAKE_RATE_LOOSE )
66 || isIn( TRK_EFF_LOOSE_GLOBAL )
67 || isIn( TRK_EFF_LOOSE_IBL )
68 || isIn( TRK_EFF_LOOSE_PP0 )
69 || isIn( TRK_EFF_LOOSE_PHYSMODEL );
70 bool isSetTrkTight = isIn( TRK_FAKE_RATE_TIGHT )
71 || isIn( TRK_EFF_TIGHT_GLOBAL )
72 || isIn( TRK_EFF_TIGHT_IBL )
73 || isIn( TRK_EFF_TIGHT_PP0 )
74 || isIn( TRK_EFF_TIGHT_PHYSMODEL );
75 if ( isSetTrkLoose && isSetTrkTight) {
76 ATH_MSG_ERROR(
"Both Loose and TightPrimary versions of systematics are simultaneously active." );
77 return StatusCode::FAILURE;
86 return StatusCode::SUCCESS;
92 ATH_MSG_DEBUG(
"applySystematicsVariation() has not been successfully called." );
95 const auto it_syst =
m_activeSysts->find(InDet::TrackSystematicMap.at(syst));
106 return std::unique_ptr<TFile>(TFile::Open(filenameWithFullPath.data(),
"READ"));;
static const std::vector< std::string > systematics
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
static SystematicRegistry & getInstance()
Get the singleton instance of the registry for the curren thread.
Class to wrap a set of SystematicVariations.
const_iterator end() const
description: const iterator to the end of the set
iterator find(const SystematicVariation &sys) const
description: find an element in the set
static StatusCode filterForAffectingSystematics(const SystematicSet &systConfig, const SystematicSet &affectingSystematics, SystematicSet &filteredSystematics)
description: filter the systematics for the affected systematics returns: success guarantee: strong f...