File indexing completed on 2024-04-06 12:22:57
0001 #ifndef RUNSEQDEF_H
0002 #define RUNSEQDEF_H
0003
0004 #include <string>
0005 #include <stdexcept>
0006
0007 #include "OnlineDB/EcalCondDB/interface/IDef.h"
0008 #include "OnlineDB/EcalCondDB/interface/RunTypeDef.h"
0009
0010
0011
0012
0013 class RunSeqDef : public IDef {
0014 public:
0015 friend class ODRunConfigSeqInfo;
0016 friend class EcalCondDBInterface;
0017
0018 RunSeqDef();
0019 ~RunSeqDef() override;
0020
0021
0022 std::string getRunSeq() const;
0023 void setRunSeq(std::string runseq);
0024
0025 RunTypeDef getRunTypeDef() const;
0026 void setRunTypeDef(const RunTypeDef& runTypeDef);
0027
0028
0029 int fetchID() noexcept(false) override;
0030 void setByID(int id) noexcept(false) override;
0031
0032
0033 inline bool operator==(const RunSeqDef& t) const { return m_runSeq == t.m_runSeq; }
0034 inline bool operator!=(const RunSeqDef& t) const { return m_runSeq != t.m_runSeq; }
0035
0036 protected:
0037
0038 std::string m_runSeq;
0039 RunTypeDef m_runType;
0040
0041 int writeDB() noexcept(false);
0042
0043 void fetchAllDefs(std::vector<RunSeqDef>* fillVec) noexcept(false);
0044 };
0045
0046 #endif