File indexing completed on 2024-04-06 12:02:13
0001 #ifndef HcalLutMetadata_h
0002 #define HcalLutMetadata_h
0003
0004
0005
0006
0007
0008
0009
0010 #include "CondFormats/Serialization/interface/Serializable.h"
0011
0012 #include "CondFormats/HcalObjects/interface/HcalCondObjectContainer.h"
0013 #include "CondFormats/HcalObjects/interface/HcalLutMetadatum.h"
0014
0015 class HcalLutMetadata : public HcalCondObjectContainer<HcalLutMetadatum> {
0016 public:
0017 #ifndef HCAL_COND_SUPPRESS_DEFAULT
0018 HcalLutMetadata() : HcalCondObjectContainer<HcalLutMetadatum>(nullptr) {}
0019 #endif
0020 HcalLutMetadata(const HcalTopology* topo) : HcalCondObjectContainer<HcalLutMetadatum>(topo) {}
0021
0022 std::string myname() const override { return (std::string) "HcalLutMetadata"; }
0023
0024 bool setRctLsb(float rctlsb);
0025 float getRctLsb() const { return mNonChannelData.mRctLsb; }
0026
0027 bool setNominalGain(float gain);
0028 float getNominalGain() const { return mNonChannelData.mNominalGain; }
0029
0030 class NonChannelData {
0031 friend class HcalLutMetadata;
0032
0033 public:
0034 NonChannelData() : mRctLsb(0.0), mNominalGain(0.0) {}
0035
0036 protected:
0037 float mRctLsb;
0038 float mNominalGain;
0039
0040 COND_SERIALIZABLE;
0041 };
0042
0043 protected:
0044 NonChannelData mNonChannelData;
0045
0046 COND_SERIALIZABLE;
0047 };
0048
0049 #endif