Go to the documentation of this file.00001 #ifndef RUNLIST_H
00002 #define RUNLIST_H
00003
00004 #include <stdexcept>
00005 #include <iostream>
00006
00007 #include "OnlineDB/EcalCondDB/interface/IIOV.h"
00008 #include "OnlineDB/EcalCondDB/interface/RunTag.h"
00009 #include "OnlineDB/EcalCondDB/interface/Tm.h"
00010 #include "OnlineDB/EcalCondDB/interface/RunIOV.h"
00011 #include "OnlineDB/EcalCondDB/interface/LocationDef.h"
00012 #include "OnlineDB/EcalCondDB/interface/RunTypeDef.h"
00013
00014 typedef int run_t;
00015
00016 class RunList : public IDBObject {
00017 public:
00018 friend class EcalCondDBInterface;
00019
00020 RunList();
00021 ~RunList();
00022
00023
00024
00025 void setRunTag(RunTag tag);
00026 RunTag getRunTag() const;
00027 std::vector<RunIOV> getRuns() ;
00028
00029
00030 void fetchRuns() throw(std::runtime_error);
00031 void fetchNonEmptyRuns() throw(std::runtime_error);
00032 void fetchNonEmptyGlobalRuns() throw(std::runtime_error);
00033 void fetchNonEmptyRuns(int min_run, int max_run) throw(std::runtime_error);
00034 void fetchNonEmptyGlobalRuns(int min_run, int max_run) throw(std::runtime_error);
00035 void fetchRuns(int min_run, int max_run) throw(std::runtime_error);
00036 void fetchRuns(int min_run, int max_run, bool withTriggers, bool withGlobalTriggers) throw(std::runtime_error);
00037 void fetchLastNRuns( int max_run, int n_runs ) throw(std::runtime_error);
00038 void fetchRunsByLocation (int min_run, int max_run, const LocationDef locDef ) throw(std::runtime_error);
00039 void fetchGlobalRunsByLocation(int min_run, int max_run, const LocationDef locDef ) throw(std::runtime_error);
00040
00041
00042 private:
00043
00044 std::vector<RunIOV> m_vec_runiov;
00045 RunTag m_runTag;
00046
00047 };
00048
00049 #endif