43 show_mechanical_structure_view(
true),
44 show_readout_view(
false),
45 show_control_view(
false),
46 select_all_detectors(
false),
47 reset_each_run(
false),
51 tkDetMapToken_{esConsumes<TkDetMap, TrackerTopologyRcd, edm::Transition::BeginRun>()},
167 k0 = ClusterMultiplicityRegions.getParameter<
double>(
"k0");
168 q0 = ClusterMultiplicityRegions.getParameter<
double>(
"q0");
169 dk0 = ClusterMultiplicityRegions.getParameter<
double>(
"dk0");
170 maxClus = ClusterMultiplicityRegions.getParameter<
double>(
"MaxClus");
171 minPix = ClusterMultiplicityRegions.getParameter<
double>(
"MinPix");
269 std::make_unique<TkHistoMap>(tkDetMap, ibooker,
topFolderName_,
"TkHMap_NumberOfCluster", 0.,
true);
272 tkDetMap, ibooker, topFolderName_ +
"/TkHistoMap",
"TkHMap_NumberOfCluster", 0.,
false);
277 std::make_unique<TkHistoMap>(tkDetMap, ibooker,
topFolderName_,
"TkHMap_ClusterCharge", 0.,
true);
280 tkDetMap, ibooker, topFolderName_ +
"/TkHistoMap",
"TkHMap_ClusterCharge", 0.,
false);
284 edm::LogInfo(
"SiStripTkDQM|SiStripMonitorCluster") <<
"nr. of activeDets: " << activeDets.size();
285 for (std::vector<uint32_t>::iterator detid_iterator = activeDets.begin(); detid_iterator != activeDets.end();
287 uint32_t detid = (*detid_iterator);
291 activeDets.erase(detid_iterator);
307 std::pair<std::string, int32_t> det_layer_pair = folder_organizer.
GetSubDetAndLayer(detid, tTopo);
311 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(label);
314 int32_t lnumber = det_layer_pair.second;
315 std::vector<uint32_t> layerDetIds;
316 if (det_layer_pair.first ==
"TIB") {
318 }
else if (det_layer_pair.first ==
"TOB") {
320 }
else if (det_layer_pair.first ==
"TID" && lnumber > 0) {
322 }
else if (det_layer_pair.first ==
"TID" && lnumber < 0) {
324 }
else if (det_layer_pair.first ==
"TEC" && lnumber > 0) {
326 }
else if (det_layer_pair.first ==
"TEC" && lnumber < 0) {
332 folder_organizer.
setLayerFolder(detid, tTopo, det_layer_pair.second);
362 HistoName =
"DeltaBx";
372 HistoName =
"DeltaBxCycle";
398 HistoName =
"AbsoluteBx_CStripVsCpixel";
437 HistoName =
"MainDiagonalPosition_vs_BX";
451 HistoName =
"TH2MainDiagonalPosition_vs_BX";
502 const char*
HistoName =
"StripClusVsBXandOrbit";
503 const char* HistoTitle =
504 "Strip cluster multiplicity vs BX mod(70) and Orbit;Event 1 BX "
505 "mod(70);time [Orb#]";
510 ParametersNclusVsCycleTimeProf2D.
getParameter<int32_t>(
"Nbins"),
511 ParametersNclusVsCycleTimeProf2D.
getParameter<
double>(
"xmin"),
512 ParametersNclusVsCycleTimeProf2D.
getParameter<
double>(
"xmax"),
513 ParametersNclusVsCycleTimeProf2D.
getParameter<int32_t>(
"Nbinsy"),
514 ParametersNclusVsCycleTimeProf2D.
getParameter<
double>(
"ymin"),
515 ParametersNclusVsCycleTimeProf2D.
getParameter<
double>(
"ymax"),
519 NclusVsCycleTimeProf2D->setCanExtend(TH1::kAllAxes);
524 const char*
HistoName =
"ClusterWidths_vs_Amplitudes";
525 const char* HistoTitle =
526 "Cluster widths vs amplitudes;Amplitudes (integrated ADC "
527 "counts);Cluster widths";
530 ParametersClusWidthVsAmpTH2.
getParameter<int32_t>(
"Nbinsx"),
531 ParametersClusWidthVsAmpTH2.
getParameter<
double>(
"xmin"),
532 ParametersClusWidthVsAmpTH2.
getParameter<
double>(
"xmax"),
533 ParametersClusWidthVsAmpTH2.
getParameter<int32_t>(
"Nbinsy"),
534 ParametersClusWidthVsAmpTH2.
getParameter<
double>(
"ymin"),
535 ParametersClusWidthVsAmpTH2.
getParameter<
double>(
"ymax"));
551 HistoName =
"NumberOfClustersInStrip";
562 HistoName =
"NumberOfClustersInStrip_vs_BX";
577 HistoName =
"NumberOfClustersInPixel_vs_BX";
593 HistoName =
"NumberOfClustersinFED_v_FEDID";
618 edm::LogInfo(
"SiStripMonitorCluster") <<
"SiStripMonitorCluster::bookHistograms: "
619 <<
" Creating MEs for new Cabling ";
624 edm::LogInfo(
"SiStripMonitorCluster") <<
"SiStripMonitorCluster::bookHistograms: "
625 <<
" Resetting MEs ";
664 int NPixClusters = 0, NStripClusters = 0, MultiplicityRegion = 0;
665 bool isPixValid =
false;
680 if (!cluster_detsetvektor.
isValid())
684 NStripClusters = StrC->
data().
size();
686 if (cluster_detsetvektor_pix.
isValid()) {
690 MultiplicityRegion =
FindRegion(NStripClusters, NPixClusters);
712 iSubdet->second.totNClusters = 0;
716 bool found_layer_me =
false;
718 std::map<int, int> FEDID_v_clustersum;
725 int ncluster_layer = 0;
726 std::map<std::string, LayerMEs>::iterator iLayerME =
LayerMEsMap.find(layer_label);
731 layer_single = iLayerME->second;
732 found_layer_me =
true;
735 int ncluster_ring[20] = {0};
737 bool found_module_me =
false;
741 for (std::vector<uint32_t>::const_iterator iterDets = iterLayer->second.begin();
742 iterDets != iterLayer->second.end();
746 uint32_t detid = (*iterDets);
749 if (subdet_label.empty())
755 std::map<uint32_t, ModMEs>::iterator imodME =
ModuleMEsMap.find(detid);
757 mod_single = imodME->second;
758 found_module_me =
true;
761 found_module_me =
false;
764 cluster_detsetvektor->find(detid);
766 if (isearch == cluster_detsetvektor->end() and passDCSFilter_) {
780 if (isearch == cluster_detsetvektor->end()) {
796 std::vector<const FedChannelConnection*> fedConnections = siStripDetCabling.
getConnections(detid);
800 int good_fcc_index = -999;
801 for (
unsigned int x = 0;
x < fedConnections.size();
x++) {
802 if (fedConnections[
x] !=
nullptr) {
807 if (good_fcc_index != -999 && fedConnections[good_fcc_index] !=
nullptr) {
808 int temp_fedid = fedConnections[good_fcc_index]->fedId();
809 if (FEDID_v_clustersum.find(temp_fedid) != FEDID_v_clustersum.end()) {
810 if (cluster_detset.
size() < 1000 && !cluster_detset.
empty()) {
811 FEDID_v_clustersum[temp_fedid] = FEDID_v_clustersum.find(temp_fedid)->second + cluster_detset.
size();
814 if (cluster_detset.
size() < 1000 && !cluster_detset.
empty()) {
815 FEDID_v_clustersum[temp_fedid] = cluster_detset.
size();
819 edm::LogInfo(
"SiStripMonitorCluster") <<
"SiStripMonitorCluster::analyze WARNING! no good connections "
837 ncluster_layer += cluster_detset.
size();
839 short total_clusterized_strips = 0;
846 clusterIter != cluster_detset.
end();
848 const auto& ampls = clusterIter->amplitudes();
850 float cluster_position = clusterIter->barycenter();
852 short cluster_start = clusterIter->firstStrip();
854 short cluster_width = ampls.size();
856 total_clusterized_strips = total_clusterized_strips + cluster_width;
859 tkmapclusterch->fill(detid, static_cast<float>(clusterIter->charge()));
862 float cluster_signal = 0.0;
863 float cluster_noise = 0.0;
864 int nrnonzeroamplitudes = 0;
867 for (
uint iamp = 0; iamp < ampls.size(); iamp++) {
868 if (ampls[iamp] > 0) {
869 cluster_signal += ampls[iamp];
870 if (!siStripQuality.
IsStripBad(qualityRange, clusterIter->firstStrip() + iamp)) {
871 noise = siStripNoises.
getNoise(clusterIter->firstStrip() + iamp, detNoiseRange) /
872 siStripGain.
getStripGain(clusterIter->firstStrip() + iamp, detGainRange);
874 noise2 += noise *
noise;
875 nrnonzeroamplitudes++;
879 if (nrnonzeroamplitudes > 0)
880 cluster_noise =
sqrt(noise2 / nrnonzeroamplitudes);
883 (cluster_signal / cluster_noise < sToNLowerLimit_ || cluster_signal / cluster_noise >
sToNUpperLimit_ ||
888 cluster_properties.
charge = cluster_signal;
889 cluster_properties.
position = cluster_position;
890 cluster_properties.
start = cluster_start;
891 cluster_properties.
width = cluster_width;
892 cluster_properties.
noise = cluster_noise;
895 if (found_module_me and passDCSFilter_)
899 if (found_layer_me and passDCSFilter_) {
906 std::map<std::string, SubDetMEs>::iterator iSubdet =
SubDetMEsMap.find(subdet_label);
909 iSubdet->second.SubDetClusterChargeTH1->Fill(cluster_signal);
911 iSubdet->second.SubDetClusterWidthTH1->Fill(cluster_width);
916 std::map<std::string, SubDetMEs>::iterator iSubdet =
SubDetMEsMap.find(subdet_label);
918 iSubdet->second.SubDetClusWidthVsAmpTH2->Fill(cluster_signal, cluster_width);
926 (subdet_label.find(
"TID") != std::string::npos || subdet_label.find(
"TEC") != std::string::npos)) {
927 std::pair<std::string, int32_t> det_ring_pair = folder_organizer.
GetSubDetAndLayer(detid, tTopo,
true);
928 ncluster_ring[
std::abs(det_ring_pair.second)]++;
934 std::map<std::string, SubDetMEs>::iterator iSubdet =
SubDetMEsMap.find(subdet_label);
935 std::pair<std::string, int32_t> det_layer_pair = folder_organizer.
GetSubDetAndLayer(detid, tTopo);
936 iSubdet->second.SubDetNumberOfClusterPerLayerTrend->Fill(
941 (subdet_label.find(
"TID") != std::string::npos || subdet_label.find(
"TEC") != std::string::npos)) {
942 std::pair<std::string, int32_t> det_ring_pair = folder_organizer.
GetSubDetAndLayer(detid, tTopo,
true);
947 short total_nr_strips = siStripDetCabling.
nApvPairs(detid) * 2 * 128;
948 float local_occupancy =
static_cast<float>(total_clusterized_strips) / static_cast<float>(total_nr_strips);
949 if (found_module_me and passDCSFilter_) {
968 std::map<std::string, SubDetMEs>::iterator iSubdet =
SubDetMEsMap.find(subdet_label);
970 iSubdet->second.totNClusters += ncluster_layer;
983 long long dbx = event_history->deltaBX();
984 long long tbx = event_history->absoluteBX();
986 bool global_histo_filled =
false;
987 bool MultiplicityRegion_Vs_APVcycle_filled =
false;
1002 long long tbx_corr = tbx;
1012 tbx_corr -= the_phase;
1014 long long dbxincycle = event_history->deltaBXinCycle(the_phase);
1020 global_histo_filled =
true;
1024 if (cluster_detsetvektor_pix.
isValid()) {
1039 map<int, int>::iterator it;
1042 for (
auto const& fedidEntry : FEDID_v_clustersum) {
1050 FEDID_v_clustersum.clear();
1054 if (isPixValid && !MultiplicityRegion_Vs_APVcycle_filled && passDCSFilter_) {
1061 MultiplicityRegion_Vs_APVcycle_filled =
true;
1080 long long tbx_corr = tbx;
1081 int the_phase = apv_phase_collection->getPhase(
"All");
1087 tbx_corr -= the_phase;
1097 std::map<uint32_t, ModMEs>::iterator pos =
ModuleMEsMap.find(idet);
1098 ModMEs mod_me = pos->second;
1136 hid = hidmanager.
createHistoId(
"NumberOfClusters",
"det", detid);
1144 short total_nr_strips = siStripDetCabling.
nApvPairs(detid) * 2 * 128;
1145 hid = hidmanager.
createHistoId(
"ClusterPosition",
"det", detid);
1152 short total_nr_strips = siStripDetCabling.
nApvPairs(detid) * 2 * 128;
1153 hid = hidmanager.
createHistoId(
"ClusterDigiPosition",
"det", detid);
1160 hid = hidmanager.
createHistoId(
"ClusterWidth",
"det", detid);
1167 hid = hidmanager.
createHistoId(
"ClusterCharge",
"det", detid);
1174 hid = hidmanager.
createHistoId(
"ClusterNoise",
"det", detid);
1181 hid = hidmanager.
createHistoId(
"ClusterSignalOverNoise",
"det", detid);
1188 hid = hidmanager.
createHistoId(
"ClusterSignalOverNoiseVsPos",
"det", detid);
1203 hid = hidmanager.
createHistoId(
"ClusterLocalOccupancy",
"det", detid);
1210 hid = hidmanager.
createHistoId(
"NrOfClusterizedStrips",
"det", detid);
1216 hid = hidmanager.
createHistoId(
"ClusterWidths_vs_Amplitudes",
"det", detid);
1219 Nbinsx = Nbinsx / 2;
1261 "TH1ClusterWidth", hidmanager.
createHistoLayer(
"Summary_ClusterWidth",
"layer", label,
"").c_str(), ibooker);
1270 "TH1ClusterNoise", hidmanager.
createHistoLayer(
"Summary_ClusterNoise",
"layer", label,
"").c_str(), ibooker);
1279 "TH1ClusterCharge", hidmanager.
createHistoLayer(
"Summary_ClusterCharge",
"layer", label,
"").c_str(), ibooker);
1289 hidmanager.
createHistoLayer(
"Summary_ClusterSignalOverNoise",
"layer", label,
"").c_str(),
1299 bookME1D(
"TH1ModuleLocalOccupancy",
1300 hidmanager.
createHistoLayer(
"Summary_ClusterLocalOccupancy",
"layer", label,
"").c_str(),
1318 if (label.find(
"TID") != std::string::npos || label.find(
"TEC") != std::string::npos) {
1322 "NumberOfClusterPerRingVsTrendVar",
1323 hidmanager.
createHistoLayer(
"NumberOfClusterPerRing_vs_TrendVar",
"layer", label,
"").c_str(),
1345 hidmanager.
createHistoLayer(
"ClusterWidths_vs_Amplitudes",
"layer", label,
"").c_str(),
1377 HistoName =
"ClusterCharge__" +
label;
1384 HistoName =
"ClusterWidth__" +
label;
1391 HistoName =
"TotalNumberOfCluster__" +
label;
1400 HistoName =
"TotalNumberOfClusterProfile__" +
label;
1414 HistoName =
"TotalNumberOfClusterPerLayer__" +
label;
1433 HistoName =
"Cluster_vs_ApvCycle__" +
label;
1449 HistoName =
"Cluster_vs_ApvCycle_2D__" +
label;
1451 double h2ymax = 9999.0;
1452 double yfact = Parameters.
getParameter<
double>(
"yfactor");
1453 if (label.find(
"TIB") != std::string::npos)
1454 h2ymax = (6984. * 256.) * yfact;
1455 else if (label.find(
"TID") != std::string::npos)
1456 h2ymax = (2208. * 256.) * yfact;
1457 else if (label.find(
"TOB") != std::string::npos)
1458 h2ymax = (12906. * 256.) * yfact;
1459 else if (label.find(
"TEC") != std::string::npos)
1460 h2ymax = (7552. * 2. * 256.) * yfact;
1477 HistoName =
"ClusterWidths_vs_Amplitudes__" +
label;
1493 HistoName =
"Cluster_vs_DeltaBxCycle__" +
label;
1508 HistoName =
"DeltaBx_vs_ApvCycle__" +
label;
1535 for (
int ipos = cluster.
start + 1; ipos <= cluster.
start + cluster.
width; ipos++) {
1544 if (cluster.
noise > 0)
1549 if (cluster.
noise > 0)
1628 return ibooker.
book1D(HistoName,
1640 return ibooker.
book2D(HistoName,
1651 double kplus =
k0 * (1 +
dk0 / 100);
1652 double kminus =
k0 * (1 -
dk0 / 100);
1655 if (nstrip != 0 && npix >= (nstrip * kminus -
q0) && npix <= (nstrip * kplus +
q0))
1657 else if (nstrip != 0 && npix < (nstrip * kminus -
q0) && nstrip <=
maxClus)
1659 else if (nstrip != 0 && npix < (nstrip * kminus -
q0) && nstrip >
maxClus)
1661 else if (nstrip != 0 && npix > (nstrip * kplus +
q0))
1663 else if (npix >
minPix && nstrip == 0)
MonitorElement * GlobalABXTH1_CSCP
void ResetModuleMEs(uint32_t idet)
MonitorElement * LayerNumberOfClusterTrend
int FindRegion(int nstrip, int npixel)
MonitorElement * ModuleLocalOccupancy
bool show_mechanical_structure_view
void getTIBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tibDetRawIds, const TrackerTopology *trackerTopology, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t int_ext=0, uint32_t string=0)
MonitorElement * bookProfile2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, double lowZ, double highZ, char const *option="s", FUNC onbooking=NOOP())
edm::ESGetToken< SiStripDetCabling, SiStripDetCablingRcd > siStripDetCablingRunToken_
MonitorElement * NumberOfPixelClus_vs_BX
void addActiveDetectorsRawIds(std::vector< uint32_t > &) const
virtual DQM_DEPRECATED void setCanExtend(unsigned int value)
void setSiStripFolderName(std::string name)
MonitorElement * ClusterDigiPosition
MonitorElement * PixVsStripMultiplicityRegions
std::pair< const std::string, const char * > getSubDetFolderAndTag(const uint32_t &detid, const TrackerTopology *tTopo)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventIDconst &, edm::Timestampconst & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
virtual void setCurrentFolder(std::string const &fullpath)
MonitorElement * GlobalTH2MainDiagonalPosition_vs_BX
bool getByToken(EDGetToken token, Handle< PROD > &result) const
bool moduleswitchclusstonon
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopologyEventToken_
edm::ESGetToken< SiStripQuality, SiStripQualityRcd > siStripQualityToken_
MonitorElement * GlobalCStripVsCpix
bool IsStripBad(const uint32_t &detid, const short &strip) const
MonitorElement * SubDetClusterWidthTH1
MonitorElement * LayerLocalOccupancyTrend
bool layerswitchclusdigiposon
void getTIDDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tidDetRawIds, const TrackerTopology *trackerTopology, uint32_t side=0, uint32_t wheel=0, uint32_t ring=0, uint32_t ster=0)
Kind kind() const
Get the type of the monitor element.
MonitorElement * ClusterSignalOverNoiseVsPos
void setLayerFolder(uint32_t rawdetid, const TrackerTopology *tTopo, int32_t layer=0, bool ring_flag=false)
MonitorElement * LayerClusterNoise
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
bool moduleswitchcluschargeon
bool subdetswitchtotclusth1on
MonitorElement * StripNoise2Cycle
data_type const * const_iterator
MonitorElement * NrOfClusterizedStrips
MonitorElement * LayerClusterStoN
void createLayerMEs(std::string label, int ndets, DQMStore::IBooker &ibooker)
MonitorElement * ClusterPosition
bool layerswitchnrclusterizedstrip
MonitorElement * LayerNumberOfClusterProfile
bool module_clusterWidth_vs_amplitude_on
EventAuxiliary const & eventAuxiliary() const override
void getTECDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tecDetRawIds, const TrackerTopology *trackerTopology, uint32_t side=0, uint32_t wheel=0, uint32_t petal_bkw_frw=0, uint32_t petal=0, uint32_t ring=0, uint32_t ster=0)
std::map< std::string, LayerMEs > LayerMEsMap
MonitorElement * SubDetClusterApvTH2
void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * LayerClusterPosition
bool moduleswitchclusposon
bool layerswitchclusstonon
bool layerswitchnumclusterprofon
bool subdetswitchcluswidthon
LuminosityBlockNumber_t luminosityBlock() const
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * NumberOfPixelClus
void setDetectorFolder(uint32_t rawdetid, const TrackerTopology *tTopo)
unsigned long long m_cacheID_
MonitorElement * SubDetApvDBxProf2
void createSubDetMEs(std::string label, DQMStore::IBooker &ibooker)
bool getData(T &iHolder) const
const std::vector< const FedChannelConnection * > & getConnections(uint32_t det_id) const
virtual void Reset()
Remove all data from the ME, keept the empty histogram with all its settings.
std::map< uint32_t, ModMEs > ModuleMEsMap
bool getStatus(edm::Event const &e, edm::EventSetup const &eSetup)
MonitorElement * SubDetClusterApvProf
MonitorElement * LayerClusWidthVsAmpTH2
static float getNoise(uint16_t strip, const Range &range)
MonitorElement * ClusterNoise
MonitorElement * ClusterSignalOverNoise
void createMEs(const edm::EventSetup &es, DQMStore::IBooker &ibooker)
bool moduleswitchcluswidthon
std::map< std::string, std::string > SubDetPhasePartMap
MonitorElement * GlobalApvCycleDBxTH2
bool globalswitchnclusvscycletimeprof2don
vector< ParameterSet > Parameters
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())
static float getStripGain(const uint16_t &strip, const SiStripApvGain::Range &range)
MonitorElement * LayerLocalOccupancy
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
bool subdetswitchapvcycleprofon
GenericTriggerEventFlag * genTriggerEventFlagPixelDCSfilter_
MonitorElement * LayerClusterWidthProfile
bool accept(const edm::Event &event, const edm::EventSetup &setup)
To be called from analyze/filter() methods.
bool subdetswitchapvcycledbxprof2on
MonitorElement * bookMETrend(const char *, DQMStore::IBooker &ibooker)
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopologyRunToken_
std::vector< uint32_t > activeDets
bool layerswitchclusposon
bool moduleswitchclusnoiseon
bool layerswitchcluschargeon
edm::ESGetToken< SiStripDetCabling, SiStripDetCablingRcd > siStripDetCablingEventToken_
bool layerswitchclusstonVsposon
data_type const * data(size_t cell) const
bool globalswitchcstripvscpix
Abs< T >::type abs(const T &t)
std::pair< ContainerIterator, ContainerIterator > Range
bool subdetswitchtotclusprofon
MonitorElement * NumberOfClusters
MonitorElement * SubDetTotClusterProf
MonitorElement * ClusterCharge
bool globalswitchstripnoise2apvcycle
bool moduleswitchclusstonVsposon
MonitorElement * NumberOfStripClus
void createModuleMEs(ModMEs &mod_single, uint32_t detid, DQMStore::IBooker &ibooker, const SiStripDetCabling &)
std::string getSubdetid(uint32_t id, const TrackerTopology *tTopo, bool flag_ring)
bool globalswitchFEDCluster
MonitorElement * GlobalMainDiagonalPosition_vs_BX
MonitorElement * SubDetClusterChargeTH1
MonitorElement * NumberOfStripClus_vs_BX
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)
edm::EDGetTokenT< EventWithHistory > historyProducerToken_
MonitorElement * bookME2D(const char *ParameterSetLabel, const char *HistoName, DQMStore::IBooker &ibooker)
MonitorElement * ClusWidthVsAmpTH2
MonitorElement * LayerClusterStoNTrend
edm::ESGetToken< SiStripNoises, SiStripNoisesRcd > siStripNoisesToken_
MonitorElement * GlobalMainDiagonalPosition
std::string topFolderName_
SiStripHistoId hidmanager
Log< level::Info, false > LogInfo
MonitorElement * SubDetClusterDBxCycleProf
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
SiStripDCSStatus * dcsStatus_
bool subdetswitchdbxcycleprofon
GenericTriggerEventFlag * genTriggerEventFlagBPTXfilter_
MonitorElement * GlobalDBxTH1
MonitorElement * LayerNumberOfClusterPerRingTrend
bool subdet_clusterWidth_vs_amplitude_on
bool globalswitchstripnoise3apvcycle
void fillME(MonitorElement *ME, float value1)
SiStripMonitorCluster(const edm::ParameterSet &)
MonitorElement * LayerClusterWidth
MonitorElement * LayerClusterWidthTrend
MonitorElement * SubDetClusWidthVsAmpTH2
~SiStripMonitorCluster() override
bool layerswitchclusnoiseon
T const * product() const
bool layerswitchclusterwidthprofon
std::string createHistoId(std::string description, std::string id_type, uint32_t component_id)
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
T getParameter(std::string const &) const
SiStripFolderOrganizer folder_organizer
bool subdetswitchcluschargeon
virtual DQM_DEPRECATED void setStatOverflows(bool value)
bool layerswitchlocaloccupancy
bool layer_clusterWidth_vs_amplitude_on
MonitorElement * NumberOfFEDClus
MonitorElement * StripNoise3Cycle
std::pair< std::string, int32_t > GetSubDetAndLayer(const uint32_t &detid, const TrackerTopology *tTopo, bool ring_flag=false)
edm::ESGetToken< SiStripGain, SiStripGainRcd > siStripGainToken_
const uint16_t nApvPairs(uint32_t det_id) const
const Range getRange(const uint32_t detID) const
bool layerswitchcluswidthon
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > clusterProducerPixToken_
std::map< std::string, SubDetMEs > SubDetMEsMap
const Range getRange(const uint32_t detID) const
void fillLayerMEs(LayerMEs &, ClusterProperties &cluster)
std::pair< ContainerIterator, ContainerIterator > Range
std::unique_ptr< TkHistoMap > tkmapcluster
MonitorElement * LayerClusterCharge
MonitorElement * SubDetTotClusterTH1
bool applyClusterQuality_
MonitorElement * ClusterWidth
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterProducerStripToken_
MonitorElement * LayerClusterChargeTrend
void initRun(const edm::Run &run, const edm::EventSetup &setup)
To be called from beginRun() methods.
void getTOBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tobDetRawIds, const TrackerTopology *trackerTopology, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t rod=0)
std::string createHistoLayer(std::string description, std::string id_type, std::string path, std::string flag)
std::pair< ContainerIterator, ContainerIterator > Range
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
std::map< std::string, std::vector< uint32_t > > LayerDetMap
edm::ESGetToken< TkDetMap, TrackerTopologyRcd > tkDetMapToken_
bool globalswitchMultiRegions
bool moduleswitchlocaloccupancy
std::unique_ptr< TkHistoMap > tkmapclusterch
MonitorElement * GlobalDBxCycleTH1
edm::EDGetTokenT< APVCyclePhaseCollection > apvPhaseProducerToken_
std::string qualityLabel_
MonitorElement * Module_ClusWidthVsAmpTH2
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
GenericTriggerEventFlag * genTriggerEventFlagStripDCSfilter_
bool globalswitchmaindiagonalposition
MonitorElement * NclusVsCycleTimeProf2D
bool globalswitchapvcycledbxth2on
MonitorElement * bookME1D(const char *ParameterSetLabel, const char *HistoName, DQMStore::IBooker &ibooker)
void fillModuleMEs(ModMEs &mod_mes, ClusterProperties &cluster)
MonitorElement * SubDetNumberOfClusterPerLayerTrend
bool clusterchtkhistomapon
bool clusterWidth_vs_amplitude_on
MonitorElement * LayerClusterNoiseTrend
const SiStripApvGain::Range getRange(uint32_t detID) const
bool moduleswitchnrclusterizedstrip
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
bool subdetswitchapvcycleth2on
bool moduleswitchclusdigiposon