File indexing completed on 2024-09-07 04:35:38
0001 #ifndef CondFormats_EcalObjects_EcalTimeDependentCorrections_H
0002 #define CondFormats_EcalObjects_EcalTimeDependentCorrections_H
0003
0004
0005
0006
0007
0008 #include "CondFormats/Serialization/interface/Serializable.h"
0009
0010 #include "CondFormats/EcalObjects/interface/EcalCondObjectContainer.h"
0011 #include "DataFormats/Provenance/interface/Timestamp.h"
0012 #include <vector>
0013
0014 class EcalTimeDependentCorrections {
0015 public:
0016 struct Values {
0017 Values() : p1(0), p2(0), p3(0) {}
0018 float p1;
0019 float p2;
0020 float p3;
0021
0022 COND_SERIALIZABLE;
0023 };
0024 struct Times {
0025 Times() : t1(0), t2(0), t3(0) {}
0026 edm::Timestamp t1;
0027 edm::Timestamp t2;
0028 edm::Timestamp t3;
0029
0030 COND_SERIALIZABLE;
0031 };
0032
0033 typedef EcalCondObjectContainer<Values> EcalValueMap;
0034 typedef std::vector<Times> EcalTimeMap;
0035
0036 EcalTimeDependentCorrections() : time_map(92) {}
0037 ~EcalTimeDependentCorrections() {}
0038
0039 void setValue(uint32_t rawId, const Values& value) { value_map[rawId] = value; };
0040 const EcalValueMap& getValueMap() const { return value_map; }
0041
0042 void setTime(int hashedIndex, const Times& value) { time_map[hashedIndex] = value; };
0043 const EcalTimeMap& getTimeMap() const { return time_map; }
0044
0045 private:
0046 EcalValueMap value_map;
0047 EcalTimeMap time_map;
0048
0049 COND_SERIALIZABLE;
0050 };
0051
0052 #endif