00001
00002
00004 #ifndef IANALYSISCALIBRATIONDATAINTERFACETOOL_H
00005 #define IANALYSISCALIBRATIONDATAINTERFACETOOL_H
00006
00007 #include "GaudiKernel/IAlgTool.h"
00008 #include <string>
00009
00010 class Jet;
00011
00012 namespace Analysis
00013 {
00014
00015 static const InterfaceID IID_ICalibrationDataInterfaceTool("Analysis::ICalibrationDataInterfaceTool", 1, 0);
00016
00017 class ICalibrationDataInterfaceTool : virtual public IAlgTool {
00018 public:
00019 static const InterfaceID& interfaceID() {
00020 return IID_ICalibrationDataInterfaceTool;
00021 }
00022
00024 enum Uncertainty { None, Total, Statistical, Systematic };
00025
00026
00027
00029 virtual std::pair<double, double> getEfficiency (const Jet& jet, const std::string& label,
00030 const std::string& OP, Uncertainty unc = None) const = 0;
00031
00033 virtual std::pair<double, double> getMCEfficiency (const Jet& jet, const std::string& label,
00034 const std::string& OP, Uncertainty unc = None) const = 0;
00035
00037 virtual std::pair<double, double> getScaleFactor (const Jet& jet, const std::string& label,
00038 const std::string& OP, Uncertainty unc = None) const = 0;
00039
00040 };
00041
00042 }
00043
00044 #endif