CMS 3D CMS Logo

SiStripGainCosmicCalculator.h
Go to the documentation of this file.
1 #ifndef CalibTracker_SiStripChannelGain_SiStripGainCosmicCalculator_h
2 #define CalibTracker_SiStripChannelGain_SiStripGainCosmicCalculator_h
3 // -*- C++ -*-
4 // Package: SiStripApvGainCalculator
5 // Class: SiStripApvGainCalculator
10 // Original Author: Dorian Kcira, Pierre Rodeghiero
11 // Created: Mon Nov 20 10:04:31 CET 2006
14 #include <vector>
15 #include "TF1.h"
16 #include "TH1F.h"
17 #include "TObjArray.h"
18 #include "TFile.h"
19 #include "TString.h"
20 #include <fstream>
21 #include <sstream>
22 
23 class TrackerTopology;
24 
25 class SiStripGainCosmicCalculator : public ConditionDBWriter<SiStripApvGain> {
26 public:
29 private:
30  void algoAnalyze(const edm::Event &, const edm::EventSetup &);
31  void algoBeginJob(const edm::EventSetup&);
32  void algoEndJob();
34 private:
35  std::pair<double,double> getPeakOfLandau( TH1F * inputHisto );
36  double moduleWidth(const uint32_t detid, const edm::EventSetup* iSetup);
37  double moduleThickness(const uint32_t detid, const edm::EventSetup* iSetup);
38 private:
41  //
42  TObjArray * HlistAPVPairs;
43  TObjArray * HlistOtherHistos;
46  std::map<uint32_t, double> thickness_map; // map of detector id to respective thickness
47  std::vector<uint32_t> SelectedDetIds;
48  std::vector<uint32_t> detModulesToBeExcluded;
50  unsigned int MinNrEntries;
53  TString outputFileName ;
56 };
57 #endif
std::vector< uint32_t > SelectedDetIds
double moduleThickness(const uint32_t detid, const edm::EventSetup *iSetup)
const edm::EventSetup * eventSetupCopy_
double moduleWidth(const uint32_t detid, const edm::EventSetup *iSetup)
std::pair< double, double > getPeakOfLandau(TH1F *inputHisto)
void algoBeginJob(const edm::EventSetup &)
SiStripGainCosmicCalculator(const edm::ParameterSet &)
std::map< uint32_t, double > thickness_map
std::vector< uint32_t > detModulesToBeExcluded
void algoAnalyze(const edm::Event &, const edm::EventSetup &)