CMS 3D CMS Logo

CommissioningAlgorithm.h
Go to the documentation of this file.
1 #ifndef DQM_SiStripCommissioningAnalysis_CommissioningAlgorithm_H
2 #define DQM_SiStripCommissioningAnalysis_CommissioningAlgorithm_H
3 
4 #include <vector>
5 #include <string>
6 #include <cstdint>
7 
10 class TH1;
11 
18 public:
20 
22 
23  virtual ~CommissioningAlgorithm() { ; }
24 
25  typedef std::pair<TH1*, std::string> Histo;
26 
28  void analysis(const std::vector<TH1*>&);
29 
30 protected:
32  uint32_t extractFedKey(const TH1* const);
33 
35  virtual void extract(const std::vector<TH1*>&) = 0;
36 
38  virtual void analyse() = 0;
39 
41  inline CommissioningAnalysis* const anal() const;
42 
43 private:
46 };
47 
48 // ---------- inline methods ----------
49 
51 
52 #endif // DQM_SiStripCommissioningAnalysis_CommissioningAlgorithm_H
CommissioningAlgorithm::extractFedKey
uint32_t extractFedKey(const TH1 *const)
Definition: CommissioningAlgorithm.cc:29
CommissioningAlgorithm::anal_
CommissioningAnalysis * anal_
Definition: CommissioningAlgorithm.h:45
CommissioningAlgorithm::anal
CommissioningAnalysis *const anal() const
Definition: CommissioningAlgorithm.h:50
CommissioningAlgorithm::CommissioningAlgorithm
CommissioningAlgorithm()
Definition: CommissioningAlgorithm.cc:15
CommissioningAlgorithm::extract
virtual void extract(const std::vector< TH1 * > &)=0
CommissioningAnalysis
Abstract base for derived classes that provide analysis of commissioning histograms.
Definition: CommissioningAnalysis.h:18
CommissioningAlgorithm::analysis
void analysis(const std::vector< TH1 * > &)
Definition: CommissioningAlgorithm.cc:19
CommissioningAlgorithm
Definition: CommissioningAlgorithm.h:17
CommissioningAlgorithm::~CommissioningAlgorithm
virtual ~CommissioningAlgorithm()
Definition: CommissioningAlgorithm.h:23
CommissioningAlgorithm::analyse
virtual void analyse()=0
CommissioningAlgorithm::Histo
std::pair< TH1 *, std::string > Histo
Definition: CommissioningAlgorithm.h:25