CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
SiPixelClusterSource Class Reference

#include <SiPixelClusterSource.h>

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

Public Types

typedef edmNew::DetSet< SiPixelCluster >::const_iterator ClusterIterator
 
- 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 >
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
virtual void bookMEs (DQMStore::IBooker &, const edm::EventSetup &iSetup)
 
virtual void buildStructure (edm::EventSetup const &)
 
void dqmBeginRun (const edm::Run &, edm::EventSetup const &) override
 
 SiPixelClusterSource (const edm::ParameterSet &conf)
 
 ~SiPixelClusterSource () 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
 
 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
 
const EDProduceroperator= (const EDProducer &)=delete
 

Public Attributes

std::string topFolderName_
 

Private Member Functions

void getrococcupancy (DetId detId, const edm::DetSetVector< PixelDigi > &diginp, const TrackerTopology *const tTopo, std::vector< MonitorElement *> const &meinput)
 
void getrococcupancye (DetId detId, const edmNew::DetSetVector< SiPixelCluster > &clustColl, const TrackerTopology *const pTT, edm::ESHandle< TrackerGeometry > pDD, MonitorElement *meinput)
 

Private Attributes

int bigEventSize
 
MonitorElementbigFpixClusterEventRate
 
bool bladeOn
 
edm::ParameterSet conf_
 
edm::InputTag digisrc_
 
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > digisrcToken_
 
bool diskOn
 
int eventNo
 
bool firstRun
 
bool isPIB
 
bool isUpgrade
 
bool ladOn
 
bool layOn
 
int lumSec
 
std::vector< MonitorElement * > meClPosDiskmz
 
std::vector< MonitorElement * > meClPosDiskpz
 
std::vector< MonitorElement * > meClPosLayer
 
MonitorElementmeClusBarrelProf
 
MonitorElementmeClusFpixMProf
 
MonitorElementmeClusFpixPProf
 
std::vector< MonitorElement * > meZeroRocBPIX
 
MonitorElementmeZeroRocFPIX
 
bool modOn
 
int nBigEvents
 
int nLumiSecs
 
int noOfDisks
 
int noOfLayers
 
bool phiOn
 
bool reducedSet
 
bool ringOn
 
bool saveFile
 
bool slowDown
 
bool smileyOn
 
edm::InputTag src_
 
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > srcToken_
 
std::map< uint32_t, SiPixelClusterModule * > thePixelStructure
 
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordtrackerGeomToken_
 
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordtrackerGeomTokenBeginRun_
 
edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtrackerTopoToken_
 
edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtrackerTopoTokenBeginRun_
 
bool twoDimOn
 

Additional Inherited Members

- 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 &)
 
- 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

Definition at line 35 of file SiPixelClusterSource.h.

Member Typedef Documentation

◆ ClusterIterator

Definition at line 40 of file SiPixelClusterSource.h.

Constructor & Destructor Documentation

◆ SiPixelClusterSource()

SiPixelClusterSource::SiPixelClusterSource ( const edm::ParameterSet conf)
explicit

Definition at line 45 of file SiPixelClusterSource.cc.

References conf_, digisrcToken_, firstRun, edm::ParameterSet::getParameter(), srcToken_, AlCaHLTBitMon_QueryRunRegistry::string, topFolderName_, trackerGeomToken_, trackerGeomTokenBeginRun_, trackerTopoToken_, and trackerTopoTokenBeginRun_.

46  : conf_(iConfig),
49  saveFile(conf_.getUntrackedParameter<bool>("saveFile", false)),
50  isPIB(conf_.getUntrackedParameter<bool>("isPIB", false)),
51  slowDown(conf_.getUntrackedParameter<bool>("slowDown", false)),
52  modOn(conf_.getUntrackedParameter<bool>("modOn", true)),
53  twoDimOn(conf_.getUntrackedParameter<bool>("twoDimOn", true)),
54  reducedSet(conf_.getUntrackedParameter<bool>("reducedSet", false)),
55  ladOn(conf_.getUntrackedParameter<bool>("ladOn", false)),
56  layOn(conf_.getUntrackedParameter<bool>("layOn", false)),
57  phiOn(conf_.getUntrackedParameter<bool>("phiOn", false)),
58  ringOn(conf_.getUntrackedParameter<bool>("ringOn", false)),
59  bladeOn(conf_.getUntrackedParameter<bool>("bladeOn", false)),
60  diskOn(conf_.getUntrackedParameter<bool>("diskOn", false)),
61  smileyOn(conf_.getUntrackedParameter<bool>("smileyOn", false)),
62  bigEventSize(conf_.getUntrackedParameter<int>("bigEventSize", 100)),
63  isUpgrade(conf_.getUntrackedParameter<bool>("isUpgrade", false)),
64  noOfLayers(0),
65  noOfDisks(0) {
66  LogInfo("PixelDQM") << "SiPixelClusterSource::SiPixelClusterSource: Got DQM BackEnd interface" << endl;
67 
68  // set Token(-s)
69  srcToken_ = consumes<edmNew::DetSetVector<SiPixelCluster>>(conf_.getParameter<edm::InputTag>("src"));
70  digisrcToken_ = consumes<edm::DetSetVector<PixelDigi>>(conf_.getParameter<edm::InputTag>("digisrc"));
71 
72  trackerTopoToken_ = esConsumes<TrackerTopology, TrackerTopologyRcd>();
73  trackerGeomToken_ = esConsumes<TrackerGeometry, TrackerDigiGeometryRecord>();
74  trackerTopoTokenBeginRun_ = esConsumes<TrackerTopology, TrackerTopologyRcd, edm::Transition::BeginRun>();
75  trackerGeomTokenBeginRun_ = esConsumes<TrackerGeometry, TrackerDigiGeometryRecord, edm::Transition::BeginRun>();
76 
77  firstRun = true;
78  topFolderName_ = conf_.getParameter<std::string>("TopFolderName");
79 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopoToken_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeomTokenBeginRun_
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > srcToken_
T getUntrackedParameter(std::string const &, T const &) const
edm::ParameterSet conf_
Log< level::Info, false > LogInfo
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopoTokenBeginRun_
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > digisrcToken_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeomToken_

◆ ~SiPixelClusterSource()

SiPixelClusterSource::~SiPixelClusterSource ( )
override

Definition at line 81 of file SiPixelClusterSource.cc.

References thePixelStructure.

81  {
82  // do anything here that needs to be done at desctruction time
83  // (e.g. close files, deallocate resources etc.)
84  LogInfo("PixelDQM") << "SiPixelClusterSource::~SiPixelClusterSource: Destructor" << endl;
85 
86  std::map<uint32_t, SiPixelClusterModule *>::iterator struct_iter;
87  for (struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++) {
88  delete struct_iter->second;
89  struct_iter->second = nullptr;
90  }
91 }
std::map< uint32_t, SiPixelClusterModule * > thePixelStructure
Log< level::Info, false > LogInfo

Member Function Documentation

◆ analyze()

void SiPixelClusterSource::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 216 of file SiPixelClusterSource.cc.

References bigEventSize, bigFpixClusterEventRate, bladeOn, hcalRecHitTable_cff::detId, TrackerGeometry::dets(), digisrcToken_, diskOn, eventNo, dqm::impl::MonitorElement::Fill(), edm::EventSetup::getHandle(), getrococcupancy(), getrococcupancye(), mps_fire::i, iEvent, input, createfilelist::int, isUpgrade, ladOn, layOn, meClPosDiskmz, meClPosDiskpz, meClPosLayer, meClusBarrelProf, meClusFpixMProf, meClusFpixPProf, meZeroRocBPIX, meZeroRocFPIX, modOn, noOfDisks, noOfLayers, phiOn, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, edm::Handle< T >::product(), edm::ESHandle< T >::product(), reducedSet, ringOn, slowDown, smileyOn, srcToken_, thePixelStructure, PbPb_ZMuSkimMuonDPG_cff::tracker, trackerGeomToken_, trackerTopoToken_, and twoDimOn.

216  {
217  eventNo++;
218 
219  if (meClPosLayer.at(0) && meClPosLayer.at(0)->getEntries() > 150000) {
220  for (int i = 0; i < noOfLayers; i++) {
221  meClPosLayer.at(i)->Reset();
222  }
223  for (int i = 0; i < noOfDisks; i++) {
224  meClPosDiskpz.at(i)->Reset();
225  meClPosDiskmz.at(i)->Reset();
226  }
227  }
228 
229  // get input data
231  iEvent.getByToken(srcToken_, input);
232  auto const &clustColl = *(input.product());
233 
235  const TrackerGeometry *tracker = &(*pDD);
236 
238  iEvent.getByToken(digisrcToken_, digiinput);
239  const edm::DetSetVector<PixelDigi> diginp = *(digiinput.product());
240 
242  const TrackerTopology *pTT = tTopoHandle.product();
243 
244  int lumiSection = (int)iEvent.luminosityBlock();
245  int nEventFpixClusters = 0;
246 
247  int nEventsBarrel = 0;
248  int nEventsFPIXm = 0;
249  int nEventsFPIXp = 0;
250 
251  std::map<uint32_t, SiPixelClusterModule *>::iterator struct_iter;
252  for (struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++) {
253  int numberOfFpixClusters = (*struct_iter)
254  .second->fill(*input,
255  pTT,
256  tracker,
257  &nEventsBarrel,
258  &nEventsFPIXp,
259  &nEventsFPIXm,
260  meClPosLayer,
263  modOn,
264  ladOn,
265  layOn,
266  phiOn,
267  bladeOn,
268  diskOn,
269  ringOn,
270  twoDimOn,
271  reducedSet,
272  smileyOn,
273  isUpgrade);
274  nEventFpixClusters = nEventFpixClusters + numberOfFpixClusters;
275  }
276 
277  if (nEventFpixClusters > bigEventSize) {
279  bigFpixClusterEventRate->Fill(lumiSection, 1. / 23.);
280  }
281  }
282 
283  float trendVar = iEvent.orbitNumber() / 262144.0; // lumisection : seconds - matches strip trend plot
284 
285  meClusBarrelProf->Fill(trendVar, nEventsBarrel);
286  meClusFpixPProf->Fill(trendVar, nEventsFPIXp);
287  meClusFpixMProf->Fill(trendVar, nEventsFPIXm);
288 
289  // std::cout<<"nEventFpixClusters: "<<nEventFpixClusters<<" , nLumiSecs:
290  // "<<nLumiSecs<<" , nBigEvents: "<<nBigEvents<<std::endl;
291 
292  for (TrackerGeometry::DetContainer::const_iterator it = pDD->dets().begin(); it != pDD->dets().end(); it++) {
293  DetId detId = (*it)->geographicalId();
294 
295  // fill barrel
296  if (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel)) {
297  getrococcupancy(detId, diginp, pTT, meZeroRocBPIX);
298  }
299 
300  // fill endcap
301  if (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap)) {
302  getrococcupancye(detId, clustColl, pTT, pDD, meZeroRocFPIX);
303  }
304  }
305 
306  // slow down...
307  if (slowDown)
308  usleep(10000);
309 }
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopoToken_
T const * product() const
Definition: Handle.h:70
std::vector< MonitorElement * > meClPosLayer
std::vector< MonitorElement * > meClPosDiskmz
const DetContainer & dets() const override
Returm a vector of all GeomDet (including all GeomDetUnits)
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > srcToken_
MonitorElement * meZeroRocFPIX
std::map< uint32_t, SiPixelClusterModule * > thePixelStructure
static std::string const input
Definition: EdmProvDump.cc:50
void Fill(long long x)
int iEvent
Definition: GenABIO.cc:224
T const * product() const
Definition: ESHandle.h:86
MonitorElement * meClusBarrelProf
MonitorElement * meClusFpixMProf
void getrococcupancy(DetId detId, const edm::DetSetVector< PixelDigi > &diginp, const TrackerTopology *const tTopo, std::vector< MonitorElement *> const &meinput)
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:130
Definition: DetId.h:17
std::vector< MonitorElement * > meZeroRocBPIX
void getrococcupancye(DetId detId, const edmNew::DetSetVector< SiPixelCluster > &clustColl, const TrackerTopology *const pTT, edm::ESHandle< TrackerGeometry > pDD, MonitorElement *meinput)
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > digisrcToken_
MonitorElement * meClusFpixPProf
std::vector< MonitorElement * > meClPosDiskpz
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeomToken_
MonitorElement * bigFpixClusterEventRate

◆ bookHistograms()

void SiPixelClusterSource::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &  iSetup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 112 of file SiPixelClusterSource.cc.

References dqm::implementation::IBooker::book2D(), bookMEs(), dqm::implementation::IBooker::bookProfile(), digisrc_, dqm::impl::MonitorElement::getTH1(), mps_fire::i, edm::InputTag::label(), meClPosDiskmz, meClPosDiskpz, meClPosLayer, meClusBarrelProf, meClusFpixMProf, meClusFpixPProf, meZeroRocBPIX, meZeroRocFPIX, noOfDisks, noOfLayers, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, topFolderName_, L1TOccupancyClient_cfi::ymax, and L1TOccupancyClient_cfi::ymin.

112  {
113  bookMEs(iBooker, iSetup);
114  // Book occupancy maps in global coordinates for all clusters:
115  iBooker.setCurrentFolder(topFolderName_ + "/Clusters/OffTrack");
116  // bpix
117  std::stringstream ss1, ss2;
118  for (int i = 1; i <= noOfLayers; i++) {
119  ss1.str(std::string());
120  ss1 << "position_siPixelClusters_Layer_" << i;
121  ss2.str(std::string());
122  ss2 << "Clusters Layer" << i << ";Global Z (cm);Global #phi";
123  meClPosLayer.push_back(iBooker.book2D(ss1.str(), ss2.str(), 200, -30., 30., 128, -3.2, 3.2));
124  }
125  for (int i = 1; i <= noOfDisks; i++) {
126  ss1.str(std::string());
127  ss1 << "position_siPixelClusters_pz_Disk_" << i;
128  ss2.str(std::string());
129  ss2 << "Clusters +Z Disk" << i << ";Global X (cm);Global Y (cm)";
130  meClPosDiskpz.push_back(iBooker.book2D(ss1.str(), ss2.str(), 80, -20., 20., 80, -20., 20.));
131  ss1.str(std::string());
132  ss1 << "position_siPixelClusters_mz_Disk_" << i;
133  ss2.str(std::string());
134  ss2 << "Clusters -Z Disk" << i << ";Global X (cm);Global Y (cm)";
135  meClPosDiskmz.push_back(iBooker.book2D(ss1.str(), ss2.str(), 80, -20., 20., 80, -20., 20.));
136  }
137 
138  // Book trend cluster plots for barrel and endcap. Lumisections for offline
139  // and second for online - taken from strips
140  iBooker.setCurrentFolder(topFolderName_ + "/Barrel");
141  ss1.str(std::string());
142  ss1 << "totalNumberOfClustersProfile_siPixelClusters_Barrel";
143  ss2.str(std::string());
144  ss2 << "Total number of barrel clusters profile;Lumisection;";
145  meClusBarrelProf = iBooker.bookProfile(ss1.str(), ss2.str(), 2400, 0., 150, 0, 0, "");
146  meClusBarrelProf->getTH1()->SetCanExtend(TH1::kAllAxes);
147 
148  iBooker.setCurrentFolder(topFolderName_ + "/Endcap");
149 
150  ss1.str(std::string());
151  ss1 << "totalNumberOfClustersProfile_siPixelClusters_FPIX+";
152  ss2.str(std::string());
153  ss2 << "Total number of FPIX+ clusters profile;Lumisection;";
154  meClusFpixPProf = iBooker.bookProfile(ss1.str(), ss2.str(), 2400, 0., 150, 0, 0, "");
155  meClusFpixPProf->getTH1()->SetCanExtend(TH1::kAllAxes);
156 
157  ss1.str(std::string());
158  ss1 << "totalNumberOfClustersProfile_siPixelClusters_FPIX-";
159  ss2.str(std::string());
160  ss2 << "Total number of FPIX- clusters profile;Lumisection;";
161  meClusFpixMProf = iBooker.bookProfile(ss1.str(), ss2.str(), 2400, 0., 150, 0, 0, "");
162  meClusFpixMProf->getTH1()->SetCanExtend(TH1::kAllAxes);
163 
164  iBooker.setCurrentFolder(topFolderName_ + "/Barrel");
165  for (int i = 1; i <= noOfLayers; i++) {
166  int ybins = -1;
167  float ymin = 0.;
168  float ymax = 0.;
169  if (i == 1) {
170  ybins = 42;
171  ymin = -10.5;
172  ymax = 10.5;
173  }
174  if (i == 2) {
175  ybins = 66;
176  ymin = -16.5;
177  ymax = 16.5;
178  }
179  if (i == 3) {
180  ybins = 90;
181  ymin = -22.5;
182  ymax = 22.5;
183  }
184  if (i == 4) {
185  ybins = 130;
186  ymin = -32.5;
187  ymax = 32.5;
188  }
189  ss1.str(std::string());
190  ss1 << "pix_bar Occ_roc_online_" + digisrc_.label() + "_layer_" << i;
191  ss2.str(std::string());
192  ss2 << "Pixel Barrel Occupancy, ROC level (Online): Layer " << i;
193  meZeroRocBPIX.push_back(iBooker.book2D(ss1.str(), ss2.str(), 72, -4.5, 4.5, ybins, ymin, ymax));
194  meZeroRocBPIX.at(i - 1)->setAxisTitle("ROC / Module", 1);
195  meZeroRocBPIX.at(i - 1)->setAxisTitle("ROC / Ladder", 2);
196  }
197 
198  iBooker.setCurrentFolder(topFolderName_ + "/Endcap");
199  meZeroRocFPIX = iBooker.book2D(
200  "ROC_endcap_occupancy", "Pixel Endcap Occupancy, ROC level (Online)", 72, -4.5, 4.5, 288, -12.5, 12.5);
201  meZeroRocFPIX->setBinLabel(1, "Disk-2 Pnl2", 1);
202  meZeroRocFPIX->setBinLabel(9, "Disk-2 Pnl1", 1);
203  meZeroRocFPIX->setBinLabel(19, "Disk-1 Pnl2", 1);
204  meZeroRocFPIX->setBinLabel(27, "Disk-1 Pnl1", 1);
205  meZeroRocFPIX->setBinLabel(41, "Disk+1 Pnl1", 1);
206  meZeroRocFPIX->setBinLabel(49, "Disk+1 Pnl2", 1);
207  meZeroRocFPIX->setBinLabel(59, "Disk+2 Pnl1", 1);
208  meZeroRocFPIX->setBinLabel(67, "Disk+2 Pnl2", 1);
209  meZeroRocFPIX->setAxisTitle("Blades in Inner (>0) / Outer(<) Halves", 2);
210  meZeroRocFPIX->setAxisTitle("ROC occupancy", 3);
211 }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
std::vector< MonitorElement * > meClPosLayer
std::vector< MonitorElement * > meClPosDiskmz
std::string const & label() const
Definition: InputTag.h:36
MonitorElement * meZeroRocFPIX
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
MonitorElement * meClusBarrelProf
MonitorElement * meClusFpixMProf
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
std::vector< MonitorElement * > meZeroRocBPIX
MonitorElement * meClusFpixPProf
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:212
std::vector< MonitorElement * > meClPosDiskpz
virtual void bookMEs(DQMStore::IBooker &, const edm::EventSetup &iSetup)
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)

◆ bookMEs()

void SiPixelClusterSource::bookMEs ( DQMStore::IBooker iBooker,
const edm::EventSetup iSetup 
)
virtual

Create folder tree and book histograms

Definition at line 384 of file SiPixelClusterSource.cc.

References bigEventSize, bigFpixClusterEventRate, bladeOn, dqm::implementation::IBooker::book1D(), conf_, diskOn, Exception, edm::EventSetup::getHandle(), isPIB, isUpgrade, ladOn, layOn, LogDebug, modOn, phiOn, edm::ESHandle< T >::product(), reducedSet, ringOn, TrackerTopology::second(), dqm::implementation::NavigatorBase::setCurrentFolder(), SiPixelFolderOrganizer::setModuleFolder(), smileyOn, thePixelStructure, runGCPTkAlMap::title, topFolderName_, trackerTopoTokenBeginRun_, and twoDimOn.

Referenced by bookHistograms().

384  {
385  // Get DQM interface
387  char title[256];
388  snprintf(title,
389  256,
390  "Rate of events with >%i FPIX clusters;LumiSection;Rate of large "
391  "FPIX events per LS [Hz]",
392  bigEventSize);
393  bigFpixClusterEventRate = iBooker.book1D("bigFpixClusterEventRate", title, 5000, 0., 5000.);
394 
395  std::map<uint32_t, SiPixelClusterModule *>::iterator struct_iter;
396 
397  SiPixelFolderOrganizer theSiPixelFolder(false);
398 
400  const TrackerTopology *pTT = tTopoHandle.product();
401 
402  for (struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++) {
404  if (modOn) {
405  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 0, isUpgrade)) {
406  (*struct_iter).second->book(conf_, pTT, iBooker, 0, twoDimOn, reducedSet, isUpgrade);
407  } else {
408  if (!isPIB)
409  throw cms::Exception("LogicError") << "[SiPixelClusterSource::bookMEs] Creation of DQM folder "
410  "failed";
411  }
412  }
413  if (ladOn) {
414  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 1, isUpgrade)) {
415  (*struct_iter).second->book(conf_, pTT, iBooker, 1, twoDimOn, reducedSet, isUpgrade);
416  } else {
417  LogDebug("PixelDQM") << "PROBLEM WITH LADDER-FOLDER\n";
418  }
419  }
420  if (layOn) {
421  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 2, isUpgrade)) {
422  (*struct_iter).second->book(conf_, pTT, iBooker, 2, twoDimOn, reducedSet, isUpgrade);
423  } else {
424  LogDebug("PixelDQM") << "PROBLEM WITH LAYER-FOLDER\n";
425  }
426  }
427  if (phiOn) {
428  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 3, isUpgrade)) {
429  (*struct_iter).second->book(conf_, pTT, iBooker, 3, twoDimOn, reducedSet, isUpgrade);
430  } else {
431  LogDebug("PixelDQM") << "PROBLEM WITH PHI-FOLDER\n";
432  }
433  }
434  if (bladeOn) {
435  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 4, isUpgrade)) {
436  (*struct_iter).second->book(conf_, pTT, iBooker, 4, twoDimOn, reducedSet, isUpgrade);
437  } else {
438  LogDebug("PixelDQM") << "PROBLEM WITH BLADE-FOLDER\n";
439  }
440  }
441  if (diskOn) {
442  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 5, isUpgrade)) {
443  (*struct_iter).second->book(conf_, pTT, iBooker, 5, twoDimOn, reducedSet, isUpgrade);
444  } else {
445  LogDebug("PixelDQM") << "PROBLEM WITH DISK-FOLDER\n";
446  }
447  }
448  if (ringOn) {
449  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 6, isUpgrade)) {
450  (*struct_iter).second->book(conf_, pTT, iBooker, 6, twoDimOn, reducedSet, isUpgrade);
451  } else {
452  LogDebug("PixelDQM") << "PROBLEM WITH RING-FOLDER\n";
453  }
454  }
455  if (smileyOn) {
456  if (theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 7, isUpgrade)) {
457  (*struct_iter).second->book(conf_, pTT, iBooker, 7, twoDimOn, reducedSet, isUpgrade);
458  } else {
459  LogDebug("PixelDQM") << "PROBLEM WITH BARREL-FOLDER\n";
460  }
461  }
462  }
463 }
uint32_t second(const DetId &id) const
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
std::map< uint32_t, SiPixelClusterModule * > thePixelStructure
T const * product() const
Definition: ESHandle.h:86
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:130
edm::ParameterSet conf_
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopoTokenBeginRun_
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
MonitorElement * bigFpixClusterEventRate
#define LogDebug(id)

◆ buildStructure()

void SiPixelClusterSource::buildStructure ( edm::EventSetup const &  iSetup)
virtual

Definition at line 314 of file SiPixelClusterSource.cc.

References PixelEndcapName::bladeName(), hcalRecHitTable_cff::detId, TrackerGeometry::dets(), TrackerGeometry::detTypes(), PixelEndcapName::diskName(), edm::EventSetup::getHandle(), PixelEndcapName::halfCylinder(), TrackerGeometry::idToDetUnit(), isPIB, isUpgrade, nano_mu_digi_cff::layer, PixelBarrelName::layerName(), LogDebug, gpuClustering::pixelStatus::mask, hgcalPlots::ncols, noOfDisks, noOfLayers, PixelEndcapName::pannelName(), PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, PixelEndcapName::plaquetteName(), edm::ESHandle< T >::product(), PixelGeomDetUnit::specificTopology(), AlCaHLTBitMon_QueryRunRegistry::string, thePixelStructure, trackerGeomTokenBeginRun_, and trackerTopoTokenBeginRun_.

Referenced by dqmBeginRun().

314  {
315  LogInfo("PixelDQM") << " SiPixelClusterSource::buildStructure";
317 
318  edm::ESHandle<TrackerTopology> tTopoHandle = iSetup.getHandle(trackerTopoTokenBeginRun_);
319  const TrackerTopology *pTT = tTopoHandle.product();
320 
321  LogVerbatim("PixelDQM") << " *** Geometry node for TrackerGeom is " << &(*pDD) << std::endl;
322  LogVerbatim("PixelDQM") << " *** I have " << pDD->dets().size() << " detectors" << std::endl;
323  LogVerbatim("PixelDQM") << " *** I have " << pDD->detTypes().size() << " types" << std::endl;
324 
325  for (TrackerGeometry::DetContainer::const_iterator it = pDD->dets().begin(); it != pDD->dets().end(); it++) {
326  if (dynamic_cast<PixelGeomDetUnit const *>((*it)) != nullptr) {
327  DetId detId = (*it)->geographicalId();
328  const GeomDetUnit *geoUnit = pDD->idToDetUnit(detId);
329  const PixelGeomDetUnit *pixDet = dynamic_cast<const PixelGeomDetUnit *>(geoUnit);
330  int nrows = (pixDet->specificTopology()).nrows();
331  int ncols = (pixDet->specificTopology()).ncolumns();
332 
333  if ((detId.subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel)) ||
334  (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap))) {
335  uint32_t id = detId();
336  if (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel)) {
337  if (isPIB)
338  continue;
339  LogDebug("PixelDQM") << " ---> Adding Barrel Module " << detId.rawId() << endl;
340  int layer = PixelBarrelName(DetId(id), pTT, isUpgrade).layerName();
341  if (layer > noOfLayers)
342  noOfLayers = layer;
343  SiPixelClusterModule *theModule = new SiPixelClusterModule(id, ncols, nrows);
344  thePixelStructure.insert(pair<uint32_t, SiPixelClusterModule *>(id, theModule));
345  } else if (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap)) {
346  LogDebug("PixelDQM") << " ---> Adding Endcap Module " << detId.rawId() << endl;
348  int disk = PixelEndcapName(DetId(id), pTT, isUpgrade).diskName();
349  if (disk > noOfDisks)
350  noOfDisks = disk;
351  int blade = PixelEndcapName(DetId(id), pTT, isUpgrade).bladeName();
352  int panel = PixelEndcapName(DetId(id), pTT, isUpgrade).pannelName();
354  char sside[80];
355  sprintf(sside, "HalfCylinder_%i", side);
356  char sdisk[80];
357  sprintf(sdisk, "Disk_%i", disk);
358  char sblade[80];
359  sprintf(sblade, "Blade_%02i", blade);
360  char spanel[80];
361  sprintf(spanel, "Panel_%i", panel);
362  char smodule[80];
363  sprintf(smodule, "Module_%i", module);
364  std::string side_str = sside;
365  std::string disk_str = sdisk;
366  bool mask = side_str.find("HalfCylinder_1") != string::npos ||
367  side_str.find("HalfCylinder_2") != string::npos ||
368  side_str.find("HalfCylinder_4") != string::npos || disk_str.find("Disk_2") != string::npos;
369  // clutch to take all of FPIX, but no BPIX:
370  mask = false;
371  if (isPIB && mask)
372  continue;
373  SiPixelClusterModule *theModule = new SiPixelClusterModule(id, ncols, nrows);
374  thePixelStructure.insert(pair<uint32_t, SiPixelClusterModule *>(id, theModule));
375  }
376  }
377  }
378  }
379  LogInfo("PixelDQM") << " *** Pixel Structure Size " << thePixelStructure.size() << endl;
380 }
Log< level::Info, true > LogVerbatim
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
int bladeName() const
blade id
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeomTokenBeginRun_
const DetContainer & dets() const override
Returm a vector of all GeomDet (including all GeomDetUnits)
std::map< uint32_t, SiPixelClusterModule * > thePixelStructure
constexpr uint32_t mask
Definition: gpuClustering.h:26
T const * product() const
Definition: ESHandle.h:86
int diskName() const
disk id
HalfCylinder halfCylinder() const
Log< level::Info, false > LogInfo
Definition: DetId.h:17
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopoTokenBeginRun_
int layerName() const
layer id
const DetTypeContainer & detTypes() const override
Return a vector of all det types.
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
int pannelName() const
pannel id
#define LogDebug(id)
int plaquetteName() const
plaquetteId (in pannel)

◆ dqmBeginRun()

void SiPixelClusterSource::dqmBeginRun ( const edm::Run r,
edm::EventSetup const &  iSetup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 93 of file SiPixelClusterSource.cc.

References bladeOn, buildStructure(), diskOn, eventNo, firstRun, ladOn, layOn, lumSec, modOn, nBigEvents, nLumiSecs, phiOn, ringOn, smileyOn, and twoDimOn.

93  {
94  LogInfo("PixelDQM") << " SiPixelClusterSource::beginJob - Initialisation ... " << std::endl;
95  LogInfo("PixelDQM") << "Mod/Lad/Lay/Phi " << modOn << "/" << ladOn << "/" << layOn << "/" << phiOn << std::endl;
96  LogInfo("PixelDQM") << "Blade/Disk/Ring" << bladeOn << "/" << diskOn << "/" << ringOn << std::endl;
97  LogInfo("PixelDQM") << "2DIM IS " << twoDimOn << "\n";
98  LogInfo("PixelDQM") << "Smiley (Cluster sizeY vs. Cluster eta) is " << smileyOn << "\n";
99 
100  if (firstRun) {
101  eventNo = 0;
102  lumSec = 0;
103  nLumiSecs = 0;
104  nBigEvents = 0;
105  // Build map
106  buildStructure(iSetup);
107 
108  firstRun = false;
109  }
110 }
virtual void buildStructure(edm::EventSetup const &)
Log< level::Info, false > LogInfo

◆ getrococcupancy()

void SiPixelClusterSource::getrococcupancy ( DetId  detId,
const edm::DetSetVector< PixelDigi > &  diginp,
const TrackerTopology *const  tTopo,
std::vector< MonitorElement *> const &  meinput 
)
private

Definition at line 465 of file SiPixelClusterSource.cc.

References funct::abs(), edm::DetSetVector< T >::begin(), cuy::col, hcalRecHitTable_cff::detId, edm::DetSetVector< T >::end(), edm::DetSetVector< T >::find(), HLT_2023v12_cff::flip, nano_mu_digi_cff::float, PixelBarrelName::isHalfModule(), isUpgrade, PixelBarrelName::ladderName(), PixelBarrelName::layerName(), PixelBarrelName::moduleName(), and PixelBarrelName::shell().

Referenced by analyze().

468  {
470  if (ipxsearch != diginp.end()) {
471  // Look at digis now
473  for (pxdi = ipxsearch->begin(); pxdi != ipxsearch->end(); pxdi++) {
474  bool isHalfModule = PixelBarrelName(DetId(detId), tTopo, isUpgrade).isHalfModule();
475  int DBlayer = PixelBarrelName(DetId(detId), tTopo, isUpgrade).layerName();
476  int DBmodule = PixelBarrelName(DetId(detId), tTopo, isUpgrade).moduleName();
477  int DBladder = PixelBarrelName(DetId(detId), tTopo, isUpgrade).ladderName();
478  int DBshell = PixelBarrelName(DetId(detId), tTopo, isUpgrade).shell();
479 
480  // add sign to the modules
481  if (DBshell == 1 || DBshell == 2) {
482  DBmodule = -DBmodule;
483  }
484  if (DBshell == 1 || DBshell == 3) {
485  DBladder = -DBladder;
486  }
487 
488  int col = pxdi->column();
489  int row = pxdi->row();
490 
491  float modsign = (float)DBmodule / (abs((float)DBmodule));
492  float ladsign = (float)DBladder / (abs((float)DBladder));
493  float rocx = ((float)col / (52. * 8.)) * modsign + ((float)DBmodule - (modsign)*0.5);
494  float rocy = ((float)row / (80. * 2.)) * ladsign + ((float)DBladder - (ladsign)*0.5);
495 
496  // do the flip where need
497  bool flip = false;
498  if ((DBladder % 2 == 0) && (!isHalfModule)) {
499  flip = true;
500  }
501  if ((flip) && (DBladder > 0)) {
502  if ((((float)DBladder - (ladsign)*0.5) <= rocy) && (rocy < (float)DBladder)) {
503  rocy = rocy + ladsign * 0.5;
504  } else if ((((float)DBladder) <= rocy) && (rocy < ((float)DBladder + (ladsign)*0.5))) {
505  rocy = rocy - ladsign * 0.5;
506  }
507  }
508 
509  // tweak border effect for negative modules/ladders
510  if (modsign < 0) {
511  rocx = rocx - 0.0001;
512  }
513  if (ladsign < 0) {
514  rocy = rocy - 0.0001;
515  } else {
516  rocy = rocy + 0.0001;
517  }
518  if (abs(DBladder) == 1) {
519  rocy = rocy + ladsign * 0.5;
520  } // take care of the half module
521  meinput[DBlayer - 1]->Fill(rocx, rocy);
522  } // end of looping over pxdi
523  }
524 }
iterator find(det_id_type id)
Definition: DetSetVector.h:264
int moduleName() const
module id (index in z)
bool isHalfModule() const
full or half module
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
iterator end()
Return the off-the-end iterator.
Definition: DetSetVector.h:325
Shell shell() const
Definition: DetId.h:17
int layerName() const
layer id
col
Definition: cuy.py:1009
int ladderName() const
ladder id (index in phi)
iterator begin()
Return an iterator to the first DetSet.
Definition: DetSetVector.h:314
collection_type::const_iterator const_iterator
Definition: DetSet.h:31
collection_type::const_iterator const_iterator
Definition: DetSetVector.h:102

◆ getrococcupancye()

void SiPixelClusterSource::getrococcupancye ( DetId  detId,
const edmNew::DetSetVector< SiPixelCluster > &  clustColl,
const TrackerTopology *const  pTT,
edm::ESHandle< TrackerGeometry pDD,
MonitorElement meinput 
)
private

Definition at line 526 of file SiPixelClusterSource.cc.

References funct::abs(), edmNew::DetSetVector< T >::begin(), PixelEndcapName::bladeName(), hcalRecHitTable_cff::detId, PixelEndcapName::diskName(), edmNew::DetSetVector< T >::end(), edmNew::DetSetVector< T >::find(), dqm::impl::MonitorElement::getBinContent(), PixelEndcapName::halfCylinder(), mps_fire::i, TrackerGeometry::idToDetUnit(), isUpgrade, dqmiolumiharvest::j, Topology::localPosition(), PixelEndcapName::pannelName(), PixelEndcapName::plaquetteName(), dqm::impl::MonitorElement::setBinContent(), PixelGeomDetUnit::specificTopology(), GeomDet::surface(), Surface::toGlobal(), z, and PV3DBase< T, PVType, FrameType >::z().

Referenced by analyze().

530  {
532  if (ipxsearch != clustColl.end()) {
533  // Look at clusters now
535  for (pxclust = ipxsearch->begin(); pxclust != ipxsearch->end(); pxclust++) {
536  const GeomDetUnit *geoUnit = pDD->idToDetUnit(detId);
537  const PixelGeomDetUnit *pixDet = dynamic_cast<const PixelGeomDetUnit *>(geoUnit);
538  const PixelTopology *topol = &(pixDet->specificTopology());
539  LocalPoint clustlp = topol->localPosition(MeasurementPoint(pxclust->x(), pxclust->y()));
540  GlobalPoint clustgp = geoUnit->surface().toGlobal(clustlp);
541 
542  float xclust = pxclust->x();
543  float yclust = pxclust->y();
544  float z = clustgp.z();
545 
546  int pxfside = PixelEndcapName(detId, pTT, isUpgrade).halfCylinder();
547  int pxfpanel = PixelEndcapName(detId, pTT, isUpgrade).pannelName();
548  int pxfmodule = PixelEndcapName(detId, pTT, isUpgrade).plaquetteName();
549  int pxfdisk = PixelEndcapName(detId, pTT, isUpgrade).diskName();
550  int pxfblade = PixelEndcapName(detId, pTT, isUpgrade).bladeName();
551 
552  if ((pxfside == 1) || (pxfside == 3)) {
553  pxfblade = -1. * pxfblade;
554  }
555 
556  if (z < 0.) {
557  pxfdisk = -1. * pxfdisk;
558  }
559 
560  int clu_sdpx = ((pxfdisk > 0) ? 1 : -1) * (2 * (abs(pxfdisk) - 1) + pxfpanel);
561  int binselx = (pxfpanel == 1 && (pxfmodule == 1 || pxfmodule == 4))
562  ? (pxfmodule == 1)
563  : ((pxfpanel == 1 && xclust < 80.0) || (pxfpanel == 2 && xclust >= 80.0));
564  int nperpan = 2 * pxfmodule + pxfpanel - 1 + binselx;
565  int clu_roc_binx =
566  ((pxfdisk > 0) ? nperpan : 9 - nperpan) + (clu_sdpx + 4) * 8 - 2 * ((abs(pxfdisk) == 1) ? pxfdisk : 0);
567 
568  int clu_roc_biny = -99.;
569  int nrocly = pxfmodule + pxfpanel;
570  for (int i = 0; i < nrocly; i++) {
571  int j = (pxfdisk < 0) ? i : nrocly - 1 - i;
572  if (yclust >= (j * 52.0) && yclust < ((j + 1) * 52.0))
573  clu_roc_biny = 6 - nrocly + 2 * i + ((pxfblade > 0) ? pxfblade - 1 : pxfblade + 12) * 12 + 1;
574  }
575  if (pxfblade > 0) {
576  clu_roc_biny = clu_roc_biny + 144;
577  }
578 
579  meinput->setBinContent(clu_roc_binx, clu_roc_biny, meinput->getBinContent(clu_roc_binx, clu_roc_biny) + 1);
580  meinput->setBinContent(
581  clu_roc_binx, clu_roc_biny + 1, meinput->getBinContent(clu_roc_binx, clu_roc_biny + 1) + 1);
582  }
583  }
584 }
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual LocalPoint localPosition(const MeasurementPoint &) const =0
T z() const
Definition: PV3DBase.h:61
int bladeName() const
blade id
data_type const * const_iterator
Definition: DetSetNew.h:31
const_iterator end(bool update=false) const
Measurement2DPoint MeasurementPoint
Measurement points are two-dimensional by default.
int diskName() const
disk id
HalfCylinder halfCylinder() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
const_iterator begin(bool update=false) const
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
const_iterator find(id_type i, bool update=false) const
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
int pannelName() const
pannel id
virtual double getBinContent(int binx) const
get content of bin (1-D)
int plaquetteName() const
plaquetteId (in pannel)

Member Data Documentation

◆ bigEventSize

int SiPixelClusterSource::bigEventSize
private

Definition at line 73 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookMEs().

◆ bigFpixClusterEventRate

MonitorElement* SiPixelClusterSource::bigFpixClusterEventRate
private

Definition at line 72 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookMEs().

◆ bladeOn

bool SiPixelClusterSource::bladeOn
private

Definition at line 66 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ conf_

edm::ParameterSet SiPixelClusterSource::conf_
private

Definition at line 52 of file SiPixelClusterSource.h.

Referenced by bookMEs(), and SiPixelClusterSource().

◆ digisrc_

edm::InputTag SiPixelClusterSource::digisrc_
private

Definition at line 54 of file SiPixelClusterSource.h.

Referenced by bookHistograms().

◆ digisrcToken_

edm::EDGetTokenT<edm::DetSetVector<PixelDigi> > SiPixelClusterSource::digisrcToken_
private

Definition at line 102 of file SiPixelClusterSource.h.

Referenced by analyze(), and SiPixelClusterSource().

◆ diskOn

bool SiPixelClusterSource::diskOn
private

Definition at line 66 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ eventNo

int SiPixelClusterSource::eventNo
private

Definition at line 58 of file SiPixelClusterSource.h.

Referenced by analyze(), and dqmBeginRun().

◆ firstRun

bool SiPixelClusterSource::firstRun
private

Definition at line 68 of file SiPixelClusterSource.h.

Referenced by dqmBeginRun(), and SiPixelClusterSource().

◆ isPIB

bool SiPixelClusterSource::isPIB
private

Definition at line 56 of file SiPixelClusterSource.h.

Referenced by bookMEs(), and buildStructure().

◆ isUpgrade

bool SiPixelClusterSource::isUpgrade
private

◆ ladOn

bool SiPixelClusterSource::ladOn
private

Definition at line 64 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ layOn

bool SiPixelClusterSource::layOn
private

Definition at line 64 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ lumSec

int SiPixelClusterSource::lumSec
private

Definition at line 69 of file SiPixelClusterSource.h.

Referenced by dqmBeginRun().

◆ meClPosDiskmz

std::vector<MonitorElement *> SiPixelClusterSource::meClPosDiskmz
private

Definition at line 78 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meClPosDiskpz

std::vector<MonitorElement *> SiPixelClusterSource::meClPosDiskpz
private

Definition at line 77 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meClPosLayer

std::vector<MonitorElement *> SiPixelClusterSource::meClPosLayer
private

Definition at line 76 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meClusBarrelProf

MonitorElement* SiPixelClusterSource::meClusBarrelProf
private

Definition at line 80 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meClusFpixMProf

MonitorElement* SiPixelClusterSource::meClusFpixMProf
private

Definition at line 82 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meClusFpixPProf

MonitorElement* SiPixelClusterSource::meClusFpixPProf
private

Definition at line 81 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meZeroRocBPIX

std::vector<MonitorElement *> SiPixelClusterSource::meZeroRocBPIX
private

Definition at line 84 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ meZeroRocFPIX

MonitorElement* SiPixelClusterSource::meZeroRocFPIX
private

Definition at line 85 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookHistograms().

◆ modOn

bool SiPixelClusterSource::modOn
private

Definition at line 60 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ nBigEvents

int SiPixelClusterSource::nBigEvents
private

Definition at line 71 of file SiPixelClusterSource.h.

Referenced by dqmBeginRun().

◆ nLumiSecs

int SiPixelClusterSource::nLumiSecs
private

Definition at line 70 of file SiPixelClusterSource.h.

Referenced by dqmBeginRun().

◆ noOfDisks

int SiPixelClusterSource::noOfDisks
private

Definition at line 88 of file SiPixelClusterSource.h.

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

◆ noOfLayers

int SiPixelClusterSource::noOfLayers
private

Definition at line 87 of file SiPixelClusterSource.h.

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

◆ phiOn

bool SiPixelClusterSource::phiOn
private

Definition at line 64 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ reducedSet

bool SiPixelClusterSource::reducedSet
private

Definition at line 62 of file SiPixelClusterSource.h.

Referenced by analyze(), and bookMEs().

◆ ringOn

bool SiPixelClusterSource::ringOn
private

Definition at line 66 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ saveFile

bool SiPixelClusterSource::saveFile
private

Definition at line 55 of file SiPixelClusterSource.h.

◆ slowDown

bool SiPixelClusterSource::slowDown
private

Definition at line 57 of file SiPixelClusterSource.h.

Referenced by analyze().

◆ smileyOn

bool SiPixelClusterSource::smileyOn
private

Definition at line 67 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().

◆ src_

edm::InputTag SiPixelClusterSource::src_
private

Definition at line 53 of file SiPixelClusterSource.h.

◆ srcToken_

edm::EDGetTokenT<edmNew::DetSetVector<SiPixelCluster> > SiPixelClusterSource::srcToken_
private

Definition at line 101 of file SiPixelClusterSource.h.

Referenced by analyze(), and SiPixelClusterSource().

◆ thePixelStructure

std::map<uint32_t, SiPixelClusterModule *> SiPixelClusterSource::thePixelStructure
private

Definition at line 59 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), buildStructure(), and ~SiPixelClusterSource().

◆ topFolderName_

std::string SiPixelClusterSource::topFolderName_

Definition at line 49 of file SiPixelClusterSource.h.

Referenced by bookHistograms(), bookMEs(), and SiPixelClusterSource().

◆ trackerGeomToken_

edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> SiPixelClusterSource::trackerGeomToken_
private

Definition at line 105 of file SiPixelClusterSource.h.

Referenced by analyze(), and SiPixelClusterSource().

◆ trackerGeomTokenBeginRun_

edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> SiPixelClusterSource::trackerGeomTokenBeginRun_
private

Definition at line 107 of file SiPixelClusterSource.h.

Referenced by buildStructure(), and SiPixelClusterSource().

◆ trackerTopoToken_

edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> SiPixelClusterSource::trackerTopoToken_
private

Definition at line 104 of file SiPixelClusterSource.h.

Referenced by analyze(), and SiPixelClusterSource().

◆ trackerTopoTokenBeginRun_

edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> SiPixelClusterSource::trackerTopoTokenBeginRun_
private

Definition at line 106 of file SiPixelClusterSource.h.

Referenced by bookMEs(), buildStructure(), and SiPixelClusterSource().

◆ twoDimOn

bool SiPixelClusterSource::twoDimOn
private

Definition at line 61 of file SiPixelClusterSource.h.

Referenced by analyze(), bookMEs(), and dqmBeginRun().