CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
FSQDiJetAve Class Reference

#include <DQMOffline/FSQDiJetAve/plugins/FSQDiJetAve.cc>

Inheritance diagram for FSQDiJetAve:
DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

 FSQDiJetAve (const edm::ParameterSet &)
 
 ~FSQDiJetAve () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &run, edm::EventSetup const &c) override
 
void dqmBeginRun (edm::Run const &run, edm::EventSetup const &c) override
 

Private Attributes

std::string m_dirname
 
triggerExpression::Data m_eventCache
 
edm::EDGetTokenT< GenEventInfoProductm_genEvInfoToken
 
std::vector< std::shared_ptr< FSQ::BaseHandler > > m_handlers
 
HLTConfigProvider m_hltConfig
 
std::map< std::string, MonitorElement * > m_me
 
edm::Handle< trigger::TriggerEventm_trgEvent
 
edm::TriggerNames m_triggerNames
 
edm::Handle< edm::TriggerResultsm_triggerResults
 
bool m_useGenWeight
 
edm::EDGetTokenT< edm::TriggerResultstriggerResultsFUToken
 
edm::InputTag triggerResultsLabel_
 
edm::EDGetTokenT< edm::TriggerResultstriggerResultsToken
 
edm::EDGetTokenT< trigger::TriggerEventtriggerSummaryFUToken
 
edm::InputTag triggerSummaryLabel_
 
edm::EDGetTokenT< trigger::TriggerEventtriggerSummaryToken
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Description: [one line class summary]

Implementation: [Notes on implementation]

Description: DQM source for FSQ triggers

Implementation:

Definition at line 57 of file FSQDiJetAve.h.

Constructor & Destructor Documentation

◆ FSQDiJetAve()

FSQDiJetAve::FSQDiJetAve ( const edm::ParameterSet iConfig)
explicit

Definition at line 744 of file FSQDiJetAve.cc.

745  : m_eventCache(iConfig.getParameterSet("triggerConfiguration"), consumesCollector()) {
746  m_useGenWeight = iConfig.getParameter<bool>("useGenWeight");
747  if (m_useGenWeight) {
748  m_genEvInfoToken = consumes<GenEventInfoProduct>(edm::InputTag("generator"));
749  }
750 
751  triggerSummaryLabel_ = iConfig.getParameter<edm::InputTag>("triggerSummaryLabel");
752  triggerResultsLabel_ = iConfig.getParameter<edm::InputTag>("triggerResultsLabel");
753  triggerSummaryToken = consumes<trigger::TriggerEvent>(triggerSummaryLabel_);
754  triggerResultsToken = consumes<edm::TriggerResults>(triggerResultsLabel_);
755 
756  triggerSummaryFUToken = consumes<trigger::TriggerEvent>(
758  triggerResultsFUToken = consumes<edm::TriggerResults>(
760 
761  std::vector<edm::ParameterSet> todo = iConfig.getParameter<std::vector<edm::ParameterSet> >("todo");
762  for (auto pset : todo) {
763  std::string type = pset.getParameter<std::string>("handlerType");
764  if (type == "FromHLT") {
765  m_handlers.push_back(std::make_shared<FSQ::HLTHandler>(pset, m_eventCache));
766  } else if (type == "RecoCandidateCounter") {
767  m_handlers.push_back(std::make_shared<FSQ::RecoCandidateCounter>(pset, m_eventCache));
768  } else if (type == "RecoTrackCounter") {
769  m_handlers.push_back(std::make_shared<FSQ::RecoTrackCounter>(pset, m_eventCache));
770  } else if (type == "RecoTrackCounterWithVertexConstraint") {
771  m_handlers.push_back(std::make_shared<FSQ::RecoTrackCounterWithVertexConstraint>(pset, m_eventCache));
772  } else if (type == "FromRecoCandidate") {
773  m_handlers.push_back(std::make_shared<FSQ::RecoCandidateHandler>(pset, m_eventCache));
774  } else if (type == "RecoPFJet") {
775  m_handlers.push_back(std::make_shared<FSQ::RecoPFJetHandler>(pset, m_eventCache));
776  } else if (type == "RecoPFJetWithJEC") {
777  m_handlers.push_back(std::make_shared<FSQ::RecoPFJetWithJECHandler>(pset, m_eventCache));
778  } else if (type == "RecoTrack") {
779  m_handlers.push_back(std::make_shared<FSQ::RecoTrackHandler>(pset, m_eventCache));
780  } else if (type == "RecoPhoton") {
781  m_handlers.push_back(std::make_shared<FSQ::RecoPhotonHandler>(pset, m_eventCache));
782  } else if (type == "RecoMuon") {
783  m_handlers.push_back(std::make_shared<FSQ::RecoMuonHandler>(pset, m_eventCache));
784  } else if (type == "RecoGenParticleCounter") {
785  m_handlers.push_back(std::make_shared<FSQ::RecoGenParticleCounter>(pset, m_eventCache));
786  } else if (type == "RecoGenParticleHandler") {
787  m_handlers.push_back(std::make_shared<FSQ::RecoGenParticleHandler>(pset, m_eventCache));
788  } else {
789  throw cms::Exception("FSQ DQM handler not know: " + type);
790  }
791  }
792  for (auto& m_handler : m_handlers) {
793  m_handler->getAndStoreTokens(consumesCollector());
794  }
795 }

References Exception, edm::ParameterSet::getParameter(), edm::InputTag::instance(), edm::InputTag::label(), m_eventCache, m_genEvInfoToken, m_handlers, m_useGenWeight, muonDTDigis_cfi::pset, AlCaHLTBitMon_QueryRunRegistry::string, DQMOfflineHeavyIons_cff::todo, triggerResultsFUToken, triggerResultsLabel_, triggerResultsToken, triggerSummaryFUToken, triggerSummaryLabel_, and triggerSummaryToken.

◆ ~FSQDiJetAve()

FSQDiJetAve::~FSQDiJetAve ( )
overridedefault

Member Function Documentation

◆ analyze()

void FSQDiJetAve::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 799 of file FSQDiJetAve.cc.

799  {
800  using namespace edm;
801  if (not m_eventCache.setEvent(iEvent, iSetup)) {
802  edm::LogError("FSQDiJetAve") << "Could not setup the filter";
803  }
804 
805  //---------- triggerResults ----------
807  if (!m_triggerResults.isValid()) {
809  if (!m_triggerResults.isValid()) {
810  edm::LogError("FSQDiJetAve") << "TriggerResults not valid, skippng event";
811  return;
812  }
813  }
814 
815  //---------- triggerResults ----------
816  if (m_triggerResults.isValid()) {
817  m_triggerNames = iEvent.triggerNames(*m_triggerResults);
818  } else {
819  edm::LogError("FSQDiJetAve") << "TriggerResults not found";
820  return;
821  }
822 
823  //---------- triggerSummary ----------
825  if (!m_trgEvent.isValid()) {
827  if (!m_trgEvent.isValid()) {
828  edm::LogInfo("FSQDiJetAve") << "TriggerEvent not found, ";
829  return;
830  }
831  }
832 
833  float weight = 1.;
834  if (m_useGenWeight) {
836  iEvent.getByToken(m_genEvInfoToken, hGW);
837  weight = hGW->weight();
838  }
839 
840  for (auto& m_handler : m_handlers) {
841  m_handler->analyze(
843  }
844 }

References iEvent, edm::HandleBase::isValid(), m_eventCache, m_genEvInfoToken, m_handlers, m_hltConfig, m_trgEvent, m_triggerNames, m_triggerResults, m_useGenWeight, edm::Handle< T >::product(), triggerExpression::Data::setEvent(), triggerResultsFUToken, triggerResultsToken, triggerSummaryFUToken, triggerSummaryToken, GenEventInfoProduct::weight(), and mps_merge::weight.

◆ bookHistograms()

void FSQDiJetAve::bookHistograms ( DQMStore::IBooker booker,
edm::Run const &  run,
edm::EventSetup const &  c 
)
overrideprivatevirtual

Implements DQMEDAnalyzer.

Definition at line 854 of file FSQDiJetAve.cc.

854  {
855  for (auto& m_handler : m_handlers) {
856  m_handler->book(booker);
857  }
858 }

References m_handlers.

◆ dqmBeginRun()

void FSQDiJetAve::dqmBeginRun ( edm::Run const &  run,
edm::EventSetup const &  c 
)
overrideprivatevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 847 of file FSQDiJetAve.cc.

847  {
848  bool changed(true);
850  if (m_hltConfig.init(run, c, processName, changed)) {
851  LogDebug("FSQDiJetAve") << "HLTConfigProvider failed to initialize.";
852  }
853 }

References HltBtagPostValidation_cff::c, HLTConfigProvider::init(), LogDebug, m_hltConfig, edm::InputTag::process(), SimL1EmulatorRepack_CalouGT_cff::processName, writedatasetfile::run, AlCaHLTBitMon_QueryRunRegistry::string, and triggerResultsLabel_.

◆ fillDescriptions()

void FSQDiJetAve::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 884 of file FSQDiJetAve.cc.

884  {
885  //The following says we do not know what parameters are allowed so do no validation
886  // Please change this to state exactly what you do use, even if it is no parameters
888  desc.setUnknown();
889  descriptions.addDefault(desc);
890 }

References edm::ConfigurationDescriptions::addDefault(), and edm::ParameterSetDescription::setUnknown().

Member Data Documentation

◆ m_dirname

std::string FSQDiJetAve::m_dirname
private

Definition at line 78 of file FSQDiJetAve.h.

◆ m_eventCache

triggerExpression::Data FSQDiJetAve::m_eventCache
private

Definition at line 74 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ m_genEvInfoToken

edm::EDGetTokenT<GenEventInfoProduct> FSQDiJetAve::m_genEvInfoToken
private

Definition at line 85 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ m_handlers

std::vector<std::shared_ptr<FSQ::BaseHandler> > FSQDiJetAve::m_handlers
private

Definition at line 94 of file FSQDiJetAve.h.

Referenced by analyze(), bookHistograms(), and FSQDiJetAve().

◆ m_hltConfig

HLTConfigProvider FSQDiJetAve::m_hltConfig
private

Definition at line 76 of file FSQDiJetAve.h.

Referenced by analyze(), and dqmBeginRun().

◆ m_me

std::map<std::string, MonitorElement*> FSQDiJetAve::m_me
private

Definition at line 79 of file FSQDiJetAve.h.

◆ m_trgEvent

edm::Handle<trigger::TriggerEvent> FSQDiJetAve::m_trgEvent
private

Definition at line 89 of file FSQDiJetAve.h.

Referenced by analyze().

◆ m_triggerNames

edm::TriggerNames FSQDiJetAve::m_triggerNames
private

Definition at line 87 of file FSQDiJetAve.h.

Referenced by analyze().

◆ m_triggerResults

edm::Handle<edm::TriggerResults> FSQDiJetAve::m_triggerResults
private

Definition at line 88 of file FSQDiJetAve.h.

Referenced by analyze().

◆ m_useGenWeight

bool FSQDiJetAve::m_useGenWeight
private

Definition at line 75 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ triggerResultsFUToken

edm::EDGetTokenT<edm::TriggerResults> FSQDiJetAve::triggerResultsFUToken
private

Definition at line 82 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ triggerResultsLabel_

edm::InputTag FSQDiJetAve::triggerResultsLabel_
private

Definition at line 91 of file FSQDiJetAve.h.

Referenced by dqmBeginRun(), and FSQDiJetAve().

◆ triggerResultsToken

edm::EDGetTokenT<edm::TriggerResults> FSQDiJetAve::triggerResultsToken
private

Definition at line 81 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ triggerSummaryFUToken

edm::EDGetTokenT<trigger::TriggerEvent> FSQDiJetAve::triggerSummaryFUToken
private

Definition at line 84 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

◆ triggerSummaryLabel_

edm::InputTag FSQDiJetAve::triggerSummaryLabel_
private

Definition at line 90 of file FSQDiJetAve.h.

Referenced by FSQDiJetAve().

◆ triggerSummaryToken

edm::EDGetTokenT<trigger::TriggerEvent> FSQDiJetAve::triggerSummaryToken
private

Definition at line 83 of file FSQDiJetAve.h.

Referenced by analyze(), and FSQDiJetAve().

DQMOfflineHeavyIons_cff.todo
todo
Definition: DQMOfflineHeavyIons_cff.py:112
edm::Handle::product
T const * product() const
Definition: Handle.h:70
edm::InputTag::instance
std::string const & instance() const
Definition: InputTag.h:37
FSQDiJetAve::m_genEvInfoToken
edm::EDGetTokenT< GenEventInfoProduct > m_genEvInfoToken
Definition: FSQDiJetAve.h:85
edm
HLT enums.
Definition: AlignableModifier.h:19
mps_merge.weight
weight
Definition: mps_merge.py:88
FSQDiJetAve::m_handlers
std::vector< std::shared_ptr< FSQ::BaseHandler > > m_handlers
Definition: FSQDiJetAve.h:94
edm::LogInfo
Definition: MessageLogger.h:254
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
edm::InputTag::process
std::string const & process() const
Definition: InputTag.h:40
FSQDiJetAve::m_eventCache
triggerExpression::Data m_eventCache
Definition: FSQDiJetAve.h:74
FSQDiJetAve::triggerResultsToken
edm::EDGetTokenT< edm::TriggerResults > triggerResultsToken
Definition: FSQDiJetAve.h:81
edm::Handle
Definition: AssociativeIterator.h:50
FSQDiJetAve::triggerSummaryFUToken
edm::EDGetTokenT< trigger::TriggerEvent > triggerSummaryFUToken
Definition: FSQDiJetAve.h:84
edm::InputTag::label
std::string const & label() const
Definition: InputTag.h:36
FSQDiJetAve::triggerResultsFUToken
edm::EDGetTokenT< edm::TriggerResults > triggerResultsFUToken
Definition: FSQDiJetAve.h:82
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::LogError
Definition: MessageLogger.h:183
iEvent
int iEvent
Definition: GenABIO.cc:224
triggerExpression::Data::setEvent
bool setEvent(const edm::Event &event, const edm::EventSetup &setup)
Definition: TriggerExpressionData.cc:18
edm::ParameterSetDescription::setUnknown
void setUnknown()
Definition: ParameterSetDescription.cc:39
FSQDiJetAve::m_useGenWeight
bool m_useGenWeight
Definition: FSQDiJetAve.h:75
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
FSQDiJetAve::m_hltConfig
HLTConfigProvider m_hltConfig
Definition: FSQDiJetAve.h:76
SimL1EmulatorRepack_CalouGT_cff.processName
processName
Definition: SimL1EmulatorRepack_CalouGT_cff.py:17
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
type
type
Definition: HCALResponse.h:21
writedatasetfile.run
run
Definition: writedatasetfile.py:27
HLTConfigProvider::init
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
Definition: HLTConfigProvider.cc:36
FSQDiJetAve::triggerSummaryToken
edm::EDGetTokenT< trigger::TriggerEvent > triggerSummaryToken
Definition: FSQDiJetAve.h:83
Exception
Definition: hltDiff.cc:246
FSQDiJetAve::triggerResultsLabel_
edm::InputTag triggerResultsLabel_
Definition: FSQDiJetAve.h:91
FSQDiJetAve::triggerSummaryLabel_
edm::InputTag triggerSummaryLabel_
Definition: FSQDiJetAve.h:90
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::ConfigurationDescriptions::addDefault
void addDefault(ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:99
edm::InputTag
Definition: InputTag.h:15
FSQDiJetAve::m_trgEvent
edm::Handle< trigger::TriggerEvent > m_trgEvent
Definition: FSQDiJetAve.h:89
FSQDiJetAve::m_triggerNames
edm::TriggerNames m_triggerNames
Definition: FSQDiJetAve.h:87
weight
Definition: weight.py:1
edm::ParameterSet::getParameterSet
ParameterSet const & getParameterSet(std::string const &) const
Definition: ParameterSet.cc:2121
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
FSQDiJetAve::m_triggerResults
edm::Handle< edm::TriggerResults > m_triggerResults
Definition: FSQDiJetAve.h:88
GenEventInfoProduct::weight
double weight() const
Definition: GenEventInfoProduct.h:35