diff --git a/DQM/SiStripMonitorClient/data/index_template_TKMap.html b/DQM/SiStripMonitorClient/data/index_template_TKMap.html
index 4ca2a456b623e..a26e122fe2188 100644
--- a/DQM/SiStripMonitorClient/data/index_template_TKMap.html
+++ b/DQM/SiStripMonitorClient/data/index_template_TKMap.html
@@ -34,6 +34,12 @@
Analysis of run RunNumber
Number of clusters on-track per module
Number of clusters off-track per module (automatic scale)
Mean value for S/N for on-track cluster corrected for the angle
+ Cluster charge per module
+ Cluster charge per cm from origin per module
+ Cluster charge per cm from track per module
+ Number of valid hits per module
+ Number of missing hits per module
+ Number of inactive hits per module
Fraction of bad components per module found by the prompt calibration loop
Type of bad components per module found by the prompt calibration loop
List of bad components found by the prompt calibration loop
diff --git a/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html b/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html
index 843c8c720b8cc..27350212c5e6c 100644
--- a/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html
+++ b/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html
@@ -34,6 +34,12 @@ Analysis of run RunNumber
Number of clusters on-track per module
Number of clusters off-track per module (automatic scale)
Mean value for S/N for on-track cluster corrected for the angle
+ Cluster charge per module
+ Cluster charge per cm from origin per module
+ Cluster charge per cm from track per module
+ Number of valid hits per module
+ Number of missing hits per module
+ Number of inactive hits per module
Fraction of bad components per module found by the prompt calibration loop
Type of bad components per module found by the prompt calibration loop
List of bad components found by the prompt calibration loop
diff --git a/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h b/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h
index 34a407ebbb0be..3bf231cfdeb45 100644
--- a/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h
+++ b/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h
@@ -46,7 +46,7 @@ class SiStripTrackerMapCreator {
void setTkMapRangeOffline();
uint16_t getDetectorFlagAndComment(DQMStore* dqm_store, uint32_t det_id, const TrackerTopology* tTopo, std::ostringstream& comment);
void printBadModuleList(std::map* badmodmap, const edm::EventSetup& eSetup);
- void printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup);
+ void printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup, std::string& htype);
TrackerMap* trackerMap_;
diff --git a/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc b/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc
index 19012250397dc..a922203e399a3 100644
--- a/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc
+++ b/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc
@@ -410,11 +410,11 @@ void SiStripTrackerMapCreator::setTkMapFromHistogram(DQMStore* dqm_store, std::s
dqm_store->cd(mechanicalview_dir);
}
dqm_store->cd();
- if (topModules) printTopModules(topNmodVec, eSetup);
+ if (topModules) printTopModules(topNmodVec, eSetup, htype);
delete topNmodVec;
}
-void SiStripTrackerMapCreator::printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup){
+void SiStripTrackerMapCreator::printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup, std::string& htype){
//////////////Retrieve tracker topology from geometry
//edm::ESHandle tTopoHandle;
@@ -426,8 +426,16 @@ void SiStripTrackerMapCreator::printTopModules(std::vectorempty()) return;
- std::sort(topNmodVec->rbegin(), topNmodVec->rend());
- if (topNmodVec->size() > numTopModules) topNmodVec->resize(numTopModules);
+ if (htype == "StoNCorrOnTrack") {
+ topModLabel += " less than 10";
+ std::sort(topNmodVec->begin(), topNmodVec->end());
+ while ((topNmodVec->back()).first > 10)
+ topNmodVec->pop_back();
+ }
+ else{
+ std::sort(topNmodVec->rbegin(), topNmodVec->rend());
+ if (topNmodVec->size() > numTopModules) topNmodVec->resize(numTopModules);
+ }
edm::LogVerbatim("TopModules") << topModLabel;
edm::LogVerbatim("TopModules") << "------------------------------------------------------";
diff --git a/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py b/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py
index b5ada538d806e..3c22625a3cf06 100644
--- a/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py
+++ b/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py
@@ -112,9 +112,9 @@
cms.PSet(mapName=cms.untracked.string('NumberOfOfffTrackCluster'),TopModules=cms.untracked.bool(True)),
cms.PSet(mapName=cms.untracked.string('NumberOfOfffTrackCluster'),mapSuffix=cms.untracked.string("_autoscale"),mapMax=cms.untracked.double(-1.)),
cms.PSet(mapName=cms.untracked.string('NumberOfOnTrackCluster')),
- cms.PSet(mapName=cms.untracked.string('StoNCorrOnTrack')),
+ cms.PSet(mapName=cms.untracked.string('StoNCorrOnTrack'),TopModules=cms.untracked.bool(True)),
cms.PSet(mapName=cms.untracked.string('NApvShots'),mapMax=cms.untracked.double(-1.),logScale=cms.untracked.bool(True)),
- cms.PSet(mapName=cms.untracked.string('NApvShots'),logScale=cms.untracked.bool(True),psuMap=cms.untracked.bool(True),loadLVCabling=cms.untracked.bool(True),TopModules=cms.untracked.bool(True)),
+ cms.PSet(mapName=cms.untracked.string('NApvShots'),mapMax=cms.untracked.double(-1.),logScale=cms.untracked.bool(True),psuMap=cms.untracked.bool(True),loadLVCabling=cms.untracked.bool(True),TopModules=cms.untracked.bool(True)),
# cms.PSet(mapName=cms.untracked.string('MedianChargeApvShots'),mapMax=cms.untracked.double(-1.)),
# cms.PSet(mapName=cms.untracked.string('ClusterCharge'),mapMax=cms.untracked.double(-1.)),
# cms.PSet(mapName=cms.untracked.string('ChargePerCMfromOrigin')),