\(\gamma\)

class PhotonCalibrator : public xAH::Algorithm

Public Functions

PhotonCalibrator()
virtual EL::StatusCode setupJob(EL::Job &job)
virtual EL::StatusCode fileExecute()
virtual EL::StatusCode histInitialize()
virtual EL::StatusCode changeInput(bool firstFile)
virtual EL::StatusCode initialize()
virtual EL::StatusCode execute()
virtual EL::StatusCode postExecute()
virtual EL::StatusCode finalize()
virtual EL::StatusCode histFinalize()

Public Members

std::string m_inContainerName = ""
std::string m_outContainerName = ""
std::string m_overridePhotonCalibMap = ""
std::string m_tightIDConfigPath = "ElectronPhotonSelectorTools/offline/20180825/PhotonIsEMTightSelectorCutDefs.conf"
std::string m_mediumIDConfigPath = "ElectronPhotonSelectorTools/offline/mc15_20150712/PhotonIsEMMediumSelectorCutDefs.conf"
std::string m_looseIDConfigPath = "ElectronPhotonSelectorTools/offline/mc15_20150712/PhotonIsEMLooseSelectorCutDefs.conf"
bool m_sort = true
std::string m_inputAlgoSystNames = ""

this is the name of the vector of names of the systematically varied containers produced by the upstream algo (e.g., the SC containers with calibration systematics)

std::string m_outputAlgoSystNames = "PhotonCalibrator_Syst"

this is the name of the vector of names of the systematically varied containers produced by THIS algo ( these will be the m_inputAlgoSystNames of the algo downstream

bool m_useAFII = false
bool m_useAF3 = false
float m_systVal = 0.0
std::string m_systName = ""
std::string m_esModel = "es2017_R21_v1"
std::string m_decorrelationModel = ""
int m_randomRunNumber = -1
bool m_readIDFlagsFromDerivation = false

To read PID decision from DAOD, rather than recalculate with tool.

Private Functions

EL::StatusCode decorate(xAOD::Photon *photon)

Private Members

std::string m_outAuxContainerName
std::string m_outSCContainerName
std::string m_outSCAuxContainerName
std::vector<CP::SystematicSet> m_systList
CP::EgammaCalibrationAndSmearingTool *m_EgammaCalibrationAndSmearingTool = nullptr
asg::AnaToolHandle<CP::IIsolationCorrectionTool> m_isolationCorrectionTool_handle = {"CP::IsolationCorrectionTool/IsolationCorrectionTool", this}
ElectronPhotonVariableCorrectionTool *m_photonVarCorrectionTool = nullptr
AsgPhotonIsEMSelector *m_photonTightIsEMSelector = nullptr
AsgPhotonIsEMSelector *m_photonMediumIsEMSelector = nullptr
AsgPhotonIsEMSelector *m_photonLooseIsEMSelector = nullptr
asg::AnaToolHandle<IAsgPhotonEfficiencyCorrectionTool> m_photonTightEffTool_handle = {"AsgPhotonEfficiencyCorrectionTool/tight", this}
asg::AnaToolHandle<IAsgPhotonEfficiencyCorrectionTool> m_photonMediumEffTool_handle = {"AsgPhotonEfficiencyCorrectionTool/medium", this}
asg::AnaToolHandle<IAsgPhotonEfficiencyCorrectionTool> m_photonLooseEffTool_handle = {"AsgPhotonEfficiencyCorrectionTool/loose", this}