00001
00002 #ifndef TAUANALYSISTOOLS_ITAUEFFICIENCYTOOL_H
00003 #define TAUANALYSISTOOLS_ITAUEFFICIENCYTOOL_H
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "AsgTools/IAsgTool.h"
00017
00018
00019 #include "xAODTau/TauJet.h"
00020 #include "PATInterfaces/CorrectionCode.h"
00021 #include "PATInterfaces/ISystematicsTool.h"
00022
00023
00024
00025 namespace TauAnalysisTools
00026 {
00027
00028 class ITauEfficiencyCorrectionsTool
00029 : public virtual asg::IAsgTool
00030 , public virtual CP::ISystematicsTool
00031 {
00032
00034 ASG_TOOL_INTERFACE( TauAnalysisTools::ITauEfficiencyCorrectionsTool )
00035
00036 public:
00038 virtual CP::CorrectionCode getEfficiencyScaleFactor( const xAOD::TauJet& xTau,
00039 double& eff ) = 0;
00040
00042 virtual CP::CorrectionCode applyEfficiencyScaleFactor( const xAOD::TauJet& xTau ) = 0;
00043
00044 virtual bool isSupportedRunNumber(int iRunNumber) = 0;
00045
00046 };
00047
00048 }
00049
00050 #endif // TAUANALYSISTOOLS_ITAUEFFICIENCYTOOL_H