29 debug =
pset.getUntrackedParameter<
bool>(
"debug",
false);
50 ibooker.
book2D(
"phiSegments_numHitsVsWheel",
"phiSegments_numHitsVsWheel", 5, -2.5, 2.5, 20, 0, 20));
57 ibooker.
book2D(
"phiSegments_numHitsVsSector",
"phiSegments_numHitsVsSector", 14, 0.5, 14.5, 20, 0, 20));
67 phiHistos[1]->setBinLabel(10,
"Sec10", 1);
68 phiHistos[1]->setBinLabel(11,
"Sec11", 1);
69 phiHistos[1]->setBinLabel(12,
"Sec12", 1);
70 phiHistos[1]->setBinLabel(13,
"Sec13", 1);
71 phiHistos[1]->setBinLabel(14,
"Sec14", 1);
73 ibooker.
book2D(
"phiSegments_numHitsVsStation",
"phiSegments_numHitsVsStation", 4, 0.5, 4.5, 20, 0, 20));
81 ibooker.
book2D(
"thetaSegments_numHitsVsWheel",
"thetaSegments_numHitsVsWheel", 5, -2.5, 2.5, 20, 0, 20));
88 ibooker.
book2D(
"thetaSegments_numHitsVsSector",
"thetaSegments_numHitsVsSector", 14, 0.5, 14.5, 20, 0, 20));
104 ibooker.
book2D(
"thetaSegments_numHitsVsStation",
"thetaSegments_numHitsVsStation", 4, 0.5, 4.5, 20, 0, 20));
125 for (chamberId = all4DSegments->id_begin(); chamberId != all4DSegments->id_end(); ++chamberId) {
130 cout <<
" Chamber: " << *chamberId <<
" has " << nsegm <<
" 4D segments" << endl;
135 bool segmNoisy =
false;
136 if ((*segment4D).hasPhi()) {
139 map<DTSuperLayerId, vector<DTRecHit1D> > hitsBySLMap;
140 for (vector<DTRecHit1D>::const_iterator
hit = phiHits.begin();
hit != phiHits.end(); ++
hit) {
145 bool isNoisy =
false;
146 bool isFEMasked =
false;
147 bool isTDCMasked =
false;
148 bool isTrigMask =
false;
151 statusMap->
cellStatus(wireId, isNoisy, isFEMasked, isTDCMasked, isTrigMask, isDead, isNohv);
154 cout <<
"Wire: " << wireId <<
" is noisy, skipping!" << endl;
161 if ((*segment4D).hasZed()) {
165 for (vector<DTRecHit1D>::const_iterator
hit = zHits.begin();
hit != zHits.end(); ++
hit) {
168 bool isNoisy =
false;
169 bool isFEMasked =
false;
170 bool isTDCMasked =
false;
171 bool isTrigMask =
false;
175 statusMap->
cellStatus(wireId, isNoisy, isFEMasked, isTDCMasked, isTrigMask, isDead, isNohv);
178 cout <<
"Wire: " << wireId <<
" is noisy, skipping!" << endl;
187 cout <<
"skipping the segment: it contains noisy cells" << endl;
194 if ((*segment4D).hasPhi()) {
195 nHits = (((*segment4D).phiSegment())->specificRecHits()).
size();
197 cout <<
"Phi segment with number of hits: " <<
nHits << endl;
202 if ((*segment4D).hasZed()) {
203 nHits = (((*segment4D).zSegment())->specificRecHits()).
size();
205 cout <<
"Zed segment with number of hits: " <<
nHits << endl;
T getParameter(std::string const &) const
std::pair< const_iterator, const_iterator > range
iterator range
virtual void setCurrentFolder(std::string const &fullpath)
const edm::ESGetToken< DTStatusFlag, DTStatusFlagRcd > statusMapToken_
edm::EDGetTokenT< DTRecSegment4DCollection > theRecHits4DLabel_
C::const_iterator const_iterator
constant access iterator type
void analyze(const edm::Event &, const edm::EventSetup &) override
book the histos
DTSegmentsTask(const edm::ParameterSet &pset)
Constructor.
std::vector< MonitorElement * > thetaHistos
std::vector< MonitorElement * > phiHistos
std::vector< DTRecHit1D > specificRecHits() const
Access to specific components.
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
edm::ParameterSet parameters
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
~DTSegmentsTask() override
Destructor.
TupleMultiplicity< TrackerTraits > const *__restrict__ uint32_t nHits
int cellStatus(int wheelId, int stationId, int sectorId, int slId, int layerId, int cellId, bool &noiseFlag, bool &feMask, bool &tdcMask, bool &trigMask, bool &deadFlag, bool &nohvFlag) const
get content