CMS 3D CMS Logo

AlcaBeamMonitor.h
Go to the documentation of this file.
1 #ifndef DQM_BeamMonitor_AlcaBeamMonitor_h
2 #define DQM_BeamMonitor_AlcaBeamMonitor_h
3 
9 // C++
10 #include <map>
11 #include <vector>
12 #include <string>
13 // CMS
24 
25 class BeamFitter;
26 class PVFitter;
27 
29  public:
31  ~AlcaBeamMonitor() override;
32 
33  protected:
34 
35  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
36  void analyze (const edm::Event& iEvent, const edm::EventSetup& iSetup) override;
37  void beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& iSetup) override;
38  void endLuminosityBlock (const edm::LuminosityBlock& iLumi, const edm::EventSetup& iSetup) override;
39 
40  private:
41  //Typedefs
42  // BF,BS...
43  typedef std::map<std::string,reco::BeamSpot> BeamSpotContainer;
44  // x,y,z,sigmax(y,z)... [run,lumi] Histo name
45  typedef std::map<std::string,std::map<std::string,std::map<std::string,MonitorElement*> > > HistosContainer;
46  // x,y,z,sigmax(y,z)... [run,lumi] Histo name
47  typedef std::map<std::string,std::map<std::string,std::map<std::string,int> > > PositionContainer;
48 
49  //Parameters
56 
57  //Service variables
61 
62  // MonitorElements:
66 
67  //Containers
68  BeamSpotContainer beamSpotsMap_;
69  HistosContainer histosMap_;
70  PositionContainer positionsMap_;
71  std::vector<std::string> varNamesV_; //x,y,z,sigmax(y,z)
72  std::multimap<std::string,std::string> histoByCategoryNames_; //run, lumi
73  std::vector<reco::VertexCollection> vertices_;
74 
75 };
76 
77 #endif
MonitorElement * hD0Phi0_
edm::EDGetTokenT< reco::TrackCollection > trackLabel_
MonitorElement * hDxyBS_
void endLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &iSetup) override
edm::EDGetTokenT< reco::VertexCollection > primaryVertexLabel_
PositionContainer positionsMap_
void beginLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &iSetup) override
edm::InputTag beamSpotLabel_
std::vector< std::string > varNamesV_
int iEvent
Definition: GenABIO.cc:230
AlcaBeamMonitor(const edm::ParameterSet &)
edm::EDGetTokenT< reco::BeamSpot > scalerLabel_
std::map< std::string, std::map< std::string, std::map< std::string, int > > > PositionContainer
BeamSpotContainer beamSpotsMap_
BeamFitter * theBeamFitter_
std::map< std::string, reco::BeamSpot > BeamSpotContainer
PVFitter * thePVFitter_
std::multimap< std::string, std::string > histoByCategoryNames_
std::map< std::string, std::map< std::string, std::map< std::string, MonitorElement * > > > HistosContainer
HistosContainer histosMap_
~AlcaBeamMonitor() override
std::string monitorName_
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) override
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
edm::ParameterSet parameters_
MonitorElement * theValuesContainer_
Definition: Run.h:43
std::vector< reco::VertexCollection > vertices_