CMS 3D CMS Logo

MeasureLA.h
Go to the documentation of this file.
1 #ifndef CalibTracker_SiStripLorentzAngle_MeasureLA_h
2 #define CalibTracker_SiStripLorentzAngle_MeasureLA_h
3 
6 
11 
12 #include <memory>
13 
14 namespace sistrip {
15 
16 class MeasureLA : public edm::ESProducer {
17 
18  public:
19 
20  explicit MeasureLA(const edm::ParameterSet&);
21  std::shared_ptr<SiStripLorentzAngle> produce(const SiStripLorentzAngleRcd&);
22 
23  private:
24 
26  static std::string granularity(int32_t g) { switch(g) {
27  case LAYER: return "_layer";
28  case MODULE: return "_module";
29  case MODULESUMMARY: return "_moduleSummary";
30  } return "";};
31 
32  void store_calibrations();
34 
36  void process_reports() const;
37  template<class T>
38  void write_report_text(const std::string, const LA_Filler_Fitter::Method&, const std::map<T,LA_Filler_Fitter::Result>&) const;
41 
42  void calibrate(const std::pair<unsigned,LA_Filler_Fitter::Method>, LA_Filler_Fitter::Result&) const;
43  static std::pair<unsigned,LA_Filler_Fitter::Method> calibration_key(const std::string layer, const LA_Filler_Fitter::Method);
44  static std::pair<unsigned,LA_Filler_Fitter::Method> calibration_key(const uint32_t detid, const LA_Filler_Fitter::Method);
45 
46  const std::vector<std::string> inputFiles;
50  std::map<std::pair<uint32_t,LA_Filler_Fitter::Method>,float> slope, offset, error_scaling;
51  int32_t methods;
53  const float localybin;
54  const unsigned stripsperbin,maxEvents;
56 
57 };
58 
59 }
60 #endif
const edm::FileInPath fp_
Definition: MeasureLA.h:48
static std::pair< unsigned, LA_Filler_Fitter::Method > calibration_key(const std::string layer, const LA_Filler_Fitter::Method)
Definition: MeasureLA.cc:171
void calibrate(const std::pair< unsigned, LA_Filler_Fitter::Method >, LA_Filler_Fitter::Result &) const
Definition: MeasureLA.cc:165
const unsigned stripsperbin
Definition: MeasureLA.h:54
const edm::VParameterSet measurementPreferences
Definition: MeasureLA.h:49
std::vector< ParameterSet > VParameterSet
Definition: ParameterSet.h:33
const std::vector< std::string > inputFiles
Definition: MeasureLA.h:46
const unsigned maxEvents
Definition: MeasureLA.h:54
const float localybin
Definition: MeasureLA.h:53
void process_reports() const
Definition: MeasureLA.cc:87
std::map< std::pair< uint32_t, LA_Filler_Fitter::Method >, float > slope
Definition: MeasureLA.h:50
static std::string granularity(int32_t g)
Definition: MeasureLA.h:26
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 g
Definition: Activities.doc:4
sistrip classes
void store_methods_and_granularity(const edm::VParameterSet &)
Definition: MeasureLA.cc:11
const edm::VParameterSet calibrations
Definition: MeasureLA.h:49
MeasureLA(const edm::ParameterSet &)
Definition: MeasureLA.cc:19
const edm::VParameterSet reports
Definition: MeasureLA.h:49
const std::string inFileLocation
Definition: MeasureLA.h:47
void write_report_text_ms(const std::string, const LA_Filler_Fitter::Method) const
Definition: MeasureLA.cc:130
std::shared_ptr< SiStripLorentzAngle > produce(const SiStripLorentzAngleRcd &)
Definition: MeasureLA.cc:49
void store_calibrations()
Definition: MeasureLA.cc:147
void summarize_module_muH_byLayer()
Definition: MeasureLA.cc:64
std::map< std::pair< uint32_t, LA_Filler_Fitter::Method >, float > offset
Definition: MeasureLA.h:50
void write_report_plots(const std::string, const LA_Filler_Fitter::Method, const GRANULARITY) const
Definition: MeasureLA.cc:107
void write_report_text(const std::string, const LA_Filler_Fitter::Method &, const std::map< T, LA_Filler_Fitter::Result > &) const
Definition: MeasureLA.cc:117
std::map< std::pair< uint32_t, LA_Filler_Fitter::Method >, float > error_scaling
Definition: MeasureLA.h:50
Definition: Book.h:16