File indexing completed on 2024-04-06 11:59:26
0001 #ifndef TkAlCaRecoProducer_AlcaBeamSpotProducer_h
0002 #define TkAlCaRecoProducer_AlcaBeamSpotProducer_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #include <string>
0017
0018 #include "FWCore/Framework/interface/Event.h"
0019 #include "FWCore/Framework/interface/Frameworkfwd.h"
0020 #include "FWCore/Framework/interface/one/EDProducer.h"
0021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0022 #include "RecoVertex/BeamSpotProducer/interface/BeamFitter.h"
0023
0024 class AlcaBeamSpotProducer
0025 : public edm::one::EDProducer<edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks> {
0026 public:
0027 explicit AlcaBeamSpotProducer(const edm::ParameterSet &);
0028 ~AlcaBeamSpotProducer() override;
0029
0030 private:
0031 void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, const edm::EventSetup &iSetup) final;
0032 void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, const edm::EventSetup &iSetup) final;
0033 void endLuminosityBlockProduce(edm::LuminosityBlock &lumiSeg, const edm::EventSetup &iSetup) final;
0034 void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) final;
0035
0036 int ftotalevents;
0037 int fitNLumi_;
0038 int resetFitNLumi_;
0039 int countEvt_;
0040 int countLumi_;
0041 int ftmprun0, ftmprun;
0042 int beginLumiOfBSFit_;
0043 int endLumiOfBSFit_;
0044 std::time_t refBStime[2];
0045
0046 bool write2DB_;
0047 bool runbeamwidthfit_;
0048 bool runallfitters_;
0049 double inputBeamWidth_;
0050
0051 BeamFitter *theBeamFitter;
0052 };
0053
0054 #endif