File indexing completed on 2023-03-17 11:19:54
0001 #ifndef RecoLuminosity_LumiProducer_DIPLumiDetail_h
0002 #define RecoLuminosity_LumiProducer_DIPLumiDetail_h
0003 #include <iosfwd>
0004 #include <string>
0005 #include "RecoLuminosity/LumiProducer/interface/DIPLuminosityRcd.h"
0006 #include "FWCore/Framework/interface/data_default_record_trait.h"
0007 class DIPLumiDetail {
0008 public:
0009
0010 DIPLumiDetail();
0011 typedef std::pair<std::vector<float>::const_iterator, std::vector<float>::const_iterator> ValueRange;
0012
0013 virtual ~DIPLumiDetail() {}
0014 bool isNull() const;
0015 float lumiValue(unsigned int bx) const;
0016 ValueRange lumiValues() const;
0017 void filldata(std::vector<float>& lumivalues);
0018 void fillbxdata(unsigned int bxidx, float bxlumi);
0019 unsigned int fromRun() const;
0020 unsigned int fromLS() const;
0021 void setOrigin(unsigned int runnumber, unsigned int ls);
0022
0023 private:
0024 unsigned int m_runnum;
0025 unsigned int m_ls;
0026 std::vector<float> m_lumiValues;
0027 };
0028
0029 std::ostream& operator<<(std::ostream& s, const DIPLumiDetail&);
0030
0031 EVENTSETUP_DATA_DEFAULT_RECORD(DIPLumiDetail, DIPLuminosityRcd)
0032
0033 #endif