5#ifndef ENHANCEDBIASWEIGHTER_IENHANCEDBIASWEIGHTER_H
6#define ENHANCEDBIASWEIGHTER_IENHANCEDBIASWEIGHTER_H 1
11#include <unordered_map>
Define interface of EnhancedBias weighting class.
virtual bool isMC() const =0
virtual std::unordered_map< std::string, ChainDetail > parsePrescaleXML(const std::string &prescaleXML) const =0
virtual double getAverageLumi() const =0
virtual double getDeadtime(const int lumiblock=-1) const =0
virtual double getAverageMu() const =0
virtual uint32_t getPairedBunches() const =0
virtual double getEBWeight(const xAOD::EventInfo *eventInfo) const =0
virtual bool isGoodLB(const xAOD::EventInfo *eventInfo) const =0
virtual StatusCode getDistanceIntoTrain(const xAOD::EventInfo *eventInfo, uint32_t &distance, const EventContext &ctx) const =0
virtual double getEBLiveTime(const xAOD::EventInfo *eventInfo) const =0
virtual double getBunchCrossingRate() const =0
virtual double getLBLumi(const xAOD::EventInfo *eventInfo) const =0
virtual uint32_t getRunNumber() const =0
virtual bool isUnbiasedEvent(const xAOD::EventInfo *eventInfo) const =0
virtual double getLBLength(const xAOD::EventInfo *eventInfo) const =0
virtual const std::vector< int32_t > & getBunchGroups() const =0
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Structure to encompass the data stored in a prescales XML generated by the RuleBook.