CMS 3D CMS Logo

MillePedeDQMModule.h
Go to the documentation of this file.
1 #ifndef Alignment_MillePedeAlignmentAlgorithm_MillePedeDQMModule_h
2 #define Alignment_MillePedeAlignmentAlgorithm_MillePedeDQMModule_h
3 
16 /*** system includes ***/
17 #include <array>
18 #include <memory>
19 
20 /*** core framework functionality ***/
28 
29 /*** DQM ***/
32 
33 /*** Records for ESWatcher ***/
37 
38 /*** MillePede ***/
40 
41 
42 
43 
45 
46  //========================== PUBLIC METHODS ==================================
47  public: //====================================================================
48 
50  ~MillePedeDQMModule() override;
51 
52  void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
53 
54  //========================= PRIVATE METHODS ==================================
55  private: //===================================================================
56 
57  void beginRun(const edm::Run&, const edm::EventSetup&) override;
58 
60 
61  void fillExpertHistos();
62 
64  const std::array<double,6>& cut,
65  const std::array<double,6>& sigCut,
66  const std::array<double,6>& maxMoveCut,
67  const std::array<double,6>& maxErrorCut,
68  const std::array<double,6>& obs,
69  const std::array<double,6>& obsErr);
70 
71  bool setupChanged(const edm::EventSetup&);
72  int getIndexFromString(const std::string& alignableId);
73 
74  //========================== PRIVATE DATA ====================================
75  //============================================================================
76 
78  std::unique_ptr<AlignableTracker> tracker_;
79  std::unique_ptr<MillePedeFileReader> mpReader_;
80 
84 
85  // Histograms
92 
93 };
94 
95 // define this as a plug-in
97 
98 #endif /* Alignment_MillePedeAlignmentAlgorithm_MillePedeDQMModule_h */
const edm::ParameterSet mpReaderConfig_
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
bool setupChanged(const edm::EventSetup &)
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
MonitorElement * h_zPos
edm::ESWatcher< IdealGeometryRecord > watchIdealGeometryRcd_
MillePedeDQMModule(const edm::ParameterSet &)
void bookHistograms(DQMStore::IBooker &)
MonitorElement * h_xPos
void fillExpertHisto(MonitorElement *histo, const std::array< double, 6 > &cut, const std::array< double, 6 > &sigCut, const std::array< double, 6 > &maxMoveCut, const std::array< double, 6 > &maxErrorCut, const std::array< double, 6 > &obs, const std::array< double, 6 > &obsErr)
void beginRun(const edm::Run &, const edm::EventSetup &) override
MonitorElement * h_yPos
edm::ESWatcher< TrackerTopologyRcd > watchTrackerTopologyRcd_
edm::ESWatcher< PTrackerParametersRcd > watchPTrackerParametersRcd_
MonitorElement * h_xRot
std::unique_ptr< AlignableTracker > tracker_
std::unique_ptr< MillePedeFileReader > mpReader_
int getIndexFromString(const std::string &alignableId)
MonitorElement * h_zRot
~MillePedeDQMModule() override
MonitorElement * h_yRot
Definition: Run.h:43