CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SiStripMonitorCluster.h
Go to the documentation of this file.
1 #ifndef SiStripMonitorCluster_SiStripMonitorCluster_h
2 #define SiStripMonitorCluster_SiStripMonitorCluster_h
3 // -*- C++ -*-
4 // Package: SiStripMonitorCluster
5 // Class : SiStripMonitorCluster
9 // Original Author: dkcira
10 // Created: Wed Feb 1 16:47:14 CET 2006
11 #include <memory>
22 
23 #include <vector>
24 
27 
28 class DQMStore;
29 class SiStripDetCabling;
30 class SiStripCluster;
31 class SiPixelCluster;
32 class EventWithHistory;
34 class SiStripDCSStatus;
36 
38  public:
41  virtual void analyze(const edm::Event&, const edm::EventSetup&);
42  //virtual void beginJob() ;
43  virtual void endJob() ;
44  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
45 
46  struct ModMEs{ // MEs for one single detector module
47 
57  MonitorElement* NrOfClusterizedStrips = 0; // can be used at client level for occupancy calculations
58  };
59 
60  struct LayerMEs{ // MEs for Layer Level
73 
74  };
75 
76  struct SubDetMEs{ // MEs for Subdetector Level
77  int totNClusters = 0;
84  };
85 
86  struct ClusterProperties { // Cluster Properties
87  float charge;
88  float position;
89  short start;
90  short width;
91  float noise;
92  };
93 
102 
104 
105  private:
106 
107  void createMEs(const edm::EventSetup& es);
108  void createLayerMEs(std::string label, int ndets);
109  void createModuleMEs(ModMEs& mod_single, uint32_t detid);
111  int FindRegion(int nstrip,int npixel);
112  void fillModuleMEs(ModMEs& mod_mes, ClusterProperties& cluster);
113  void fillLayerMEs(LayerMEs&, ClusterProperties& cluster, float timeinorbit);
114 
115  void ResetModuleMEs(uint32_t idet);
116 
117  inline void fillME(MonitorElement* ME,float value1){if (ME!=0)ME->Fill(value1);}
118  inline void fillME(MonitorElement* ME,float value1,float value2){if (ME!=0)ME->Fill(value1,value2);}
119  inline void fillME(MonitorElement* ME,float value1,float value2,float value3){if (ME!=0)ME->Fill(value1,value2,value3);}
120  inline void fillME(MonitorElement* ME,float value1,float value2,float value3,float value4){if (ME!=0)ME->Fill(value1,value2,value3,value4);}
121  MonitorElement * bookMETrend(const char*, const char*);
122  MonitorElement* bookME1D(const char* ParameterSetLabel, const char* HistoName);
123 
124  private:
127  std::map<uint32_t, ModMEs> ModuleMEsMap;
128  std::map<std::string, LayerMEs> LayerMEsMap;
129  std::map<std::string, std::vector< uint32_t > > LayerDetMap;
130  std::map<std::string, SubDetMEs> SubDetMEsMap;
131  std::map<std::string, std::string> SubDetPhasePartMap;
132 
133  // flags
135  unsigned long long m_cacheID_;
136 
138  std::vector<uint32_t> ModulesToBeExcluded_;
139 
141 
142  // TkHistoMap added
144 
147 
160 
164 
186 
187  bool Mod_On_;
189 
192 
193  /*
194  edm::InputTag clusterProducerStrip_;
195  edm::InputTag clusterProducerPix_;
196  edm::InputTag historyProducer_;
197  edm::InputTag apvPhaseProducer_;
198  */
199 
204 
210 
211  double k0;
212  double q0;
213  double dk0;
214  double maxClus;
215  double minPix;
216 
218 
219  // add for selecting on ZeroBias events in the MinimumBias PD
223 
227 };
228 #endif
void ResetModuleMEs(uint32_t idet)
virtual void analyze(const edm::Event &, const edm::EventSetup &)
int FindRegion(int nstrip, int npixel)
MonitorElement * bookME1D(const char *ParameterSetLabel, const char *HistoName)
MonitorElement * PixVsStripMultiplicityRegions
MonitorElement * GlobalCStripVsCpix
edm::ESHandle< SiStripDetCabling > SiStripDetCabling_
MonitorElement * ClusterSignalOverNoiseVsPos
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
MonitorElement * StripNoise2Cycle
std::map< std::string, LayerMEs > LayerMEsMap
void createMEs(const edm::EventSetup &es)
std::map< std::string, std::vector< uint32_t > > LayerDetMap
void Fill(long long x)
MonitorElement * NumberOfPixelClus
unsigned long long m_cacheID_
Definition: ME.h:11
std::map< uint32_t, ModMEs > ModuleMEsMap
void createSubDetMEs(std::string label)
std::map< std::string, std::string > SubDetPhasePartMap
MonitorElement * GlobalApvCycleDBxTH2
void createModuleMEs(ModMEs &mod_single, uint32_t detid)
edm::ParameterSet Parameters
GenericTriggerEventFlag * genTriggerEventFlagPixelDCSfilter_
MonitorElement * bookMETrend(const char *, const char *)
void fillLayerMEs(LayerMEs &, ClusterProperties &cluster, float timeinorbit)
void fillME(MonitorElement *ME, float value1, float value2, float value3, float value4)
MonitorElement * NumberOfStripClus
edm::EDGetTokenT< EventWithHistory > historyProducerToken_
MonitorElement * GlobalMainDiagonalPosition
std::vector< uint32_t > ModulesToBeExcluded_
SiStripDCSStatus * dcsStatus_
GenericTriggerEventFlag * genTriggerEventFlagBPTXfilter_
void fillME(MonitorElement *ME, float value1)
SiStripMonitorCluster(const edm::ParameterSet &)
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
std::string HistoName
MonitorElement * StripNoise3Cycle
void fillME(MonitorElement *ME, float value1, float value2)
Pixel cluster – collection of neighboring pixels above threshold.
void createLayerMEs(std::string label, int ndets)
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > clusterProducerPixToken_
std::map< std::string, SubDetMEs > SubDetMEsMap
void fillME(MonitorElement *ME, float value1, float value2, float value3)
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterProducerStripToken_
edm::EDGetTokenT< APVCyclePhaseCollection > apvPhaseProducerToken_
GenericTriggerEventFlag * genTriggerEventFlagStripDCSfilter_
MonitorElement * BPTXrateTrend
void fillModuleMEs(ModMEs &mod_mes, ClusterProperties &cluster)
Definition: Run.h:41