CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
LumiMonitor Class Reference
Inheritance diagram for LumiMonitor:
DQMGlobalEDAnalyzer< Histograms > DQMGlobalEDAnalyzerBase< Histograms, Args... > edm::global::EDProducer< edm::RunCache< Histograms >, edm::EndRunProducer, edm::Accumulator, Args... > edm::global::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 LumiMonitor (const edm::ParameterSet &)
 
 ~LumiMonitor () override=default
 
- Public Member Functions inherited from DQMGlobalEDAnalyzer< Histograms >
virtual void dqmEndRun (edm::Run const &, edm::EventSetup const &, Histograms const &) const
 
void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup) const final
 
- Public Member Functions inherited from DQMGlobalEDAnalyzerBase< Histograms, Args... >
void accumulate (edm::StreamID id, edm::Event const &event, edm::EventSetup const &setup) const final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &, Histograms &) const
 
 DQMGlobalEDAnalyzerBase ()
 
std::shared_ptr< HistogramsglobalBeginRun (edm::Run const &run, edm::EventSetup const &setup) const final
 
void globalEndRun (edm::Run const &, edm::EventSetup const &) const final
 
- Public Member Functions inherited from edm::global::EDProducer< edm::RunCache< Histograms >, edm::EndRunProducer, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
bool wantsStreamLuminosityBlocks () const final
 
bool wantsStreamRuns () const final
 
- Public Member Functions inherited from edm::global::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static void fillHistoLSPSetDescription (edm::ParameterSetDescription &pset)
 
static void fillHistoPSetDescription (edm::ParameterSetDescription &pset)
 
- Static Public Member Functions inherited from edm::global::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &, Histograms &) const override
 
void dqmAnalyze (edm::Event const &, edm::EventSetup const &, Histograms const &) const override
 

Static Private Member Functions

static MEbinning getHistoLSPSet (const edm::ParameterSet &pset)
 
static MEbinning getHistoPSet (const edm::ParameterSet &pset)
 

Private Attributes

bool doPixelLumi_
 
std::string folderName_
 
MEbinning ls_binning_
 
MEbinning lumi_binning_
 
float lumi_factor_per_bx_
 
edm::EDGetTokenT< LumiScalersCollectionlumiScalersToken_
 
edm::EDGetTokenT< LumiSummarylumiSummaryToken_
 
int minNumberOfPixelsPerCluster_
 
float minPixelClusterCharge_
 
MEbinning pixelCluster_binning_
 
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
 
MEbinning pixellumi_binning_
 
MEbinning pu_binning_
 
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > const trkTopoToken_
 
bool useBPixLayer1_
 

Additional Inherited Members

- Public Types inherited from DQMGlobalEDAnalyzerBase< Histograms, Args... >
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::global::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from DQMGlobalEDAnalyzerBase< Histograms, Args... >
uint64_t meId (edm::Run const &run) const
 
- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 
- Protected Attributes inherited from DQMGlobalEDAnalyzerBase< Histograms, Args... >
DQMStoredqmstore_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 43 of file LumiMonitor.cc.

Constructor & Destructor Documentation

◆ LumiMonitor()

LumiMonitor::LumiMonitor ( const edm::ParameterSet config)

Definition at line 84 of file LumiMonitor.cc.

References edm::EDConsumerBase::esConsumes().

86  folderName_(config.getParameter<std::string>("FolderName")),
87  lumiScalersToken_(consumes<LumiScalersCollection>(config.getParameter<edm::InputTag>("scalers"))),
89  config.getParameter<edm::ParameterSet>("histoPSet").getParameter<edm::ParameterSet>("lumiPSet"))),
91  getHistoPSet(config.getParameter<edm::ParameterSet>("histoPSet").getParameter<edm::ParameterSet>("puPSet"))),
93  config.getParameter<edm::ParameterSet>("histoPSet").getParameter<edm::ParameterSet>("lsPSet"))),
94  doPixelLumi_(config.getParameter<bool>("doPixelLumi")),
96  config.getParameter<edm::InputTag>("pixelClusters"))
98  useBPixLayer1_(doPixelLumi_ ? config.getParameter<bool>("useBPixLayer1") : false),
99  minNumberOfPixelsPerCluster_(doPixelLumi_ ? config.getParameter<int>("minNumberOfPixelsPerCluster") : -1),
100  minPixelClusterCharge_(doPixelLumi_ ? config.getParameter<double>("minPixelClusterCharge") : -1.),
102  .getParameter<edm::ParameterSet>("pixelClusterPSet"))
103  : MEbinning{}),
105  .getParameter<edm::ParameterSet>("pixellumiPSet"))
106  : MEbinning{}) {
107  if (useBPixLayer1_) {
109  } else {
111  }
112 }
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > const trkTopoToken_
Definition: LumiMonitor.cc:58
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
bool useBPixLayer1_
Definition: LumiMonitor.cc:69
static MEbinning getHistoPSet(const edm::ParameterSet &pset)
Definition: LumiMonitor.cc:114
MEbinning pu_binning_
Definition: LumiMonitor.cc:64
float minPixelClusterCharge_
Definition: LumiMonitor.cc:71
Definition: config.py:1
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
Definition: LumiMonitor.cc:68
static constexpr double FREQ_ORBIT
Definition: GetLumi.h:23
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
static constexpr double SECONDS_PER_LS
Definition: GetLumi.h:24
std::string folderName_
Definition: LumiMonitor.cc:60
edm::EDGetTokenT< LumiScalersCollection > lumiScalersToken_
Definition: LumiMonitor.cc:62
MEbinning pixellumi_binning_
Definition: LumiMonitor.cc:73
static MEbinning getHistoLSPSet(const edm::ParameterSet &pset)
Definition: LumiMonitor.cc:122
bool doPixelLumi_
Definition: LumiMonitor.cc:67
MEbinning pixelCluster_binning_
Definition: LumiMonitor.cc:72
static constexpr double rXSEC_PIXEL_CLUSTER
Definition: GetLumi.h:37
float lumi_factor_per_bx_
Definition: LumiMonitor.cc:77
int minNumberOfPixelsPerCluster_
Definition: LumiMonitor.cc:70
MEbinning lumi_binning_
Definition: LumiMonitor.cc:63
static constexpr double XSEC_PIXEL_CLUSTER
Definition: GetLumi.h:33
MEbinning ls_binning_
Definition: LumiMonitor.cc:65

◆ ~LumiMonitor()

LumiMonitor::~LumiMonitor ( )
overridedefault

Member Function Documentation

◆ bookHistograms()

void LumiMonitor::bookHistograms ( DQMStore::IBooker booker,
edm::Run const &  run,
edm::EventSetup const &  setup,
Histograms histograms 
) const
overrideprivatevirtual

Implements DQMGlobalEDAnalyzerBase< Histograms, Args... >.

Definition at line 126 of file LumiMonitor.cc.

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::bookProfile(), doPixelLumi_, folderName_, ls_binning_, lumi_binning_, hlt_dqm_clientPB-live_cfg::me, pixelCluster_binning_, pixellumi_binning_, pu_binning_, and dqm::implementation::NavigatorBase::setCurrentFolder().

129  {
131 
132  if (doPixelLumi_) {
133  auto me = booker.book1D("numberOfPixelClustersVsLS",
134  "number of pixel clusters vs LS",
135  ls_binning_.nbins,
136  ls_binning_.xmin,
137  ls_binning_.xmax);
138  me->setAxisTitle("LS", 1);
139  me->setAxisTitle("number of pixel clusters", 2);
140  histograms.numberOfPixelClustersVsLS = me;
141 
142  me = booker.bookProfile("numberOfPixelClustersVsLumi",
143  "number of pixel clusters vs scal lumi",
144  lumi_binning_.nbins,
145  lumi_binning_.xmin,
146  lumi_binning_.xmax,
148  pixelCluster_binning_.xmax);
149  me->setAxisTitle("scal inst lumi E30 [Hz cm^{-2}]", 1);
150  me->setAxisTitle("number of pixel clusters", 2);
151  histograms.numberOfPixelClustersVsLumi = me;
152 
153  me = booker.bookProfile("pixelLumiVsLS",
154  "pixel-lumi vs LS",
155  ls_binning_.nbins,
156  ls_binning_.xmin,
157  ls_binning_.xmax,
158  pixellumi_binning_.xmin,
159  pixellumi_binning_.xmax);
160  me->setAxisTitle("LS", 1);
161  me->setAxisTitle("pixel-based inst lumi E30 [Hz cm^{-2}]", 2);
162  histograms.pixelLumiVsLS = me;
163 
164  me = booker.bookProfile("pixelLumiVsLumi",
165  "pixel-lumi vs scal lumi",
166  lumi_binning_.nbins,
167  lumi_binning_.xmin,
168  lumi_binning_.xmax,
169  pixellumi_binning_.xmin,
170  lumi_binning_.xmax);
171  me->setAxisTitle("scal inst lumi E30 [Hz cm^{-2}]", 1);
172  me->setAxisTitle("pixel-based inst lumi E30 [Hz cm^{-2}]", 2);
173  histograms.pixelLumiVsLumi = me;
174  }
175 
176  auto me = booker.bookProfile("lumiVsLS",
177  "scal lumi vs LS",
178  ls_binning_.nbins,
179  ls_binning_.xmin,
180  ls_binning_.xmax,
181  lumi_binning_.xmin,
182  lumi_binning_.xmax);
183  me->setAxisTitle("LS", 1);
184  me->setAxisTitle("scal inst lumi E30 [Hz cm^{-2}]", 2);
185  histograms.lumiVsLS = me;
186 
187  me = booker.bookProfile("puVsLS",
188  "scal PU vs LS",
189  ls_binning_.nbins,
190  ls_binning_.xmin,
191  ls_binning_.xmax,
192  pu_binning_.xmin,
193  pu_binning_.xmax);
194  me->setAxisTitle("LS", 1);
195  me->setAxisTitle("scal PU", 2);
196  histograms.puVsLS = me;
197 }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
MEbinning pu_binning_
Definition: LumiMonitor.cc:64
std::string folderName_
Definition: LumiMonitor.cc:60
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
Definition: DQMStore.h:399
MEbinning pixellumi_binning_
Definition: LumiMonitor.cc:73
bool doPixelLumi_
Definition: LumiMonitor.cc:67
MEbinning pixelCluster_binning_
Definition: LumiMonitor.cc:72
MEbinning lumi_binning_
Definition: LumiMonitor.cc:63
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
MEbinning ls_binning_
Definition: LumiMonitor.cc:65

◆ dqmAnalyze()

void LumiMonitor::dqmAnalyze ( edm::Event const &  event,
edm::EventSetup const &  setup,
Histograms const &  histograms 
) const
overrideprivatevirtual

Implements DQMGlobalEDAnalyzerBase< Histograms, Args... >.

Definition at line 199 of file LumiMonitor.cc.

References GetLumi::CM2_TO_NANOBARN, doPixelLumi_, eostools::ls(), lumi_factor_per_bx_, V0Monitor_cfi::lumiScalers, lumiScalersToken_, minNumberOfPixelsPerCluster_, minPixelClusterCharge_, PixelSubdetector::PixelBarrel, LumiMonitor_cff::pixelClusters, pixelClustersToken_, singleTopDQM_cfi::setup, DetId::subdetId(), compareTotals::tot, and trkTopoToken_.

201  {
202  int ls = event.id().luminosityBlock();
203 
204  float scal_lumi = -1.;
205  float scal_pu = -1.;
207  event.getByToken(lumiScalersToken_, lumiScalers);
208  if (lumiScalers.isValid() and not lumiScalers->empty()) {
209  auto scalit = lumiScalers->begin();
210  scal_lumi = scalit->instantLumi();
211  scal_pu = scalit->pileup();
212  } else {
213  scal_lumi = -1.;
214  scal_pu = -1.;
215  }
216  histograms.lumiVsLS->Fill(ls, scal_lumi);
217  histograms.puVsLS->Fill(ls, scal_pu);
218 
219  if (doPixelLumi_) {
220  size_t pixel_clusters = 0;
221  float pixel_lumi = -1.;
223  event.getByToken(pixelClustersToken_, pixelClusters);
224  if (pixelClusters.isValid()) {
225  auto const& tTopo = setup.getData(trkTopoToken_);
226 
227  // Count the number of clusters with at least a minimum
228  // number of pixels per cluster and at least a minimum charge.
229  size_t tot = 0;
230  for (auto pixCluDet = pixelClusters->begin(); pixCluDet != pixelClusters->end(); ++pixCluDet) {
231  DetId detid = pixCluDet->detId();
232  size_t subdetid = detid.subdetId();
233  if (subdetid == (int)PixelSubdetector::PixelBarrel) {
234  if (tTopo.layer(detid) == 1) {
235  continue;
236  }
237  }
238 
239  for (auto pixClu = pixCluDet->begin(); pixClu != pixCluDet->end(); ++pixClu) {
240  ++tot;
241  if ((pixClu->size() >= minNumberOfPixelsPerCluster_) and (pixClu->charge() >= minPixelClusterCharge_)) {
242  ++pixel_clusters;
243  }
244  }
245  }
246  pixel_lumi = lumi_factor_per_bx_ * pixel_clusters / GetLumi::CM2_TO_NANOBARN; // ?!?!
247  } else {
248  pixel_lumi = -1.;
249  }
250 
251  histograms.numberOfPixelClustersVsLS->Fill(ls, pixel_clusters);
252  histograms.numberOfPixelClustersVsLumi->Fill(scal_lumi, pixel_clusters);
253  histograms.pixelLumiVsLS->Fill(ls, pixel_lumi);
254  histograms.pixelLumiVsLumi->Fill(scal_lumi, pixel_lumi);
255  }
256 }
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > const trkTopoToken_
Definition: LumiMonitor.cc:58
float minPixelClusterCharge_
Definition: LumiMonitor.cc:71
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
Definition: LumiMonitor.cc:68
edm::EDGetTokenT< LumiScalersCollection > lumiScalersToken_
Definition: LumiMonitor.cc:62
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:48
Definition: DetId.h:17
def ls(path, rec=False)
Definition: eostools.py:349
bool doPixelLumi_
Definition: LumiMonitor.cc:67
static constexpr double CM2_TO_NANOBARN
Definition: GetLumi.h:39
float lumi_factor_per_bx_
Definition: LumiMonitor.cc:77
int minNumberOfPixelsPerCluster_
Definition: LumiMonitor.cc:70

◆ fillDescriptions()

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

Definition at line 266 of file LumiMonitor.cc.

References edm::ConfigurationDescriptions::add(), submitPVResolutionJobs::desc, fillHistoLSPSetDescription(), fillHistoPSetDescription(), LumiMonitor_cff::histoPSet, HLT_2022v11_cff::InputTag, LumiMonitor_cff::lsPSet, LumiMonitor_cff::lumiPSet, LumiMonitor_cff::pixelClusterPSet, LumiMonitor_cff::pixellumiPSet, LumiMonitor_cff::puPSet, and AlCaHLTBitMon_QueryRunRegistry::string.

266  {
268  desc.add<edm::InputTag>("pixelClusters", edm::InputTag("hltSiPixelClusters"));
269  desc.add<edm::InputTag>("scalers", edm::InputTag("hltScalersRawToDigi"));
270  desc.add<std::string>("FolderName", "HLT/LumiMonitoring");
271  desc.add<bool>("doPixelLumi", false);
272  desc.add<bool>("useBPixLayer1", false);
273  desc.add<int>("minNumberOfPixelsPerCluster", 2); // from DQM/PixelLumi/python/PixelLumiDQM_cfi.py
274  desc.add<double>("minPixelClusterCharge", 15000.);
275 
279  histoPSet.add("pixelClusterPSet", pixelClusterPSet);
280 
284 
288 
292 
296 
297  desc.add<edm::ParameterSetDescription>("histoPSet", histoPSet);
298 
299  descriptions.add("lumiMonitor", desc);
300 }
static void fillHistoLSPSetDescription(edm::ParameterSetDescription &pset)
Definition: LumiMonitor.cc:264
static void fillHistoPSetDescription(edm::ParameterSetDescription &pset)
Definition: LumiMonitor.cc:258
void add(std::string const &label, ParameterSetDescription const &psetDescription)

◆ fillHistoLSPSetDescription()

void LumiMonitor::fillHistoLSPSetDescription ( edm::ParameterSetDescription pset)
static

Definition at line 264 of file LumiMonitor.cc.

References muonDTDigis_cfi::pset.

Referenced by fillDescriptions().

264 { pset.add<int>("nbins", 2500); }

◆ fillHistoPSetDescription()

void LumiMonitor::fillHistoPSetDescription ( edm::ParameterSetDescription pset)
static

Definition at line 258 of file LumiMonitor.cc.

References muonDTDigis_cfi::pset.

Referenced by fillDescriptions().

258  {
259  pset.add<int>("nbins");
260  pset.add<double>("xmin");
261  pset.add<double>("xmax");
262 }

◆ getHistoLSPSet()

MEbinning LumiMonitor::getHistoLSPSet ( const edm::ParameterSet pset)
staticprivate

Definition at line 122 of file LumiMonitor.cc.

References muonDTDigis_cfi::pset.

122  {
123  return MEbinning{pset.getParameter<int32_t>("nbins"), -0.5, pset.getParameter<int32_t>("nbins") - 0.5};
124 }

◆ getHistoPSet()

MEbinning LumiMonitor::getHistoPSet ( const edm::ParameterSet pset)
staticprivate

Definition at line 114 of file LumiMonitor.cc.

References muonDTDigis_cfi::pset.

114  {
115  return MEbinning{
116  pset.getParameter<int32_t>("nbins"),
117  pset.getParameter<double>("xmin"),
118  pset.getParameter<double>("xmax"),
119  };
120 }

Member Data Documentation

◆ doPixelLumi_

bool LumiMonitor::doPixelLumi_
private

Definition at line 67 of file LumiMonitor.cc.

Referenced by bookHistograms(), and dqmAnalyze().

◆ folderName_

std::string LumiMonitor::folderName_
private

Definition at line 60 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ ls_binning_

MEbinning LumiMonitor::ls_binning_
private

Definition at line 65 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ lumi_binning_

MEbinning LumiMonitor::lumi_binning_
private

Definition at line 63 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ lumi_factor_per_bx_

float LumiMonitor::lumi_factor_per_bx_
private

Definition at line 77 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ lumiScalersToken_

edm::EDGetTokenT<LumiScalersCollection> LumiMonitor::lumiScalersToken_
private

Definition at line 62 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ lumiSummaryToken_

edm::EDGetTokenT<LumiSummary> LumiMonitor::lumiSummaryToken_
private

Definition at line 75 of file LumiMonitor.cc.

◆ minNumberOfPixelsPerCluster_

int LumiMonitor::minNumberOfPixelsPerCluster_
private

Definition at line 70 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ minPixelClusterCharge_

float LumiMonitor::minPixelClusterCharge_
private

Definition at line 71 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ pixelCluster_binning_

MEbinning LumiMonitor::pixelCluster_binning_
private

Definition at line 72 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ pixelClustersToken_

edm::EDGetTokenT<edmNew::DetSetVector<SiPixelCluster> > LumiMonitor::pixelClustersToken_
private

Definition at line 68 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ pixellumi_binning_

MEbinning LumiMonitor::pixellumi_binning_
private

Definition at line 73 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ pu_binning_

MEbinning LumiMonitor::pu_binning_
private

Definition at line 64 of file LumiMonitor.cc.

Referenced by bookHistograms().

◆ trkTopoToken_

edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> const LumiMonitor::trkTopoToken_
private

Definition at line 58 of file LumiMonitor.cc.

Referenced by dqmAnalyze().

◆ useBPixLayer1_

bool LumiMonitor::useBPixLayer1_
private

Definition at line 69 of file LumiMonitor.cc.