1 #ifndef TOPSINGLELEPTONHLTOFFLINEDQM 2 #define TOPSINGLELEPTONHLTOFFLINEDQM 79 void fill(
const std::string& histName,
double xValue,
double yValue)
const {
if(
booked(histName))
hists_.find(histName)->second->Fill(xValue, yValue); };
81 void fill(
const std::string& histName,
double xValue,
double yValue,
double zValue)
const {
if(
booked(histName))
hists_.find(histName)->second->Fill(xValue, yValue, zValue); };
88 std::vector< edm::EDGetTokenT< edm::View<reco::MET> > >
mets_;
121 std::unique_ptr<StringCutObjectSelector<reco::GsfElectron>>
elecIso_;
123 std::unique_ptr<StringCutObjectSelector<reco::GsfElectron>>
elecSelect_;
126 std::unique_ptr<StringCutObjectSelector<reco::Vertex>>
pvSelect_;
129 std::unique_ptr<StringCutObjectSelector<reco::Muon>>
muonIso_;
157 std::map<std::string,MonitorElement*>
hists_;
172 for(
unsigned int idx=0;
idx<labels.size(); ++
idx){
180 for(
unsigned int idx=0;
idx<labels.size(); ++
idx){
182 fill(channel+
"Mon_", idx+0.5 );
276 std::map<std::string, std::pair<edm::ParameterSet, std::unique_ptr<HLTOfflineDQMTopSingleLepton::MonitorSingleLepton>> >
selection_;
278 std::map<std::string, std::unique_ptr<SelectionStepHLTBase>>
selectmap_;
edm::EDGetTokenT< trigger::TriggerEventWithRefs > triggerSummaryTokenAOD
std::unique_ptr< StringCutObjectSelector< reco::GsfElectron > > elecSelect_
extra selection on electrons
define MonitorSingleLepton to be used
bool hasRawTriggerSummary
HLTConfigProvider hltConfig_
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
std::string monitorPath(const std::string &label) const
int logged_
number of logged interesting events
std::string jetCorrector_
jetCorrector
void fill(const edm::Event &event, const edm::EventSetup &setup, const HLTConfigProvider &hltConfig, const std::vector< std::string > &triggerPaths)
fill monitor histograms with electronId and jetCorrections
def setup(process, global_tag, zero_tesla=False)
std::map< std::string, MonitorElement * > hists_
histogram container
edm::EDGetTokenT< reco::JetTagCollection > btagPur_
trigger::VRelectron electronRefs_
edm::EDGetTokenT< edm::View< reco::GsfElectron > > elecs_
input sources for monitoring
std::unique_ptr< StringCutObjectSelector< reco::BeamSpot > > beamspotSelect_
string cut selector
double lowerEdge_
mass window upper and lower edge
edm::EDGetTokenT< reco::JetIDValueMap > jetIDLabel_
jetID as an extra selection type
std::vector< edm::EDGetTokenT< edm::View< reco::MET > > > mets_
considers a vector of METs
void book(DQMStore::IBooker &store_)
book histograms in subdirectory directory
std::vector< std::string > selectionOrder_
std::unique_ptr< StringCutObjectSelector< reco::Muon > > muonIso_
extra isolation criterion on muon
MonitorSingleLepton(const char *label, const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
default contructor
edm::EDGetTokenT< edm::TriggerResults > triggerTable_
trigger table
void triggerBinLabels(const std::string &channel, const std::vector< std::string > &labels)
set configurable labels for trigger monitoring histograms
edm::EDGetTokenT< std::vector< reco::Vertex > > vertex_
primary vertex
edm::EDGetTokenT< edm::View< reco::Muon > > muons_
void fill(const std::string &histName, double value) const
fill histogram if it had been booked before
std::vector< std::string > triggerPaths_
edm::EDGetTokenT< reco::JetTagCollection > btagEff_
btag discriminator labels
virtual example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
std::string label_
instance label
trigger::VRpfjet pfjetRefs_
edm::EDGetTokenT< trigger::TriggerEventWithRefs > triggerSummaryTokenRAW
edm::EDGetTokenT< edm::View< reco::Vertex > > pvs_
std::unique_ptr< StringCutObjectSelector< reco::JetID > > jetIDSelect_
extra jetID selection on calo jets
std::vector< std::string > triggerPaths_
trigger paths
std::string processName_
hlt objects
edm::EDGetTokenT< reco::BeamSpot > beamspot_
beamspot
bool acceptHLT(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
std::vector< reco::PFJetRef > VRpfjet
double btagEffWP_
btag working points
edm::EDGetTokenT< edm::View< reco::Jet > > jets_
bool booked(const std::string &histName) const
check if histogram was booked
std::string selectionPath(const std::string &label) const
std::vector< reco::RecoChargedCandidateRef > VRmuon
std::map< std::string, std::pair< edm::ParameterSet, std::unique_ptr< HLTOfflineDQMTopSingleLepton::MonitorSingleLepton > > > selection_
std::string objectType(const std::string &label)
std::unique_ptr< StringCutObjectSelector< reco::Muon > > muonSelect_
extra selection on muons
std::map< std::string, std::unique_ptr< SelectionStepHLTBase > > selectmap_
edm::EDGetTokenT< edm::TriggerResults > triggerTable_
trigger table
trigger::VRmuon muonRefs_
std::unique_ptr< StringCutObjectSelector< reco::Vertex > > pvSelect_
extra selection on primary vertices; meant to investigate the pile-up effect
~MonitorSingleLepton()=default
default destructor
std::vector< reco::ElectronRef > VRelectron
std::unique_ptr< StringCutObjectSelector< reco::GsfElectron > > elecIso_
extra isolation criterion on electron
edm::EDGetTokenT< reco::JetTagCollection > btagVtx_
edm::EDGetTokenT< edm::ValueMap< float > > electronId_
electronId label
static std::string const triggerPaths
std::unique_ptr< StringCutObjectSelector< reco::Vertex > > vertexSelect_
string cut selector
trigger::Vids electronIds_
void fill(const std::string &histName, double xValue, double yValue) const
fill histogram if it had been booked before (2-dim version)