#include <CalibrationDataInterfaceROOT.h>
Public Member Functions | |
CalibrationDataInterfaceTool (const std::string &, const std::string &, const IInterface *) | |
virtual | ~CalibrationDataInterfaceTool () |
StatusCode | queryInterface (const InterfaceID &riid, void **ppvIf) |
virtual StatusCode | initialize () |
virtual StatusCode | finalize () |
CalibResult | getEfficiency (const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const |
CalibResult | getMCEfficiency (const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const |
CalibResult | getScaleFactor (const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const |
hold: in particular, "channel" (jet author) aliasing is possible. The difference is that run-time information is to be provided in a text file to be interpreted using ROOT's TEnv and
DB representation (all residing under a common root folder): .../<jet author>="">/<tagger>/<operating point>="">/<flavour>/<object name>=""> where <operating point>=""> can be a weight cut (represented as a string, with the period replaced with an underscore) or the string "Continuous" (for continuous calibration purposes).
This tool provides an interface to flavour tagging performance estimates.
A separate instance should be used for each different tagging algorithm. For each instance, all appropriate jet collections and tagger operating points need to be specified.
The model:
To retrieve results from COOL, a CalibrationBroker instance is used (a separate one from the one used for tagger weight distributions). This allows to use the CalibrationBroker's channel aliasing (although possibly with different aliases). Of course it is up to the user to verify that the aliasing is appropriate!
DB representation (all residing under a common root folder): .../<jet author>="">/<tagger>/<operating point>="">/<flavour>/<object name>="">
Analysis::CalibrationDataInterfaceTool::~CalibrationDataInterfaceTool | ( | ) | [virtual] |
default destructor
StatusCode Analysis::CalibrationDataInterfaceTool::finalize | ( | ) | [virtual] |
standard Athena-Algorithm method
CalibResult Analysis::CalibrationDataInterfaceTool::getEfficiency | ( | const Jet & | jet, | |
const std::string & | label, | |||
const std::string & | OP, | |||
Uncertainty | unc = None | |||
) | const [virtual] |
Main interface methods accessing the flavour tagging performance information. Note that for both of the following, the label is assumed to adhere to the TruthInfo conventions (see package PhysicsAnalysis/JetTagging/JetTagInfo). efficiency retrieval
Implements Analysis::ICalibrationDataInterfaceTool.
CalibResult Analysis::CalibrationDataInterfaceTool::getMCEfficiency | ( | const Jet & | jet, | |
const std::string & | label, | |||
const std::string & | OP, | |||
Uncertainty | unc = None | |||
) | const [virtual] |
"MC" efficiency retrieval
Implements Analysis::ICalibrationDataInterfaceTool.
CalibResult Analysis::CalibrationDataInterfaceTool::getScaleFactor | ( | const Jet & | jet, | |
const std::string & | label, | |||
const std::string & | OP, | |||
Uncertainty | unc = None | |||
) | const [virtual] |
efficiency scale factor retrieval
Implements Analysis::ICalibrationDataInterfaceTool.
StatusCode Analysis::CalibrationDataInterfaceTool::initialize | ( | void | ) | [virtual] |
standard Athena-Algorithm method
StatusCode Analysis::CalibrationDataInterfaceTool::queryInterface | ( | const InterfaceID & | riid, | |
void ** | ppvIf | |||
) |
allow access to the ICalibrationDataInterfaceTool interface