File indexing completed on 2024-04-06 12:22:57
0001 #ifndef RUNLIST_H
0002 #define RUNLIST_H
0003
0004 #include <stdexcept>
0005 #include <iostream>
0006
0007 #include "OnlineDB/EcalCondDB/interface/IIOV.h"
0008 #include "OnlineDB/EcalCondDB/interface/RunTag.h"
0009 #include "OnlineDB/EcalCondDB/interface/Tm.h"
0010 #include "OnlineDB/EcalCondDB/interface/RunIOV.h"
0011 #include "OnlineDB/EcalCondDB/interface/LocationDef.h"
0012 #include "OnlineDB/EcalCondDB/interface/RunTypeDef.h"
0013
0014 typedef int run_t;
0015
0016 class RunList : public IDBObject {
0017 public:
0018 friend class EcalCondDBInterface;
0019
0020 RunList();
0021 ~RunList() override;
0022
0023
0024
0025 void setRunTag(const RunTag& tag);
0026 RunTag getRunTag() const;
0027 std::vector<RunIOV> getRuns();
0028
0029
0030 void fetchRuns() noexcept(false);
0031 void fetchNonEmptyRuns() noexcept(false);
0032 void fetchNonEmptyGlobalRuns() noexcept(false);
0033 void fetchNonEmptyRuns(int min_run, int max_run) noexcept(false);
0034 void fetchNonEmptyGlobalRuns(int min_run, int max_run) noexcept(false);
0035 void fetchRuns(int min_run, int max_run) noexcept(false);
0036 void fetchRuns(int min_run, int max_run, bool withTriggers, bool withGlobalTriggers) noexcept(false);
0037 void fetchLastNRuns(int max_run, int n_runs) noexcept(false);
0038 void fetchRunsByLocation(int min_run, int max_run, const LocationDef& locDef) noexcept(false);
0039 void fetchGlobalRunsByLocation(int min_run, int max_run, const LocationDef& locDef) noexcept(false);
0040
0041 private:
0042
0043 std::vector<RunIOV> m_vec_runiov;
0044 RunTag m_runTag;
0045 };
0046
0047 #endif