File indexing completed on 2023-03-17 11:15:05
0001 #ifndef MONRUNLIST_H
0002 #define MONRUNLIST_H
0003
0004 #include <stdexcept>
0005 #include <iostream>
0006
0007 #include "OnlineDB/EcalCondDB/interface/IIOV.h"
0008 #include "OnlineDB/EcalCondDB/interface/MonRunTag.h"
0009 #include "OnlineDB/EcalCondDB/interface/RunTag.h"
0010 #include "OnlineDB/EcalCondDB/interface/Tm.h"
0011 #include "OnlineDB/EcalCondDB/interface/RunIOV.h"
0012 #include "OnlineDB/EcalCondDB/interface/MonRunIOV.h"
0013
0014 typedef int run_t;
0015
0016 class MonRunList : public IDBObject {
0017 public:
0018 friend class EcalCondDBInterface;
0019
0020 MonRunList();
0021 ~MonRunList() override;
0022
0023
0024
0025 void setRunTag(const RunTag& tag);
0026 RunTag getRunTag() const;
0027 void setMonRunTag(const MonRunTag& tag);
0028 MonRunTag getMonRunTag() const;
0029 std::vector<MonRunIOV> getRuns();
0030
0031
0032 void fetchRuns() noexcept(false);
0033 void fetchRuns(int min_run, int max_run) noexcept(false);
0034 void fetchLastNRuns(int max_run, int n_runs) noexcept(false);
0035
0036 private:
0037
0038 std::vector<MonRunIOV> m_vec_monruniov;
0039 RunTag m_runTag;
0040 MonRunTag m_monrunTag;
0041 };
0042
0043 #endif