CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Public Attributes | Private Attributes
SiPixelDigiSource Class Reference

#include <SiPixelDigiSource.h>

Inheritance diagram for SiPixelDigiSource:
DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Types

typedef edm::DetSet< PixelDigi >
::const_iterator 
DigiIterator
 
- Public Types inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
typedef CacheContexts< T...> CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T...> HasAbility
 
typedef
CacheTypes::LuminosityBlockCache 
LuminosityBlockCache
 
typedef
LuminosityBlockContextT
< LuminosityBlockCache,
RunCache, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 

Public Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
 
virtual 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 &)
 
virtual void dqmBeginRun (const edm::Run &, edm::EventSetup const &)
 
 SiPixelDigiSource (const edm::ParameterSet &conf)
 
 ~SiPixelDigiSource ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Public Attributes

std::string topFolderName_
 

Private Attributes

MonitorElementaverageDigiOccupancy
 
MonitorElementavgfedDigiOccvsLumi
 
MonitorElementbigEventRate
 
int bigEventSize
 
bool bladeOn
 
edm::ParameterSet conf_
 
bool diskOn
 
int eventNo
 
bool firstRun
 
bool hiRes
 
unsigned int I_detId [1856]
 
int I_fedId [1856]
 
int I_linkId1 [1856]
 
int I_linkId2 [1856]
 
std::string I_name [1856]
 
bool isOffline
 
bool isPIB
 
bool isUpgrade
 
bool ladOn
 
bool layOn
 
MonitorElementloOccROCsBarrel
 
MonitorElementloOccROCsEndcap
 
int lumSec
 
MonitorElementmeNDigisCHANBarrel_
 
MonitorElementmeNDigisCHANBarrelCh10_
 
MonitorElementmeNDigisCHANBarrelCh11_
 
MonitorElementmeNDigisCHANBarrelCh12_
 
MonitorElementmeNDigisCHANBarrelCh13_
 
MonitorElementmeNDigisCHANBarrelCh14_
 
MonitorElementmeNDigisCHANBarrelCh15_
 
MonitorElementmeNDigisCHANBarrelCh16_
 
MonitorElementmeNDigisCHANBarrelCh17_
 
MonitorElementmeNDigisCHANBarrelCh18_
 
MonitorElementmeNDigisCHANBarrelCh19_
 
MonitorElementmeNDigisCHANBarrelCh1_
 
MonitorElementmeNDigisCHANBarrelCh20_
 
MonitorElementmeNDigisCHANBarrelCh21_
 
MonitorElementmeNDigisCHANBarrelCh22_
 
MonitorElementmeNDigisCHANBarrelCh23_
 
MonitorElementmeNDigisCHANBarrelCh24_
 
MonitorElementmeNDigisCHANBarrelCh25_
 
MonitorElementmeNDigisCHANBarrelCh26_
 
MonitorElementmeNDigisCHANBarrelCh27_
 
MonitorElementmeNDigisCHANBarrelCh28_
 
MonitorElementmeNDigisCHANBarrelCh29_
 
MonitorElementmeNDigisCHANBarrelCh2_
 
MonitorElementmeNDigisCHANBarrelCh30_
 
MonitorElementmeNDigisCHANBarrelCh31_
 
MonitorElementmeNDigisCHANBarrelCh32_
 
MonitorElementmeNDigisCHANBarrelCh33_
 
MonitorElementmeNDigisCHANBarrelCh34_
 
MonitorElementmeNDigisCHANBarrelCh35_
 
MonitorElementmeNDigisCHANBarrelCh36_
 
MonitorElementmeNDigisCHANBarrelCh3_
 
MonitorElementmeNDigisCHANBarrelCh4_
 
MonitorElementmeNDigisCHANBarrelCh5_
 
MonitorElementmeNDigisCHANBarrelCh6_
 
MonitorElementmeNDigisCHANBarrelCh7_
 
MonitorElementmeNDigisCHANBarrelCh8_
 
MonitorElementmeNDigisCHANBarrelCh9_
 
std::vector< MonitorElement * > meNDigisCHANBarrelLs_
 
MonitorElementmeNDigisCHANEndcap_
 
std::vector< MonitorElement * > meNDigisCHANEndcapDms_
 
std::vector< MonitorElement * > meNDigisCHANEndcapDps_
 
MonitorElementmeNDigisCOMBBarrel_
 
MonitorElementmeNDigisCOMBEndcap_
 
bool modOn
 
int nBigEvents
 
int nBPIXDigis
 
int nDigisA
 
int nDigisB
 
int nDigisPerChan [1152]
 
int nDigisPerDisk [6]
 
int nDigisPerFed [40]
 
int nDM1P1M1
 
int nDM1P1M2
 
int nDM1P1M3
 
int nDM1P1M4
 
int nDM1P2M1
 
int nDM1P2M2
 
int nDM1P2M3
 
int nDM2P1M1
 
int nDM2P1M2
 
int nDM2P1M3
 
int nDM2P1M4
 
int nDM2P2M1
 
int nDM2P2M2
 
int nDM2P2M3
 
int nDM3P1M1
 
int nDM3P2M1
 
int nDP1P1M1
 
int nDP1P1M2
 
int nDP1P1M3
 
int nDP1P1M4
 
int nDP1P2M1
 
int nDP1P2M2
 
int nDP1P2M3
 
int nDP2P1M1
 
int nDP2P1M2
 
int nDP2P1M3
 
int nDP2P1M4
 
int nDP2P2M1
 
int nDP2P2M2
 
int nDP2P2M3
 
int nDP3P1M1
 
int nDP3P2M1
 
int nFPIXDigis
 
int nL1M1
 
int nL1M2
 
int nL1M3
 
int nL1M4
 
int nL2M1
 
int nL2M2
 
int nL2M3
 
int nL2M4
 
int nL3M1
 
int nL3M2
 
int nL3M3
 
int nL3M4
 
int nL4M1
 
int nL4M2
 
int nL4M3
 
int nL4M4
 
int nLumiSecs
 
MonitorElementnoOccROCsBarrel
 
MonitorElementnoOccROCsEndcap
 
int noOfDisks
 
int noOfLayers
 
int numberOfDigis [336]
 
bool phiOn
 
MonitorElementpixEventRate
 
MonitorElementpixEvtsPerBX
 
bool reducedSet
 
bool ringOn
 
bool saveFile
 
bool slowDown
 
edm::InputTag src_
 
edm::EDGetTokenT
< edm::DetSetVector< PixelDigi > > 
srcToken_
 
std::map< uint32_t,
SiPixelDigiModule * > 
thePixelStructure
 
bool twoDimModOn
 
bool twoDimOn
 
bool twoDimOnlyLayDisk
 

Additional Inherited Members

- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr
< dqmDetails::NoCache
globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr
< dqmDetails::NoCache
globalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
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 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)
 

Detailed Description

Description: <one line="" class="" summary>="">

Usage: <usage>

Definition at line 48 of file SiPixelDigiSource.h.

Member Typedef Documentation

Definition at line 53 of file SiPixelDigiSource.h.

Constructor & Destructor Documentation

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

Definition at line 47 of file SiPixelDigiSource.cc.

References assert(), conf_, firstRun, contentValuesFiles::fullPath, edm::ParameterSet::getParameter(), I_detId, I_fedId, I_linkId1, I_linkId2, I_name, recoMuon::in, getDQMSummary::infile, isUpgrade, srcToken_, AlCaHLTBitMon_QueryRunRegistry::string, and topFolderName_.

47  :
48  conf_(iConfig),
49  src_( conf_.getParameter<edm::InputTag>( "src" ) ),
50  saveFile( conf_.getUntrackedParameter<bool>("saveFile",false) ),
51  isPIB( conf_.getUntrackedParameter<bool>("isPIB",false) ),
52  slowDown( conf_.getUntrackedParameter<bool>("slowDown",false) ),
53  modOn( conf_.getUntrackedParameter<bool>("modOn",true) ),
54  twoDimOn( conf_.getUntrackedParameter<bool>("twoDimOn",true) ),
55  twoDimModOn( conf_.getUntrackedParameter<bool>("twoDimModOn",true) ),
56  twoDimOnlyLayDisk( conf_.getUntrackedParameter<bool>("twoDimOnlyLayDisk",false) ),
57  hiRes( conf_.getUntrackedParameter<bool>("hiRes",false) ),
58  reducedSet( conf_.getUntrackedParameter<bool>("reducedSet",false) ),
59  ladOn( conf_.getUntrackedParameter<bool>("ladOn",false) ),
60  layOn( conf_.getUntrackedParameter<bool>("layOn",false) ),
61  phiOn( conf_.getUntrackedParameter<bool>("phiOn",false) ),
62  ringOn( conf_.getUntrackedParameter<bool>("ringOn",false) ),
63  bladeOn( conf_.getUntrackedParameter<bool>("bladeOn",false) ),
64  diskOn( conf_.getUntrackedParameter<bool>("diskOn",false) ),
65  bigEventSize( conf_.getUntrackedParameter<int>("bigEventSize",1000) ),
66  isUpgrade( conf_.getUntrackedParameter<bool>("isUpgrade",false) ),
67  isOffline( conf_.getUntrackedParameter<bool>("isOffline",false) ),
68  noOfLayers(0),
69  noOfDisks(0)
70 {
71  //set Token(-s)
72  srcToken_ = consumes<edm::DetSetVector<PixelDigi> >(conf_.getParameter<edm::InputTag>( "src" ));
73 
74  topFolderName_ = conf_.getParameter<std::string>("TopFolderName");
75 
76  firstRun = true;
77  // find a FED# for the current detId:
78  ifstream infile(edm::FileInPath("DQM/SiPixelMonitorClient/test/detId.dat").fullPath().c_str(),ios::in);
79  int nModsInFile=0;
80  assert(!infile.fail());
81  int nTOTmodules;
82  if (isUpgrade) { nTOTmodules=1856; } else { nTOTmodules=1440; }
83  while(!infile.eof()&&nModsInFile<nTOTmodules) {
84  infile >> I_name[nModsInFile] >> I_detId[nModsInFile] >> I_fedId[nModsInFile] >> I_linkId1[nModsInFile] >> I_linkId2[nModsInFile];
85  nModsInFile++;
86  }
87  infile.close();
88 
89  LogInfo ("PixelDQM") << "SiPixelDigiSource::SiPixelDigiSource: Got DQM BackEnd interface"<<endl;
90 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
assert(m_qm.get())
std::string topFolderName_
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > srcToken_
unsigned int I_detId[1856]
edm::ParameterSet conf_
edm::InputTag src_
std::string I_name[1856]
SiPixelDigiSource::~SiPixelDigiSource ( )

Definition at line 93 of file SiPixelDigiSource.cc.

94 {
95  // do anything here that needs to be done at desctruction time
96  // (e.g. close files, deallocate resources etc.)
97  LogInfo ("PixelDQM") << "SiPixelDigiSource::~SiPixelDigiSource: Destructor"<<endl;
98 }

Member Function Documentation

void SiPixelDigiSource::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
virtual

Implements edm::stream::EDAnalyzerBase.

Definition at line 182 of file SiPixelDigiSource.cc.

References averageDigiOccupancy, avgfedDigiOccvsLumi, Reference_intrackfit_cff::barrel, bigEventRate, bigEventSize, PixelEndcapName::bladeName(), bladeOn, edm::EventBase::bunchCrossing(), PixelEndcapName::diskName(), diskOn, Reference_intrackfit_cff::endcap, eventNo, MonitorElement::Fill(), edm::EventSetup::get(), edm::Event::getByToken(), PixelEndcapName::halfCylinder(), i, I_detId, I_fedId, I_linkId1, I_linkId2, input, isOffline, isUpgrade, edm::HandleBase::isValid(), getDQMSummary::iter, j, ladOn, layOn, loOccROCsBarrel, loOccROCsEndcap, edm::EventBase::luminosityBlock(), meNDigisCHANBarrel_, meNDigisCHANBarrelCh10_, meNDigisCHANBarrelCh11_, meNDigisCHANBarrelCh12_, meNDigisCHANBarrelCh13_, meNDigisCHANBarrelCh14_, meNDigisCHANBarrelCh15_, meNDigisCHANBarrelCh16_, meNDigisCHANBarrelCh17_, meNDigisCHANBarrelCh18_, meNDigisCHANBarrelCh19_, meNDigisCHANBarrelCh1_, meNDigisCHANBarrelCh20_, meNDigisCHANBarrelCh21_, meNDigisCHANBarrelCh22_, meNDigisCHANBarrelCh23_, meNDigisCHANBarrelCh24_, meNDigisCHANBarrelCh25_, meNDigisCHANBarrelCh26_, meNDigisCHANBarrelCh27_, meNDigisCHANBarrelCh28_, meNDigisCHANBarrelCh29_, meNDigisCHANBarrelCh2_, meNDigisCHANBarrelCh30_, meNDigisCHANBarrelCh31_, meNDigisCHANBarrelCh32_, meNDigisCHANBarrelCh33_, meNDigisCHANBarrelCh34_, meNDigisCHANBarrelCh35_, meNDigisCHANBarrelCh36_, meNDigisCHANBarrelCh3_, meNDigisCHANBarrelCh4_, meNDigisCHANBarrelCh5_, meNDigisCHANBarrelCh6_, meNDigisCHANBarrelCh7_, meNDigisCHANBarrelCh8_, meNDigisCHANBarrelCh9_, meNDigisCHANBarrelLs_, meNDigisCHANEndcap_, meNDigisCHANEndcapDms_, meNDigisCHANEndcapDps_, meNDigisCOMBBarrel_, meNDigisCOMBEndcap_, PixelEndcapName::mI, PixelEndcapName::mO, modOn, nBPIXDigis, nDigisA, nDigisB, nDigisPerChan, nDigisPerDisk, nDigisPerFed, nDM1P1M1, nDM1P1M2, nDM1P1M3, nDM1P1M4, nDM1P2M1, nDM1P2M2, nDM1P2M3, nDM2P1M1, nDM2P1M2, nDM2P1M3, nDM2P1M4, nDM2P2M1, nDM2P2M2, nDM2P2M3, nDM3P1M1, nDM3P2M1, nDP1P1M1, nDP1P1M2, nDP1P1M3, nDP1P1M4, nDP1P2M1, nDP1P2M2, nDP1P2M3, nDP2P1M1, nDP2P1M2, nDP2P1M3, nDP2P1M4, nDP2P2M1, nDP2P2M2, nDP2P2M3, nDP3P1M1, nDP3P2M1, nFPIXDigis, noOccROCsBarrel, noOccROCsEndcap, noOfDisks, numberOfDigis, PixelEndcapName::pannelName(), phiOn, PixelEndcapName::pI, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, pixEventRate, pixEvtsPerBX, PixelEndcapName::plaquetteName(), PixelEndcapName::pO, edm::ESHandle< class >::product(), reducedSet, MonitorElement::Reset(), ringOn, MonitorElement::setBinContent(), slowDown, srcToken_, DetId::subdetId(), thePixelStructure, twoDimModOn, twoDimOn, and twoDimOnlyLayDisk.

183 {
184  edm::ESHandle<TrackerTopology> tTopoHandle;
185  iSetup.get<IdealGeometryRecord>().get(tTopoHandle);
186  const TrackerTopology *pTT = tTopoHandle.product();
187 
188  eventNo++;
189 
190  // get input data
192  iEvent.getByToken(srcToken_, input);
193  if (!input.isValid()) return;
194 
195 
196  int bx = iEvent.bunchCrossing();
197 
198  int lumiSection = (int)iEvent.luminosityBlock();
199  int nEventDigis = 0; int nActiveModules = 0;
200 
201  if(modOn && !isOffline){
202  if(averageDigiOccupancy && lumiSection%8==0){
204  nBPIXDigis = 0;
205  nFPIXDigis = 0;
206  for(int i=0; i!=40; i++) nDigisPerFed[i]=0;
207  }
208  }
209  if(!modOn && !isOffline){
210  if(averageDigiOccupancy && lumiSection%1==0){
212  nBPIXDigis = 0;
213  nFPIXDigis = 0;
214  for(int i=0; i!=40; i++) nDigisPerFed[i]=0;
215  }
216  }
217 
218  std::map<uint32_t,SiPixelDigiModule*>::iterator struct_iter;
219  for(int i=0; i!=192; i++) numberOfDigis[i]=0;
220  for(int i=0; i!=1152; i++) nDigisPerChan[i]=0;
221  for(int i=0; i!=4; i++) nDigisPerDisk[i]=0;
222  int NzeroROCs[2] = {0,-672};
223  int NloEffROCs[2] = {0,-672};
224  for (struct_iter = thePixelStructure.begin() ; struct_iter != thePixelStructure.end() ; struct_iter++) {
225  int numberOfDigisMod = (*struct_iter).second->fill(*input, iSetup,
227  modOn, ladOn, layOn, phiOn,
228  bladeOn, diskOn, ringOn,
231  if (modOn && twoDimOnlyLayDisk && lumiSection%10 == 0) (*struct_iter).second->resetRocMap();
232 
233  bool barrel = DetId((*struct_iter).first).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
234  bool endcap = DetId((*struct_iter).first).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
235  if(numberOfDigisMod>0){
236  nEventDigis = nEventDigis + numberOfDigisMod;
237  nActiveModules++;
238  int nBPiXmodules;
239  int nTOTmodules;
240  if (isUpgrade) {
241  nBPiXmodules=1184;
242  nTOTmodules=1856;
243  } else {
244  nBPiXmodules=768;
245  nTOTmodules=1440;
246  }
247  if(barrel){ // Barrel
248  nBPIXDigis = nBPIXDigis + numberOfDigisMod;
249  for(int i=0; i!=nBPiXmodules; ++i){
250  if((*struct_iter).first == I_detId[i]){
251  nDigisPerFed[I_fedId[i]]=nDigisPerFed[I_fedId[i]]+numberOfDigisMod;
252  int index1 = 0; int index2 = 0;
253  if(I_linkId1[i]>0) index1 = I_fedId[i]*36+(I_linkId1[i]-1);
254  if(I_linkId2[i]>0) index2 = I_fedId[i]*36+(I_linkId2[i]-1);
255  if(nDigisA>0 && I_linkId1[i]>0) nDigisPerChan[index1]=nDigisPerChan[index1]+nDigisA;
256  if(nDigisB>0 && I_linkId2[i]>0) nDigisPerChan[index2]=nDigisPerChan[index2]+nDigisB;
257  i=(nBPiXmodules-1);
258  }
259  }
260  }else if(endcap && !isUpgrade){ // Endcap
261  nFPIXDigis = nFPIXDigis + numberOfDigisMod;
262  PixelEndcapName::HalfCylinder side = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).halfCylinder();
263  int disk = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).diskName();
264  int blade = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).bladeName();
265  int panel = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).pannelName();
266  int module = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).plaquetteName();
267  int iter=0; int i=0;
268  if(side==PixelEndcapName::mI){
269  if(disk==1){
270  i=0;
271  if(panel==1){ if(module==1) nDM1P1M1+=numberOfDigisMod;
272  else if(module==2) nDM1P1M2+=numberOfDigisMod;
273  else if(module==3) nDM1P1M3+=numberOfDigisMod;
274  else if(module==4) nDM1P1M4+=numberOfDigisMod;}
275  else if(panel==2){ if(module==1) nDM1P2M1+=numberOfDigisMod;
276  else if(module==2) nDM1P2M2+=numberOfDigisMod;
277  else if(module==3) nDM1P2M3+=numberOfDigisMod; }
278  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
279  }else if(disk==2){
280  i=24;
281  if(panel==1){ if(module==1) nDM2P1M1+=numberOfDigisMod;
282  else if(module==2) nDM2P1M2+=numberOfDigisMod;
283  else if(module==3) nDM2P1M3+=numberOfDigisMod;
284  else if(module==4) nDM2P1M4+=numberOfDigisMod;}
285  else if(panel==2){ if(module==1) nDM2P2M1+=numberOfDigisMod;
286  else if(module==2) nDM2P2M2+=numberOfDigisMod;
287  else if(module==3) nDM2P2M3+=numberOfDigisMod; }
288  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
289  }
290  }else if(side==PixelEndcapName::mO){
291  if(disk==1){
292  i=48;
293  if(panel==1){ if(module==1) nDM1P1M1+=numberOfDigisMod;
294  else if(module==2) nDM1P1M2+=numberOfDigisMod;
295  else if(module==3) nDM1P1M3+=numberOfDigisMod;
296  else if(module==4) nDM1P1M4+=numberOfDigisMod;}
297  else if(panel==2){ if(module==1) nDM1P2M1+=numberOfDigisMod;
298  else if(module==2) nDM1P2M2+=numberOfDigisMod;
299  else if(module==3) nDM1P2M3+=numberOfDigisMod; }
300  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
301  }else if(disk==2){
302  i=72;
303  if(panel==1){ if(module==1) nDM2P1M1+=numberOfDigisMod;
304  else if(module==2) nDM2P1M2+=numberOfDigisMod;
305  else if(module==3) nDM2P1M3+=numberOfDigisMod;
306  else if(module==4) nDM2P1M4+=numberOfDigisMod;}
307  else if(panel==2){ if(module==1) nDM2P2M1+=numberOfDigisMod;
308  else if(module==2) nDM2P2M2+=numberOfDigisMod;
309  else if(module==3) nDM2P2M3+=numberOfDigisMod; }
310  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
311  }
312  }else if(side==PixelEndcapName::pI){
313  if(disk==1){
314  i=96;
315  if(panel==1){ if(module==1) nDP1P1M1+=numberOfDigisMod;
316  else if(module==2) nDP1P1M2+=numberOfDigisMod;
317  else if(module==3) nDP1P1M3+=numberOfDigisMod;
318  else if(module==4) nDP1P1M4+=numberOfDigisMod;}
319  else if(panel==2){ if(module==1) nDP1P2M1+=numberOfDigisMod;
320  else if(module==2) nDP1P2M2+=numberOfDigisMod;
321  else if(module==3) nDP1P2M3+=numberOfDigisMod; }
322  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
323  }else if(disk==2){
324  i=120;
325  if(panel==1){ if(module==1) nDP2P1M1+=numberOfDigisMod;
326  else if(module==2) nDP2P1M2+=numberOfDigisMod;
327  else if(module==3) nDP2P1M3+=numberOfDigisMod;
328  else if(module==4) nDP2P1M4+=numberOfDigisMod;}
329  else if(panel==2){ if(module==1) nDP2P2M1+=numberOfDigisMod;
330  else if(module==2) nDP2P2M2+=numberOfDigisMod;
331  else if(module==3) nDP2P2M3+=numberOfDigisMod; }
332  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
333  }
334  }else if(side==PixelEndcapName::pO){
335  if(disk==1){
336  i=144;
337  if(panel==1){ if(module==1) nDP1P1M1+=numberOfDigisMod;
338  else if(module==2) nDP1P1M2+=numberOfDigisMod;
339  else if(module==3) nDP1P1M3+=numberOfDigisMod;
340  else if(module==4) nDP1P1M4+=numberOfDigisMod;}
341  else if(panel==2){ if(module==1) nDP1P2M1+=numberOfDigisMod;
342  else if(module==2) nDP1P2M2+=numberOfDigisMod;
343  else if(module==3) nDP1P2M3+=numberOfDigisMod; }
344  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
345  }else if(disk==2){
346  i=168;
347  if(panel==1){ if(module==1) nDP2P1M1+=numberOfDigisMod;
348  else if(module==2) nDP2P1M2+=numberOfDigisMod;
349  else if(module==3) nDP2P1M3+=numberOfDigisMod;
350  else if(module==4) nDP2P1M4+=numberOfDigisMod;}
351  else if(panel==2){ if(module==1) nDP2P2M1+=numberOfDigisMod;
352  else if(module==2) nDP2P2M2+=numberOfDigisMod;
353  else if(module==3) nDP2P2M3+=numberOfDigisMod; }
354  if(blade<13 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
355  }
356  }
357  numberOfDigis[iter]=numberOfDigis[iter]+numberOfDigisMod;
358 
359  for(int i=nBPiXmodules; i!=nTOTmodules; i++){
360  if((*struct_iter).first == I_detId[i]){
361  nDigisPerFed[I_fedId[i]]=nDigisPerFed[I_fedId[i]]+numberOfDigisMod;
362  i=nTOTmodules-1;
363  }
364  }
365  } //endif Barrel/(Endcap && !isUpgrade)
366  else if (endcap && isUpgrade) {
367  nFPIXDigis = nFPIXDigis + numberOfDigisMod;
368  PixelEndcapName::HalfCylinder side = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).halfCylinder();
369  int disk = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).diskName();
370  int blade = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).bladeName();
371  int panel = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).pannelName();
372  int module = PixelEndcapName(DetId((*struct_iter).first),pTT,isUpgrade).plaquetteName();
373 
374  int iter=0; int i=0;
375  if(side==PixelEndcapName::mI){
376  if(disk==1){
377  i=0;
378  if(panel==1){ if(module==1) nDM1P1M1+=numberOfDigisMod; }
379  else if(panel==2){ if(module==1) nDM1P2M1+=numberOfDigisMod; }
380  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
381  }else if(disk==2){
382  i=22;
383  if(panel==1){ if(module==1) nDM2P1M1+=numberOfDigisMod; }
384  else if(panel==2){ if(module==1) nDM2P2M1+=numberOfDigisMod; }
385  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
386  }else if(disk==3){
387  i=44;
388  if(panel==1){ if(module==1) nDM3P1M1+=numberOfDigisMod; }
389  else if(panel==2){ if(module==1) nDM3P2M1+=numberOfDigisMod; }
390  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
391  }
392  }else if(side==PixelEndcapName::mO){
393  if(disk==1){
394  i=66;
395  if(panel==1){ if(module==1) nDM1P1M1+=numberOfDigisMod; }
396  else if(panel==2){ if(module==1) nDM1P2M1+=numberOfDigisMod; }
397  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
398  }else if(disk==2){
399  i=100;
400  if(panel==1){ if(module==1) nDM2P1M1+=numberOfDigisMod; }
401  else if(panel==2){ if(module==1) nDM2P2M1+=numberOfDigisMod; }
402  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
403  }else if (disk==3){
404  i=134;
405  if(panel==1){ if(module==1) nDM3P1M1+=numberOfDigisMod; }
406  else if(panel==2){ if(module==1) nDM3P2M1+=numberOfDigisMod; }
407  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
408  }
409  }else if(side==PixelEndcapName::pI){
410  if(disk==1){
411  i=168;
412  if(panel==1){ if(module==1) nDP1P1M1+=numberOfDigisMod; }
413  else if(panel==2){ if(module==1) nDP1P2M1+=numberOfDigisMod; }
414  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
415  }else if(disk==2){
416  i=190;
417  if(panel==1){ if(module==1) nDP2P1M1+=numberOfDigisMod; }
418  else if(panel==2){ if(module==1) nDP2P2M1+=numberOfDigisMod; }
419  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
420  }else if(disk==3){
421  i=212;
422  if(panel==1){ if(module==1) nDP3P1M1+=numberOfDigisMod; }
423  else if(panel==2){ if(module==1) nDP3P2M1+=numberOfDigisMod; }
424  if(blade<12 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
425  }
426  }else if(side==PixelEndcapName::pO){
427  if(disk==1){
428  i=234;
429  if(panel==1){ if(module==1) nDP1P1M1+=numberOfDigisMod; }
430  else if(panel==2){ if(module==1) nDP1P2M1+=numberOfDigisMod; }
431  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
432  }else if(disk==2){
433  i=268;
434  if(panel==1){ if(module==1) nDP2P1M1+=numberOfDigisMod; }
435  else if(panel==2){ if(module==1) nDP2P2M1+=numberOfDigisMod; }
436  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
437  }else if(disk==3){
438  i=302;
439  if(panel==1){ if(module==1) nDP3P1M1+=numberOfDigisMod; }
440  else if(panel==2){ if(module==1) nDP3P2M1+=numberOfDigisMod; }
441  if(blade<18 && blade>0 && (panel==1 || panel==2)) iter = i+2*(blade-1)+(panel-1);
442  }
443  }
444  numberOfDigis[iter]=numberOfDigis[iter]+numberOfDigisMod;
445  for(int i=nBPiXmodules; i!=nTOTmodules; i++){
446  if((*struct_iter).first == I_detId[i]){
447  nDigisPerFed[I_fedId[i]]=nDigisPerFed[I_fedId[i]]+numberOfDigisMod;
448  i=nTOTmodules-1;
449  }
450  }
451  }//endif(Endcap && isUpgrade)
452  } // endif any digis in this module
453  if (twoDimOnlyLayDisk && lumiSection%10 > 2){
454  std::pair<int,int> tempPair = (*struct_iter).second->getZeroLoEffROCs();
455  if (barrel){
456  NzeroROCs[0] += tempPair.first;
457  NloEffROCs[0] += tempPair.second;
458  }
459  else if (endcap){
460  NzeroROCs[1] += tempPair.first;
461  NloEffROCs[1] += tempPair.second;
462  }
463  }
464  } // endfor loop over all modules
465 
466  if (lumiSection%10> 2){
467  for (int i =0; i < 2; ++i) NloEffROCs[i] = NloEffROCs[i] - NzeroROCs[i];
468  if(noOccROCsBarrel) noOccROCsBarrel->setBinContent(1+lumiSection/10, NzeroROCs[0]);
469  if(loOccROCsBarrel) loOccROCsBarrel->setBinContent(1+lumiSection/10, NloEffROCs[0]);
470  if(noOccROCsEndcap) noOccROCsEndcap->setBinContent(1+lumiSection/10, NzeroROCs[1]);
471  if(loOccROCsEndcap) loOccROCsEndcap->setBinContent(1+lumiSection/10, NloEffROCs[1]);
472  }
473 
474  if (noOfDisks == 2) { // if (!isUpgrade)
475  if(meNDigisCHANEndcap_){ for(int j=0; j!=192; j++) if(numberOfDigis[j]>0) meNDigisCHANEndcap_->Fill((float)numberOfDigis[j]);}
476  if(meNDigisCHANEndcapDms_.at(0)){ for(int j=0; j!=72; j++) if((j<24||j>47)&&numberOfDigis[j]>0) meNDigisCHANEndcapDms_.at(0)->Fill((float)numberOfDigis[j]);}
477  if(meNDigisCHANEndcapDms_.at(1)){ for(int j=24; j!=96; j++) if((j<48||j>71)&&numberOfDigis[j]>0) meNDigisCHANEndcapDms_.at(1)->Fill((float)numberOfDigis[j]);}
478  if(meNDigisCHANEndcapDps_.at(0)){ for(int j=96; j!=168; j++) if((j<120||j>143)&&numberOfDigis[j]>0) meNDigisCHANEndcapDps_.at(0)->Fill((float)numberOfDigis[j]);}
479  if(meNDigisCHANEndcapDps_.at(1)){ for(int j=120; j!=192; j++) if((j<144||j>167)&&numberOfDigis[j]>0) meNDigisCHANEndcapDps_.at(1)->Fill((float)numberOfDigis[j]);}
480  }
481  else if (noOfDisks == 3) { // else if (isUpgrade)
482  if(meNDigisCHANEndcap_){ for(int j=0; j!=336; j++) if(numberOfDigis[j]>0) meNDigisCHANEndcap_->Fill((float)numberOfDigis[j]);}
483  if(meNDigisCHANEndcapDms_.at(0)){ for(int j=0; j!=100; j++) if((j<22||j>65)&&numberOfDigis[j]>0) meNDigisCHANEndcapDms_.at(0)->Fill((float)numberOfDigis[j]);}
484  if(meNDigisCHANEndcapDms_.at(1)){ for(int j=22; j!=134; j++) if((j<44||j>99)&&numberOfDigis[j]>0) meNDigisCHANEndcapDms_.at(1)->Fill((float)numberOfDigis[j]);}
485  if(meNDigisCHANEndcapDms_.at(2)){ for(int j=44; j!=168; j++) if((j<66||j>133)&&numberOfDigis[j]>0) meNDigisCHANEndcapDms_.at(2)->Fill((float)numberOfDigis[j]);}
486  if(meNDigisCHANEndcapDps_.at(0)){ for(int j=168; j!=268; j++) if((j<190||j>233)&&numberOfDigis[j]>0) meNDigisCHANEndcapDps_.at(0)->Fill((float)numberOfDigis[j]);}
487  if(meNDigisCHANEndcapDps_.at(1)){ for(int j=190; j!=302; j++) if((j<212||j>267)&&numberOfDigis[j]>0) meNDigisCHANEndcapDps_.at(1)->Fill((float)numberOfDigis[j]);}
488  if(meNDigisCHANEndcapDps_.at(2)){ for(int j=212; j!=336; j++) if((j<234||j>301)&&numberOfDigis[j]>0) meNDigisCHANEndcapDps_.at(2)->Fill((float)numberOfDigis[j]);}
489  }
490 
491  if(meNDigisCHANBarrelCh1_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+0]>0) meNDigisCHANBarrelCh1_->Fill((float)nDigisPerChan[i*36+0]);}
492  if(meNDigisCHANBarrelCh2_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+1]>0) meNDigisCHANBarrelCh2_->Fill((float)nDigisPerChan[i*36+1]);}
493  if(meNDigisCHANBarrelCh3_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+2]>0) meNDigisCHANBarrelCh3_->Fill((float)nDigisPerChan[i*36+2]);}
494  if(meNDigisCHANBarrelCh4_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+3]>0) meNDigisCHANBarrelCh4_->Fill((float)nDigisPerChan[i*36+3]);}
495  if(meNDigisCHANBarrelCh5_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+4]>0) meNDigisCHANBarrelCh5_->Fill((float)nDigisPerChan[i*36+4]);}
496  if(meNDigisCHANBarrelCh6_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+5]>0) meNDigisCHANBarrelCh6_->Fill((float)nDigisPerChan[i*36+5]);}
497  if(meNDigisCHANBarrelCh7_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+6]>0) meNDigisCHANBarrelCh7_->Fill((float)nDigisPerChan[i*36+6]);}
498  if(meNDigisCHANBarrelCh8_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+7]>0) meNDigisCHANBarrelCh8_->Fill((float)nDigisPerChan[i*36+7]);}
499  if(meNDigisCHANBarrelCh9_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+8]>0) meNDigisCHANBarrelCh9_->Fill((float)nDigisPerChan[i*36+8]);}
500  if(meNDigisCHANBarrelCh10_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+9]>0) meNDigisCHANBarrelCh10_->Fill((float)nDigisPerChan[i*36+9]);}
501  if(meNDigisCHANBarrelCh11_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+10]>0) meNDigisCHANBarrelCh11_->Fill((float)nDigisPerChan[i*36+10]);}
502  if(meNDigisCHANBarrelCh12_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+11]>0) meNDigisCHANBarrelCh12_->Fill((float)nDigisPerChan[i*36+11]);}
503  if(meNDigisCHANBarrelCh13_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+12]>0) meNDigisCHANBarrelCh13_->Fill((float)nDigisPerChan[i*36+12]);}
504  if(meNDigisCHANBarrelCh14_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+13]>0) meNDigisCHANBarrelCh14_->Fill((float)nDigisPerChan[i*36+13]);}
505  if(meNDigisCHANBarrelCh15_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+14]>0) meNDigisCHANBarrelCh15_->Fill((float)nDigisPerChan[i*36+14]);}
506  if(meNDigisCHANBarrelCh16_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+15]>0) meNDigisCHANBarrelCh16_->Fill((float)nDigisPerChan[i*36+15]);}
507  if(meNDigisCHANBarrelCh17_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+16]>0) meNDigisCHANBarrelCh17_->Fill((float)nDigisPerChan[i*36+16]);}
508  if(meNDigisCHANBarrelCh18_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+17]>0) meNDigisCHANBarrelCh18_->Fill((float)nDigisPerChan[i*36+17]);}
509  if(meNDigisCHANBarrelCh19_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+18]>0) meNDigisCHANBarrelCh19_->Fill((float)nDigisPerChan[i*36+18]);}
510  if(meNDigisCHANBarrelCh20_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+19]>0) meNDigisCHANBarrelCh20_->Fill((float)nDigisPerChan[i*36+19]);}
511  if(meNDigisCHANBarrelCh21_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+20]>0) meNDigisCHANBarrelCh21_->Fill((float)nDigisPerChan[i*36+20]);}
512  if(meNDigisCHANBarrelCh22_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+21]>0) meNDigisCHANBarrelCh22_->Fill((float)nDigisPerChan[i*36+21]);}
513  if(meNDigisCHANBarrelCh23_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+22]>0) meNDigisCHANBarrelCh23_->Fill((float)nDigisPerChan[i*36+22]);}
514  if(meNDigisCHANBarrelCh24_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+23]>0) meNDigisCHANBarrelCh24_->Fill((float)nDigisPerChan[i*36+23]);}
515  if(meNDigisCHANBarrelCh25_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+24]>0) meNDigisCHANBarrelCh25_->Fill((float)nDigisPerChan[i*36+24]);}
516  if(meNDigisCHANBarrelCh26_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+25]>0) meNDigisCHANBarrelCh26_->Fill((float)nDigisPerChan[i*36+25]);}
517  if(meNDigisCHANBarrelCh27_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+26]>0) meNDigisCHANBarrelCh27_->Fill((float)nDigisPerChan[i*36+26]);}
518  if(meNDigisCHANBarrelCh28_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+27]>0) meNDigisCHANBarrelCh28_->Fill((float)nDigisPerChan[i*36+27]);}
519  if(meNDigisCHANBarrelCh29_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+28]>0) meNDigisCHANBarrelCh29_->Fill((float)nDigisPerChan[i*36+28]);}
520  if(meNDigisCHANBarrelCh30_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+29]>0) meNDigisCHANBarrelCh30_->Fill((float)nDigisPerChan[i*36+29]);}
521  if(meNDigisCHANBarrelCh31_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+30]>0) meNDigisCHANBarrelCh31_->Fill((float)nDigisPerChan[i*36+30]);}
522  if(meNDigisCHANBarrelCh32_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+31]>0) meNDigisCHANBarrelCh32_->Fill((float)nDigisPerChan[i*36+31]);}
523  if(meNDigisCHANBarrelCh33_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+32]>0) meNDigisCHANBarrelCh33_->Fill((float)nDigisPerChan[i*36+32]);}
524  if(meNDigisCHANBarrelCh34_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+33]>0) meNDigisCHANBarrelCh34_->Fill((float)nDigisPerChan[i*36+33]);}
525  if(meNDigisCHANBarrelCh35_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+34]>0) meNDigisCHANBarrelCh35_->Fill((float)nDigisPerChan[i*36+34]);}
526  if(meNDigisCHANBarrelCh36_){ for(int i=0; i!=32; i++) if(nDigisPerChan[i*36+35]>0) meNDigisCHANBarrelCh36_->Fill((float)nDigisPerChan[i*36+35]);}
527 
528  // Rate of events with >N digis:
529  if(nEventDigis>bigEventSize){
530  if(bigEventRate) bigEventRate->Fill(lumiSection,1./23.);
531  }
532 
533  // Rate of pixel events and total number of pixel events per BX:
534  if(nActiveModules>=4){
535  if(pixEvtsPerBX) pixEvtsPerBX->Fill(float(bx));
536  if(pixEventRate) pixEventRate->Fill(lumiSection, 1./23.);
537  }
538 
539  // Actual digi occupancy in a FED compared to average digi occupancy per FED
541 
542  for(int i=0; i!=40; i++){
543  float averageOcc = 0.;
544  if(i<32){
545  float averageBPIXFed = float(nBPIXDigis)/32.;
546 
547  if(averageBPIXFed>0.) averageOcc = nDigisPerFed[i]/averageBPIXFed;
548  }else{
549  float averageFPIXFed = float(nFPIXDigis)/8.;
550  if(averageFPIXFed>0.) averageOcc = nDigisPerFed[i]/averageFPIXFed;
551  }
552  averageDigiOccupancy->setBinContent(i+1,averageOcc);
553 
554  int lumiSections8 = int(lumiSection/8);
555  if (modOn){
556  if (avgfedDigiOccvsLumi){
557  avgfedDigiOccvsLumi->setBinContent(1+lumiSections8, i+1, averageOcc);
558  }//endif meX5
559  }//endif modOn
560  }
561  }
562 
563  // slow down...
564  if(slowDown) usleep(10000);
565 
566 }
int plaquetteName() const
plaquetteId (in pannel)
MonitorElement * meNDigisCHANBarrelCh19_
MonitorElement * meNDigisCHANBarrelCh35_
int i
Definition: DBlmapReader.cc:9
MonitorElement * meNDigisCHANBarrelCh2_
MonitorElement * meNDigisCHANBarrelCh30_
void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * meNDigisCHANBarrelCh31_
MonitorElement * meNDigisCHANBarrelCh8_
MonitorElement * meNDigisCHANBarrelCh36_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:449
MonitorElement * loOccROCsEndcap
MonitorElement * meNDigisCHANBarrelCh17_
MonitorElement * meNDigisCHANBarrelCh25_
MonitorElement * meNDigisCHANBarrelCh6_
MonitorElement * meNDigisCOMBBarrel_
int bunchCrossing() const
Definition: EventBase.h:66
edm::LuminosityBlockNumber_t luminosityBlock() const
Definition: EventBase.h:63
MonitorElement * meNDigisCOMBEndcap_
MonitorElement * meNDigisCHANBarrelCh14_
MonitorElement * meNDigisCHANBarrelCh12_
MonitorElement * meNDigisCHANBarrelCh29_
static std::string const input
Definition: EdmProvDump.cc:43
void Fill(long long x)
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > srcToken_
MonitorElement * meNDigisCHANBarrelCh27_
int bladeName() const
blade id
MonitorElement * meNDigisCHANBarrelCh3_
MonitorElement * meNDigisCHANBarrelCh9_
MonitorElement * meNDigisCHANBarrelCh4_
MonitorElement * meNDigisCHANBarrelCh34_
MonitorElement * meNDigisCHANBarrelCh26_
MonitorElement * noOccROCsBarrel
MonitorElement * meNDigisCHANEndcap_
MonitorElement * meNDigisCHANBarrelCh28_
int j
Definition: DBlmapReader.cc:9
MonitorElement * noOccROCsEndcap
MonitorElement * meNDigisCHANBarrel_
std::vector< MonitorElement * > meNDigisCHANEndcapDms_
MonitorElement * meNDigisCHANBarrelCh33_
MonitorElement * pixEventRate
MonitorElement * meNDigisCHANBarrelCh21_
unsigned int I_detId[1856]
bool isValid() const
Definition: HandleBase.h:75
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
MonitorElement * meNDigisCHANBarrelCh32_
MonitorElement * meNDigisCHANBarrelCh10_
MonitorElement * loOccROCsBarrel
MonitorElement * meNDigisCHANBarrelCh1_
MonitorElement * averageDigiOccupancy
Definition: DetId.h:18
MonitorElement * meNDigisCHANBarrelCh5_
MonitorElement * meNDigisCHANBarrelCh7_
MonitorElement * meNDigisCHANBarrelCh15_
MonitorElement * meNDigisCHANBarrelCh13_
const T & get() const
Definition: EventSetup.h:55
MonitorElement * meNDigisCHANBarrelCh23_
T const * product() const
Definition: ESHandle.h:86
MonitorElement * meNDigisCHANBarrelCh18_
MonitorElement * bigEventRate
MonitorElement * meNDigisCHANBarrelCh20_
MonitorElement * avgfedDigiOccvsLumi
int pannelName() const
pannel id
MonitorElement * meNDigisCHANBarrelCh22_
int diskName() const
disk id
std::vector< MonitorElement * > meNDigisCHANEndcapDps_
MonitorElement * pixEvtsPerBX
std::vector< MonitorElement * > meNDigisCHANBarrelLs_
std::map< uint32_t, SiPixelDigiModule * > thePixelStructure
HalfCylinder halfCylinder() const
MonitorElement * meNDigisCHANBarrelCh16_
MonitorElement * meNDigisCHANBarrelCh11_
void Reset(void)
reset ME (ie. contents, errors, etc)
Definition: vlib.h:208
MonitorElement * meNDigisCHANBarrelCh24_
void SiPixelDigiSource::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &  iSetup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 175 of file SiPixelDigiSource.cc.

References bookMEs().

175  {
176  bookMEs(iBooker, iSetup);
177 }
virtual void bookMEs(DQMStore::IBooker &, const edm::EventSetup &iSetup)
void SiPixelDigiSource::bookMEs ( DQMStore::IBooker iBooker,
const edm::EventSetup iSetup 
)
virtual

Create folder tree and book histograms

Definition at line 669 of file SiPixelDigiSource.cc.

References averageDigiOccupancy, avgfedDigiOccvsLumi, bigEventRate, bigEventSize, bladeOn, DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), DQMStore::IBooker::cd(), conf_, diskOn, edm::hlt::Exception, hiRes, i, isPIB, isUpgrade, ladOn, layOn, LogDebug, loOccROCsBarrel, loOccROCsEndcap, meNDigisCHANBarrel_, meNDigisCHANBarrelCh10_, meNDigisCHANBarrelCh11_, meNDigisCHANBarrelCh12_, meNDigisCHANBarrelCh13_, meNDigisCHANBarrelCh14_, meNDigisCHANBarrelCh15_, meNDigisCHANBarrelCh16_, meNDigisCHANBarrelCh17_, meNDigisCHANBarrelCh18_, meNDigisCHANBarrelCh19_, meNDigisCHANBarrelCh1_, meNDigisCHANBarrelCh20_, meNDigisCHANBarrelCh21_, meNDigisCHANBarrelCh22_, meNDigisCHANBarrelCh23_, meNDigisCHANBarrelCh24_, meNDigisCHANBarrelCh25_, meNDigisCHANBarrelCh26_, meNDigisCHANBarrelCh27_, meNDigisCHANBarrelCh28_, meNDigisCHANBarrelCh29_, meNDigisCHANBarrelCh2_, meNDigisCHANBarrelCh30_, meNDigisCHANBarrelCh31_, meNDigisCHANBarrelCh32_, meNDigisCHANBarrelCh33_, meNDigisCHANBarrelCh34_, meNDigisCHANBarrelCh35_, meNDigisCHANBarrelCh36_, meNDigisCHANBarrelCh3_, meNDigisCHANBarrelCh4_, meNDigisCHANBarrelCh5_, meNDigisCHANBarrelCh6_, meNDigisCHANBarrelCh7_, meNDigisCHANBarrelCh8_, meNDigisCHANBarrelCh9_, meNDigisCHANBarrelLs_, meNDigisCHANEndcap_, meNDigisCHANEndcapDms_, meNDigisCHANEndcapDps_, meNDigisCOMBBarrel_, meNDigisCOMBEndcap_, modOn, noOccROCsBarrel, noOccROCsEndcap, noOfDisks, noOfLayers, phiOn, pixEventRate, pixEvtsPerBX, reducedSet, ringOn, MonitorElement::setAxisTitle(), DQMStore::IBooker::setCurrentFolder(), MonitorElement::setLumiFlag(), SiPixelFolderOrganizer::setModuleFolder(), AlCaHLTBitMon_QueryRunRegistry::string, thePixelStructure, indexGen::title, topFolderName_, twoDimModOn, twoDimOn, and twoDimOnlyLayDisk.

Referenced by bookHistograms().

669  {
670 
671  // Get DQM interface
673  char title[80]; sprintf(title, "Rate of events with >%i digis;LumiSection;Rate [Hz]",bigEventSize);
674  bigEventRate = iBooker.book1D("bigEventRate",title,5000,0.,5000.);
675  char title1[80]; sprintf(title1, "Pixel events vs. BX;BX;# events");
676  pixEvtsPerBX = iBooker.book1D("pixEvtsPerBX",title1,3565,0.,3565.);
677  char title2[80]; sprintf(title2, "Rate of Pixel events;LumiSection;Rate [Hz]");
678  pixEventRate = iBooker.book1D("pixEventRate",title2,5000,0.,5000.);
679  char title3[80]; sprintf(title3, "Number of Zero-Occupancy Barrel ROCs;LumiSection;N_{ZERO-OCCUPANCY} Barrel ROCs");
680  noOccROCsBarrel = iBooker.book1D("noOccROCsBarrel",title3,500,0.,5000.);
681  char title4[80]; sprintf(title4, "Number of Low-Efficiency Barrel ROCs;LumiSection;N_{LO EFF} Barrel ROCs");
682  loOccROCsBarrel = iBooker.book1D("loOccROCsBarrel",title4,500,0.,5000.);
683  char title5[80]; sprintf(title5, "Number of Zero-Occupancy Endcap ROCs;LumiSection;N_{ZERO-OCCUPANCY} Endcap ROCs");
684  noOccROCsEndcap = iBooker.book1D("noOccROCsEndcap",title5,500,0.,5000.);
685  char title6[80]; sprintf(title6, "Number of Low-Efficiency Endcap ROCs;LumiSection;N_{LO EFF} Endcap ROCs");
686  loOccROCsEndcap = iBooker.book1D("loOccROCsEndcap",title6,500,0.,5000.);
687  char title7[80]; sprintf(title7, "Average digi occupancy per FED;FED;NDigis/<NDigis>");
688  averageDigiOccupancy = iBooker.book1D("averageDigiOccupancy",title7,40,-0.5,39.5);
690  if(modOn){
691  char title4[80]; sprintf(title4, "FED Digi Occupancy (NDigis/<NDigis>) vs LumiSections;Lumi Section;FED");
692  avgfedDigiOccvsLumi = iBooker.book2D ("avgfedDigiOccvsLumi", title4, 400,0., 3200., 40, -0.5, 39.5);
693  }
694  std::map<uint32_t,SiPixelDigiModule*>::iterator struct_iter;
695 
696  SiPixelFolderOrganizer theSiPixelFolder(false);
697 
698  for(struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++){
700  if(modOn){
701  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,0,isUpgrade)){
702  (*struct_iter).second->book( conf_,iSetup,iBooker,0,twoDimOn,hiRes, reducedSet, twoDimModOn, isUpgrade);
703  } else {
704 
705  if(!isPIB) throw cms::Exception("LogicError")
706  << "[SiPixelDigiSource::bookMEs] Creation of DQM folder failed";
707  }
708  }
709  if(ladOn){
710  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,1,isUpgrade)){
711  (*struct_iter).second->book( conf_,iSetup,iBooker,1,twoDimOn,hiRes, reducedSet, isUpgrade);
712  } else {
713  LogDebug ("PixelDQM") << "PROBLEM WITH LADDER-FOLDER\n";
714  }
715 
716  }
717  if(layOn || twoDimOnlyLayDisk){
718  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,2,isUpgrade)){
719  (*struct_iter).second->book( conf_,iSetup,iBooker,2,twoDimOn,hiRes, reducedSet, twoDimOnlyLayDisk, isUpgrade);
720  } else {
721  LogDebug ("PixelDQM") << "PROBLEM WITH LAYER-FOLDER\n";
722  }
723  }
724 
725  if(phiOn){
726  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,3,isUpgrade)){
727  (*struct_iter).second->book( conf_,iSetup,iBooker,3,twoDimOn,hiRes, reducedSet, isUpgrade);
728  } else {
729  LogDebug ("PixelDQM") << "PROBLEM WITH PHI-FOLDER\n";
730  }
731  }
732  if(bladeOn){
733  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,4,isUpgrade)){
734  (*struct_iter).second->book( conf_,iSetup,iBooker,4,twoDimOn,hiRes, reducedSet, isUpgrade);
735  } else {
736  LogDebug ("PixelDQM") << "PROBLEM WITH BLADE-FOLDER\n";
737  }
738  }
739  if(diskOn || twoDimOnlyLayDisk){
740  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,5,isUpgrade)){
741  (*struct_iter).second->book( conf_,iSetup,iBooker,5,twoDimOn,hiRes, reducedSet, twoDimOnlyLayDisk, isUpgrade);
742  } else {
743  LogDebug ("PixelDQM") << "PROBLEM WITH DISK-FOLDER\n";
744  }
745  }
746  if(ringOn){
747  if(theSiPixelFolder.setModuleFolder(iBooker,(*struct_iter).first,6,isUpgrade)){
748  (*struct_iter).second->book( conf_,iSetup,iBooker,6,twoDimOn,hiRes, reducedSet, isUpgrade);
749  } else {
750  LogDebug ("PixelDQM") << "PROBLEM WITH RING-FOLDER\n";
751  }
752  }
753  }
754  iBooker.cd(topFolderName_+"/Barrel");
755  meNDigisCOMBBarrel_ = iBooker.book1D("ALLMODS_ndigisCOMB_Barrel","Number of Digis",200,0.,400.);
756  meNDigisCOMBBarrel_->setAxisTitle("Number of digis per module per event",1);
757  meNDigisCHANBarrel_ = iBooker.book1D("ALLMODS_ndigisCHAN_Barrel","Number of Digis",100,0.,1000.);
758  meNDigisCHANBarrel_->setAxisTitle("Number of digis per FED channel per event",1);
759  std::stringstream ss1, ss2;
760  for (int i = 1; i <= noOfLayers; i++)
761  {
762  ss1.str(std::string()); ss1 << "ALLMODS_ndigisCHAN_BarrelL" << i;
763  ss2.str(std::string()); ss2 << "Number of Digis L" << i;
764  meNDigisCHANBarrelLs_.push_back(iBooker.book1D(ss1.str(),ss2.str(),100,0.,1000.));
765  meNDigisCHANBarrelLs_.at(i-1)->setAxisTitle("Number of digis per FED channel per event",1);
766  }
767  meNDigisCHANBarrelCh1_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh1","Number of Digis Ch1",100,0.,1000.);
768  meNDigisCHANBarrelCh1_->setAxisTitle("Number of digis per FED channel per event",1);
769  meNDigisCHANBarrelCh2_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh2","Number of Digis Ch2",100,0.,1000.);
770  meNDigisCHANBarrelCh2_->setAxisTitle("Number of digis per FED channel per event",1);
771  meNDigisCHANBarrelCh3_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh3","Number of Digis Ch3",100,0.,1000.);
772  meNDigisCHANBarrelCh3_->setAxisTitle("Number of digis per FED channel per event",1);
773  meNDigisCHANBarrelCh4_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh4","Number of Digis Ch4",100,0.,1000.);
774  meNDigisCHANBarrelCh4_->setAxisTitle("Number of digis per FED channel per event",1);
775  meNDigisCHANBarrelCh5_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh5","Number of Digis Ch5",100,0.,1000.);
776  meNDigisCHANBarrelCh5_->setAxisTitle("Number of digis per FED channel per event",1);
777  meNDigisCHANBarrelCh6_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh6","Number of Digis Ch6",100,0.,1000.);
778  meNDigisCHANBarrelCh6_->setAxisTitle("Number of digis per FED channel per event",1);
779  meNDigisCHANBarrelCh7_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh7","Number of Digis Ch7",100,0.,1000.);
780  meNDigisCHANBarrelCh7_->setAxisTitle("Number of digis per FED channel per event",1);
781  meNDigisCHANBarrelCh8_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh8","Number of Digis Ch8",100,0.,1000.);
782  meNDigisCHANBarrelCh8_->setAxisTitle("Number of digis per FED channel per event",1);
783  meNDigisCHANBarrelCh9_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh9","Number of Digis Ch9",100,0.,1000.);
784  meNDigisCHANBarrelCh9_->setAxisTitle("Number of digis per FED channel per event",1);
785  meNDigisCHANBarrelCh10_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh10","Number of Digis Ch10",100,0.,1000.);
786  meNDigisCHANBarrelCh10_->setAxisTitle("Number of digis per FED channel per event",1);
787  meNDigisCHANBarrelCh11_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh11","Number of Digis Ch11",100,0.,1000.);
788  meNDigisCHANBarrelCh11_->setAxisTitle("Number of digis per FED channel per event",1);
789  meNDigisCHANBarrelCh12_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh12","Number of Digis Ch12",100,0.,1000.);
790  meNDigisCHANBarrelCh12_->setAxisTitle("Number of digis per FED channel per event",1);
791  meNDigisCHANBarrelCh13_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh13","Number of Digis Ch13",100,0.,1000.);
792  meNDigisCHANBarrelCh13_->setAxisTitle("Number of digis per FED channel per event",1);
793  meNDigisCHANBarrelCh14_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh14","Number of Digis Ch14",100,0.,1000.);
794  meNDigisCHANBarrelCh14_->setAxisTitle("Number of digis per FED channel per event",1);
795  meNDigisCHANBarrelCh15_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh15","Number of Digis Ch15",100,0.,1000.);
796  meNDigisCHANBarrelCh15_->setAxisTitle("Number of digis per FED channel per event",1);
797  meNDigisCHANBarrelCh16_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh16","Number of Digis Ch16",100,0.,1000.);
798  meNDigisCHANBarrelCh16_->setAxisTitle("Number of digis per FED channel per event",1);
799  meNDigisCHANBarrelCh17_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh17","Number of Digis Ch17",100,0.,1000.);
800  meNDigisCHANBarrelCh17_->setAxisTitle("Number of digis per FED channel per event",1);
801  meNDigisCHANBarrelCh18_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh18","Number of Digis Ch18",100,0.,1000.);
802  meNDigisCHANBarrelCh18_->setAxisTitle("Number of digis per FED channel per event",1);
803  meNDigisCHANBarrelCh19_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh19","Number of Digis Ch19",100,0.,1000.);
804  meNDigisCHANBarrelCh19_->setAxisTitle("Number of digis per FED channel per event",1);
805  meNDigisCHANBarrelCh20_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh20","Number of Digis Ch20",100,0.,1000.);
806  meNDigisCHANBarrelCh20_->setAxisTitle("Number of digis per FED channel per event",1);
807  meNDigisCHANBarrelCh21_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh21","Number of Digis Ch21",100,0.,1000.);
808  meNDigisCHANBarrelCh21_->setAxisTitle("Number of digis per FED channel per event",1);
809  meNDigisCHANBarrelCh22_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh22","Number of Digis Ch22",100,0.,1000.);
810  meNDigisCHANBarrelCh22_->setAxisTitle("Number of digis per FED channel per event",1);
811  meNDigisCHANBarrelCh23_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh23","Number of Digis Ch23",100,0.,1000.);
812  meNDigisCHANBarrelCh23_->setAxisTitle("Number of digis per FED channel per event",1);
813  meNDigisCHANBarrelCh24_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh24","Number of Digis Ch24",100,0.,1000.);
814  meNDigisCHANBarrelCh24_->setAxisTitle("Number of digis per FED channel per event",1);
815  meNDigisCHANBarrelCh25_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh25","Number of Digis Ch25",100,0.,1000.);
816  meNDigisCHANBarrelCh25_->setAxisTitle("Number of digis per FED channel per event",1);
817  meNDigisCHANBarrelCh26_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh26","Number of Digis Ch26",100,0.,1000.);
818  meNDigisCHANBarrelCh26_->setAxisTitle("Number of digis per FED channel per event",1);
819  meNDigisCHANBarrelCh27_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh27","Number of Digis Ch27",100,0.,1000.);
820  meNDigisCHANBarrelCh27_->setAxisTitle("Number of digis per FED channel per event",1);
821  meNDigisCHANBarrelCh28_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh28","Number of Digis Ch28",100,0.,1000.);
822  meNDigisCHANBarrelCh28_->setAxisTitle("Number of digis per FED channel per event",1);
823  meNDigisCHANBarrelCh29_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh29","Number of Digis Ch29",100,0.,1000.);
824  meNDigisCHANBarrelCh29_->setAxisTitle("Number of digis per FED channel per event",1);
825  meNDigisCHANBarrelCh30_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh30","Number of Digis Ch30",100,0.,1000.);
826  meNDigisCHANBarrelCh30_->setAxisTitle("Number of digis per FED channel per event",1);
827  meNDigisCHANBarrelCh31_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh31","Number of Digis Ch31",100,0.,1000.);
828  meNDigisCHANBarrelCh31_->setAxisTitle("Number of digis per FED channel per event",1);
829  meNDigisCHANBarrelCh32_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh32","Number of Digis Ch32",100,0.,1000.);
830  meNDigisCHANBarrelCh32_->setAxisTitle("Number of digis per FED channel per event",1);
831  meNDigisCHANBarrelCh33_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh33","Number of Digis Ch33",100,0.,1000.);
832  meNDigisCHANBarrelCh33_->setAxisTitle("Number of digis per FED channel per event",1);
833  meNDigisCHANBarrelCh34_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh34","Number of Digis Ch34",100,0.,1000.);
834  meNDigisCHANBarrelCh34_->setAxisTitle("Number of digis per FED channel per event",1);
835  meNDigisCHANBarrelCh35_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh35","Number of Digis Ch35",100,0.,1000.);
836  meNDigisCHANBarrelCh35_->setAxisTitle("Number of digis per FED channel per event",1);
837  meNDigisCHANBarrelCh36_ = iBooker.book1D("ALLMODS_ndigisCHAN_BarrelCh36","Number of Digis Ch36",100,0.,1000.);
838  meNDigisCHANBarrelCh36_->setAxisTitle("Number of digis per FED channel per event",1);
839  iBooker.cd(topFolderName_+"/Endcap");
840  meNDigisCOMBEndcap_ = iBooker.book1D("ALLMODS_ndigisCOMB_Endcap","Number of Digis",200,0.,400.);
841  meNDigisCOMBEndcap_->setAxisTitle("Number of digis per module per event",1);
842  meNDigisCHANEndcap_ = iBooker.book1D("ALLMODS_ndigisCHAN_Endcap","Number of Digis",100,0.,1000.);
843  meNDigisCHANEndcap_->setAxisTitle("Number of digis per FED channel per event",1);
844  for (int i = 1; i <= noOfDisks; i++)
845  {
846  ss1.str(std::string()); ss1 << "ALLMODS_ndigisCHAN_EndcapDp" << i;
847  ss2.str(std::string()); ss2 << "Number of Digis Disk p" << i;
848  meNDigisCHANEndcapDps_.push_back(iBooker.book1D(ss1.str(),ss2.str(),100,0.,1000.));
849  meNDigisCHANEndcapDps_.at(i-1)->setAxisTitle("Number of digis per FED channel per event",1);
850  }
851  for (int i = 1; i <= noOfDisks; i++)
852  {
853  ss1.str(std::string()); ss1 << "ALLMODS_ndigisCHAN_EndcapDm" << i;
854  ss2.str(std::string()); ss2 << "Number of Digis Disk m" << i;
855  meNDigisCHANEndcapDms_.push_back(iBooker.book1D(ss1.str(),ss2.str(),100,0.,1000.));
856  meNDigisCHANEndcapDms_.at(i-1)->setAxisTitle("Number of digis per FED channel per event",1);
857  }
858  iBooker.cd(topFolderName_);
859 }
#define LogDebug(id)
MonitorElement * meNDigisCHANBarrelCh19_
MonitorElement * meNDigisCHANBarrelCh35_
int i
Definition: DBlmapReader.cc:9
MonitorElement * meNDigisCHANBarrelCh2_
MonitorElement * meNDigisCHANBarrelCh30_
MonitorElement * meNDigisCHANBarrelCh31_
MonitorElement * meNDigisCHANBarrelCh8_
MonitorElement * meNDigisCHANBarrelCh36_
void cd(void)
Definition: DQMStore.cc:266
MonitorElement * loOccROCsEndcap
MonitorElement * meNDigisCHANBarrelCh17_
MonitorElement * meNDigisCHANBarrelCh25_
MonitorElement * meNDigisCHANBarrelCh6_
MonitorElement * meNDigisCOMBBarrel_
std::string topFolderName_
MonitorElement * meNDigisCOMBEndcap_
MonitorElement * meNDigisCHANBarrelCh14_
MonitorElement * meNDigisCHANBarrelCh12_
MonitorElement * meNDigisCHANBarrelCh29_
MonitorElement * meNDigisCHANBarrelCh27_
MonitorElement * meNDigisCHANBarrelCh3_
MonitorElement * meNDigisCHANBarrelCh9_
MonitorElement * meNDigisCHANBarrelCh4_
MonitorElement * meNDigisCHANBarrelCh34_
MonitorElement * meNDigisCHANBarrelCh26_
MonitorElement * noOccROCsBarrel
MonitorElement * meNDigisCHANEndcap_
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
MonitorElement * meNDigisCHANBarrelCh28_
MonitorElement * noOccROCsEndcap
MonitorElement * meNDigisCHANBarrel_
std::vector< MonitorElement * > meNDigisCHANEndcapDms_
MonitorElement * meNDigisCHANBarrelCh33_
MonitorElement * pixEventRate
MonitorElement * meNDigisCHANBarrelCh21_
MonitorElement * meNDigisCHANBarrelCh32_
MonitorElement * meNDigisCHANBarrelCh10_
MonitorElement * loOccROCsBarrel
MonitorElement * meNDigisCHANBarrelCh1_
MonitorElement * averageDigiOccupancy
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:274
MonitorElement * meNDigisCHANBarrelCh5_
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:133
MonitorElement * meNDigisCHANBarrelCh7_
MonitorElement * meNDigisCHANBarrelCh15_
MonitorElement * meNDigisCHANBarrelCh13_
MonitorElement * meNDigisCHANBarrelCh23_
MonitorElement * meNDigisCHANBarrelCh18_
MonitorElement * bigEventRate
MonitorElement * meNDigisCHANBarrelCh20_
MonitorElement * avgfedDigiOccvsLumi
edm::ParameterSet conf_
MonitorElement * meNDigisCHANBarrelCh22_
std::vector< MonitorElement * > meNDigisCHANEndcapDps_
MonitorElement * pixEvtsPerBX
std::vector< MonitorElement * > meNDigisCHANBarrelLs_
std::map< uint32_t, SiPixelDigiModule * > thePixelStructure
void setLumiFlag(void)
this ME is meant to be stored for each luminosity section
MonitorElement * meNDigisCHANBarrelCh16_
MonitorElement * meNDigisCHANBarrelCh11_
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * meNDigisCHANBarrelCh24_
void SiPixelDigiSource::buildStructure ( edm::EventSetup const &  iSetup)
virtual

Definition at line 571 of file SiPixelDigiSource.cc.

References PixelEndcapName::bladeName(), PixelEndcapName::diskName(), edm::EventSetup::get(), PixelEndcapName::halfCylinder(), isPIB, isUpgrade, PixelBarrelName::layerName(), LogDebug, noOfDisks, noOfLayers, PixelEndcapName::pannelName(), PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, PixelEndcapName::plaquetteName(), edm::ESHandle< class >::product(), DetId::rawId(), PixelGeomDetUnit::specificTopology(), AlCaHLTBitMon_QueryRunRegistry::string, DetId::subdetId(), and thePixelStructure.

Referenced by dqmBeginRun().

571  {
572 
573  edm::ESHandle<TrackerTopology> tTopoHandle;
574  iSetup.get<IdealGeometryRecord>().get(tTopoHandle);
575  const TrackerTopology *pTT = tTopoHandle.product();
576 
577  LogInfo ("PixelDQM") <<" SiPixelDigiSource::buildStructure" ;
579  iSetup.get<TrackerDigiGeometryRecord>().get( pDD );
580 
581  LogVerbatim ("PixelDQM") << " *** Geometry node for TrackerGeom is "<<&(*pDD)<<std::endl;
582  LogVerbatim ("PixelDQM") << " *** I have " << pDD->dets().size() <<" detectors"<<std::endl;
583  LogVerbatim ("PixelDQM") << " *** I have " << pDD->detTypes().size() <<" types"<<std::endl;
584 
585  for(TrackerGeometry::DetContainer::const_iterator it = pDD->dets().begin(); it != pDD->dets().end(); it++){
586 
587  if(dynamic_cast<PixelGeomDetUnit const *>((*it))!=0){
588 
589  DetId detId = (*it)->geographicalId();
590  const GeomDetUnit * geoUnit = pDD->idToDetUnit( detId );
591  const PixelGeomDetUnit * pixDet = dynamic_cast<const PixelGeomDetUnit*>(geoUnit);
592  int nrows = (pixDet->specificTopology()).nrows();
593  int ncols = (pixDet->specificTopology()).ncolumns();
594 
595  if(detId.subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel)) {
596  if(isPIB) continue;
597  LogDebug ("PixelDQM") << " ---> Adding Barrel Module " << detId.rawId() << endl;
598  uint32_t id = detId();
599  int layer = PixelBarrelName(DetId(id),pTT,isUpgrade).layerName();
600  if (layer > noOfLayers) noOfLayers = layer;
601  SiPixelDigiModule* theModule = new SiPixelDigiModule(id, ncols, nrows);
602  thePixelStructure.insert(pair<uint32_t,SiPixelDigiModule*> (id,theModule));
603 
604  } else if((detId.subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap)) && (!isUpgrade)) {
605  LogDebug ("PixelDQM") << " ---> Adding Endcap Module " << detId.rawId() << endl;
606  uint32_t id = detId();
607  SiPixelDigiModule* theModule = new SiPixelDigiModule(id, ncols, nrows);
608 
610  int disk = PixelEndcapName(DetId(id),pTT,isUpgrade).diskName();
611  if (disk > noOfDisks) noOfDisks = disk;
612  int blade = PixelEndcapName(DetId(id),pTT,isUpgrade).bladeName();
613  int panel = PixelEndcapName(DetId(id),pTT,isUpgrade).pannelName();
615 
616  char sside[80]; sprintf(sside, "HalfCylinder_%i",side);
617  char sdisk[80]; sprintf(sdisk, "Disk_%i",disk);
618  char sblade[80]; sprintf(sblade, "Blade_%02i",blade);
619  char spanel[80]; sprintf(spanel, "Panel_%i",panel);
620  char smodule[80];sprintf(smodule,"Module_%i",module);
621  std::string side_str = sside;
622  std::string disk_str = sdisk;
623  bool mask = side_str.find("HalfCylinder_1")!=string::npos||
624  side_str.find("HalfCylinder_2")!=string::npos||
625  side_str.find("HalfCylinder_4")!=string::npos||
626  disk_str.find("Disk_2")!=string::npos;
627  // clutch to take all of FPIX, but no BPIX:
628  mask = false;
629  if(isPIB && mask) continue;
630 
631  thePixelStructure.insert(pair<uint32_t,SiPixelDigiModule*> (id,theModule));
632  } else if( (detId.subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap)) && (isUpgrade)) {
633  LogDebug ("PixelDQM") << " ---> Adding Endcap Module " << detId.rawId() << endl;
634  uint32_t id = detId();
635  SiPixelDigiModule* theModule = new SiPixelDigiModule(id, ncols, nrows);
636 
638  int disk = PixelEndcapName(DetId(id),pTT,isUpgrade).diskName();
639  if (disk > noOfDisks) noOfDisks = disk;
640  int blade = PixelEndcapName(DetId(id),pTT,isUpgrade).bladeName();
641  int panel = PixelEndcapName(DetId(id),pTT,isUpgrade).pannelName();
642  int module = PixelEndcapName(DetId(id),pTT,isUpgrade).plaquetteName();
643 
644  char sside[80]; sprintf(sside, "HalfCylinder_%i",side);
645  char sdisk[80]; sprintf(sdisk, "Disk_%i",disk);
646  char sblade[80]; sprintf(sblade, "Blade_%02i",blade);
647  char spanel[80]; sprintf(spanel, "Panel_%i",panel);
648  char smodule[80];sprintf(smodule,"Module_%i",module);
649  std::string side_str = sside;
650  std::string disk_str = sdisk;
651  bool mask = side_str.find("HalfCylinder_1")!=string::npos||
652  side_str.find("HalfCylinder_2")!=string::npos||
653  side_str.find("HalfCylinder_4")!=string::npos||
654  disk_str.find("Disk_2")!=string::npos;
655  // clutch to take all of FPIX, but no BPIX:
656  mask = false;
657  if(isPIB && mask) continue;
658 
659  thePixelStructure.insert(pair<uint32_t,SiPixelDigiModule*> (id,theModule));
660  }//end_elseif(isUpgrade)
661 
662  }
663  }
664  LogInfo ("PixelDQM") << " *** Pixel Structure Size " << thePixelStructure.size() << endl;
665 }
#define LogDebug(id)
int plaquetteName() const
plaquetteId (in pannel)
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
int bladeName() const
blade id
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
Definition: DetId.h:18
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
int layerName() const
layer id
T const * product() const
Definition: ESHandle.h:86
int pannelName() const
pannel id
int diskName() const
disk id
std::map< uint32_t, SiPixelDigiModule * > thePixelStructure
HalfCylinder halfCylinder() const
Definition: vlib.h:208
void SiPixelDigiSource::dqmBeginRun ( const edm::Run r,
edm::EventSetup const &  iSetup 
)
virtual

Reimplemented from DQMEDAnalyzer.

Definition at line 101 of file SiPixelDigiSource.cc.

References bladeOn, buildStructure(), diskOn, eventNo, firstRun, hiRes, i, ladOn, layOn, lumSec, modOn, nBigEvents, nBPIXDigis, nDigisPerDisk, nDigisPerFed, nDM1P1M1, nDM1P1M2, nDM1P1M3, nDM1P1M4, nDM1P2M1, nDM1P2M2, nDM1P2M3, nDM2P1M1, nDM2P1M2, nDM2P1M3, nDM2P1M4, nDM2P2M1, nDM2P2M2, nDM2P2M3, nDM3P1M1, nDM3P2M1, nDP1P1M1, nDP1P1M2, nDP1P1M3, nDP1P1M4, nDP1P2M1, nDP1P2M2, nDP1P2M3, nDP2P1M1, nDP2P1M2, nDP2P1M3, nDP2P1M4, nDP2P2M1, nDP2P2M2, nDP2P2M3, nDP3P1M1, nDP3P2M1, nFPIXDigis, nL1M1, nL1M2, nL1M3, nL1M4, nL2M1, nL2M2, nL2M3, nL2M4, nL3M1, nL3M2, nL3M3, nL3M4, nL4M1, nL4M2, nL4M3, nL4M4, nLumiSecs, phiOn, ringOn, and twoDimOn.

101  {
102  LogInfo ("PixelDQM") << " SiPixelDigiSource::beginJob - Initialisation ... " << std::endl;
103  LogInfo ("PixelDQM") << "Mod/Lad/Lay/Phi " << modOn << "/" << ladOn << "/"
104  << layOn << "/" << phiOn << std::endl;
105  LogInfo ("PixelDQM") << "Blade/Disk/Ring" << bladeOn << "/" << diskOn << "/"
106  << ringOn << std::endl;
107 
108  LogInfo ("PixelDQM") << "2DIM IS " << twoDimOn << " and set to high resolution? " << hiRes << "\n";
109 
110  if(firstRun){
111  eventNo = 0;
112  lumSec = 0;
113  nLumiSecs = 0;
114  nBigEvents = 0;
115  nBPIXDigis = 0;
116  nFPIXDigis = 0;
117  for(int i=0; i!=40; i++) nDigisPerFed[i]=0;
118  for(int i=0; i!=4; i++) nDigisPerDisk[i]=0;
119  nDP1P1M1 = 0;
120  nDP1P1M2 = 0;
121  nDP1P1M3 = 0;
122  nDP1P1M4 = 0;
123  nDP1P2M1 = 0;
124  nDP1P2M2 = 0;
125  nDP1P2M3 = 0;
126  nDP2P1M1 = 0;
127  nDP2P1M2 = 0;
128  nDP2P1M3 = 0;
129  nDP2P1M4 = 0;
130  nDP2P2M1 = 0;
131  nDP2P2M2 = 0;
132  nDP2P2M3 = 0;
133  nDP3P1M1 = 0;
134  nDP3P2M1 = 0;
135  nDM1P1M1 = 0;
136  nDM1P1M2 = 0;
137  nDM1P1M3 = 0;
138  nDM1P1M4 = 0;
139  nDM1P2M1 = 0;
140  nDM1P2M2 = 0;
141  nDM1P2M3 = 0;
142  nDM2P1M1 = 0;
143  nDM2P1M2 = 0;
144  nDM2P1M3 = 0;
145  nDM2P1M4 = 0;
146  nDM2P2M1 = 0;
147  nDM2P2M2 = 0;
148  nDM2P2M3 = 0;
149  nDM3P1M1 = 0;
150  nDM3P2M1 = 0;
151  nL1M1 = 0;
152  nL1M2 = 0;
153  nL1M3 = 0;
154  nL1M4 = 0;
155  nL2M1 = 0;
156  nL2M2 = 0;
157  nL2M3 = 0;
158  nL2M4 = 0;
159  nL3M1 = 0;
160  nL3M2 = 0;
161  nL3M3 = 0;
162  nL3M4 = 0;
163  nL4M1 = 0;
164  nL4M2 = 0;
165  nL4M3 = 0;
166  nL4M4 = 0;
167 
168  // Build map
169  buildStructure(iSetup);
170  // Book Monitoring Elements
171  firstRun = false;
172  }
173 }
int i
Definition: DBlmapReader.cc:9
virtual void buildStructure(edm::EventSetup const &)

Member Data Documentation

MonitorElement* SiPixelDigiSource::averageDigiOccupancy
private

Definition at line 143 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::avgfedDigiOccvsLumi
private

Definition at line 144 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::bigEventRate
private

Definition at line 136 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

int SiPixelDigiSource::bigEventSize
private

Definition at line 189 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

bool SiPixelDigiSource::bladeOn
private

Definition at line 79 of file SiPixelDigiSource.h.

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

edm::ParameterSet SiPixelDigiSource::conf_
private

Definition at line 65 of file SiPixelDigiSource.h.

Referenced by bookMEs(), and SiPixelDigiSource().

bool SiPixelDigiSource::diskOn
private

Definition at line 79 of file SiPixelDigiSource.h.

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

int SiPixelDigiSource::eventNo
private

Definition at line 80 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

bool SiPixelDigiSource::firstRun
private

Definition at line 192 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun(), and SiPixelDigiSource().

bool SiPixelDigiSource::hiRes
private

Definition at line 74 of file SiPixelDigiSource.h.

Referenced by bookMEs(), and dqmBeginRun().

unsigned int SiPixelDigiSource::I_detId[1856]
private

Definition at line 195 of file SiPixelDigiSource.h.

Referenced by analyze(), and SiPixelDigiSource().

int SiPixelDigiSource::I_fedId[1856]
private

Definition at line 196 of file SiPixelDigiSource.h.

Referenced by analyze(), and SiPixelDigiSource().

int SiPixelDigiSource::I_linkId1[1856]
private

Definition at line 197 of file SiPixelDigiSource.h.

Referenced by analyze(), and SiPixelDigiSource().

int SiPixelDigiSource::I_linkId2[1856]
private

Definition at line 198 of file SiPixelDigiSource.h.

Referenced by analyze(), and SiPixelDigiSource().

std::string SiPixelDigiSource::I_name[1856]
private

Definition at line 194 of file SiPixelDigiSource.h.

Referenced by SiPixelDigiSource().

bool SiPixelDigiSource::isOffline
private

Definition at line 191 of file SiPixelDigiSource.h.

Referenced by analyze().

bool SiPixelDigiSource::isPIB
private

Definition at line 68 of file SiPixelDigiSource.h.

Referenced by bookMEs(), and buildStructure().

bool SiPixelDigiSource::isUpgrade
private

Definition at line 190 of file SiPixelDigiSource.h.

Referenced by analyze(), bookMEs(), buildStructure(), and SiPixelDigiSource().

bool SiPixelDigiSource::ladOn
private

Definition at line 77 of file SiPixelDigiSource.h.

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

bool SiPixelDigiSource::layOn
private

Definition at line 77 of file SiPixelDigiSource.h.

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

MonitorElement* SiPixelDigiSource::loOccROCsBarrel
private

Definition at line 140 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::loOccROCsEndcap
private

Definition at line 142 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

int SiPixelDigiSource::lumSec
private

Definition at line 81 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrel_
private

Definition at line 147 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh10_
private

Definition at line 158 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh11_
private

Definition at line 159 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh12_
private

Definition at line 160 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh13_
private

Definition at line 161 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh14_
private

Definition at line 162 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh15_
private

Definition at line 163 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh16_
private

Definition at line 164 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh17_
private

Definition at line 165 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh18_
private

Definition at line 166 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh19_
private

Definition at line 167 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh1_
private

Definition at line 149 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh20_
private

Definition at line 168 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh21_
private

Definition at line 169 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh22_
private

Definition at line 170 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh23_
private

Definition at line 171 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh24_
private

Definition at line 172 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh25_
private

Definition at line 173 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh26_
private

Definition at line 174 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh27_
private

Definition at line 175 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh28_
private

Definition at line 176 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh29_
private

Definition at line 177 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh2_
private

Definition at line 150 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh30_
private

Definition at line 178 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh31_
private

Definition at line 179 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh32_
private

Definition at line 180 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh33_
private

Definition at line 181 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh34_
private

Definition at line 182 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh35_
private

Definition at line 183 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh36_
private

Definition at line 184 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh3_
private

Definition at line 151 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh4_
private

Definition at line 152 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh5_
private

Definition at line 153 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh6_
private

Definition at line 154 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh7_
private

Definition at line 155 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh8_
private

Definition at line 156 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANBarrelCh9_
private

Definition at line 157 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

std::vector<MonitorElement*> SiPixelDigiSource::meNDigisCHANBarrelLs_
private

Definition at line 148 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCHANEndcap_
private

Definition at line 185 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

std::vector<MonitorElement*> SiPixelDigiSource::meNDigisCHANEndcapDms_
private

Definition at line 187 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

std::vector<MonitorElement*> SiPixelDigiSource::meNDigisCHANEndcapDps_
private

Definition at line 186 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCOMBBarrel_
private

Definition at line 145 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::meNDigisCOMBEndcap_
private

Definition at line 146 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

bool SiPixelDigiSource::modOn
private

Definition at line 70 of file SiPixelDigiSource.h.

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

int SiPixelDigiSource::nBigEvents
private

Definition at line 133 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nBPIXDigis
private

Definition at line 134 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDigisA
private

Definition at line 203 of file SiPixelDigiSource.h.

Referenced by analyze().

int SiPixelDigiSource::nDigisB
private

Definition at line 204 of file SiPixelDigiSource.h.

Referenced by analyze().

int SiPixelDigiSource::nDigisPerChan[1152]
private

Definition at line 200 of file SiPixelDigiSource.h.

Referenced by analyze().

int SiPixelDigiSource::nDigisPerDisk[6]
private

Definition at line 201 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDigisPerFed[40]
private

Definition at line 199 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P1M1
private

Definition at line 101 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P1M2
private

Definition at line 102 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P1M3
private

Definition at line 103 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P1M4
private

Definition at line 104 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P2M1
private

Definition at line 105 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P2M2
private

Definition at line 106 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM1P2M3
private

Definition at line 107 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P1M1
private

Definition at line 108 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P1M2
private

Definition at line 109 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P1M3
private

Definition at line 110 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P1M4
private

Definition at line 111 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P2M1
private

Definition at line 112 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P2M2
private

Definition at line 113 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM2P2M3
private

Definition at line 114 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM3P1M1
private

Definition at line 115 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDM3P2M1
private

Definition at line 116 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P1M1
private

Definition at line 85 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P1M2
private

Definition at line 86 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P1M3
private

Definition at line 87 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P1M4
private

Definition at line 88 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P2M1
private

Definition at line 89 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P2M2
private

Definition at line 90 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP1P2M3
private

Definition at line 91 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P1M1
private

Definition at line 92 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P1M2
private

Definition at line 93 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P1M3
private

Definition at line 94 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P1M4
private

Definition at line 95 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P2M1
private

Definition at line 96 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P2M2
private

Definition at line 97 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP2P2M3
private

Definition at line 98 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP3P1M1
private

Definition at line 99 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nDP3P2M1
private

Definition at line 100 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nFPIXDigis
private

Definition at line 135 of file SiPixelDigiSource.h.

Referenced by analyze(), and dqmBeginRun().

int SiPixelDigiSource::nL1M1
private

Definition at line 117 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL1M2
private

Definition at line 118 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL1M3
private

Definition at line 119 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL1M4
private

Definition at line 120 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL2M1
private

Definition at line 121 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL2M2
private

Definition at line 122 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL2M3
private

Definition at line 123 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL2M4
private

Definition at line 124 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL3M1
private

Definition at line 125 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL3M2
private

Definition at line 126 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL3M3
private

Definition at line 127 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL3M4
private

Definition at line 128 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL4M1
private

Definition at line 129 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL4M2
private

Definition at line 130 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL4M3
private

Definition at line 131 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nL4M4
private

Definition at line 132 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

int SiPixelDigiSource::nLumiSecs
private

Definition at line 82 of file SiPixelDigiSource.h.

Referenced by dqmBeginRun().

MonitorElement* SiPixelDigiSource::noOccROCsBarrel
private

Definition at line 139 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::noOccROCsEndcap
private

Definition at line 141 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

int SiPixelDigiSource::noOfDisks
private

Definition at line 209 of file SiPixelDigiSource.h.

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

int SiPixelDigiSource::noOfLayers
private

Definition at line 208 of file SiPixelDigiSource.h.

Referenced by bookMEs(), and buildStructure().

int SiPixelDigiSource::numberOfDigis[336]
private

Definition at line 202 of file SiPixelDigiSource.h.

Referenced by analyze().

bool SiPixelDigiSource::phiOn
private

Definition at line 77 of file SiPixelDigiSource.h.

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

MonitorElement* SiPixelDigiSource::pixEventRate
private

Definition at line 138 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

MonitorElement* SiPixelDigiSource::pixEvtsPerBX
private

Definition at line 137 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

bool SiPixelDigiSource::reducedSet
private

Definition at line 75 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

bool SiPixelDigiSource::ringOn
private

Definition at line 79 of file SiPixelDigiSource.h.

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

bool SiPixelDigiSource::saveFile
private

Definition at line 67 of file SiPixelDigiSource.h.

bool SiPixelDigiSource::slowDown
private

Definition at line 69 of file SiPixelDigiSource.h.

Referenced by analyze().

edm::InputTag SiPixelDigiSource::src_
private

Definition at line 66 of file SiPixelDigiSource.h.

edm::EDGetTokenT<edm::DetSetVector<PixelDigi> > SiPixelDigiSource::srcToken_
private

Definition at line 207 of file SiPixelDigiSource.h.

Referenced by analyze(), and SiPixelDigiSource().

std::map<uint32_t,SiPixelDigiModule*> SiPixelDigiSource::thePixelStructure
private

Definition at line 83 of file SiPixelDigiSource.h.

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

std::string SiPixelDigiSource::topFolderName_

Definition at line 62 of file SiPixelDigiSource.h.

Referenced by bookMEs(), and SiPixelDigiSource().

bool SiPixelDigiSource::twoDimModOn
private

Definition at line 72 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().

bool SiPixelDigiSource::twoDimOn
private

Definition at line 71 of file SiPixelDigiSource.h.

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

bool SiPixelDigiSource::twoDimOnlyLayDisk
private

Definition at line 73 of file SiPixelDigiSource.h.

Referenced by analyze(), and bookMEs().