00001 #ifndef HcalLutMetadata_h 00002 #define HcalLutMetadata_h 00003 00004 /* 00005 \class HcalLutMetadata 00006 \author Gena Kukartsev 17 Sep 2009 00007 POOL object to store Hcal trigger LUT channel metadata 00008 */ 00009 00010 #include "CondFormats/HcalObjects/interface/HcalCondObjectContainer.h" 00011 #include "CondFormats/HcalObjects/interface/HcalLutMetadatum.h" 00012 00013 class HcalLutMetadata: public HcalCondObjectContainer<HcalLutMetadatum> 00014 { 00015 public: 00016 #ifndef HCAL_COND_SUPPRESS_DEFAULT 00017 HcalLutMetadata() : HcalCondObjectContainer<HcalLutMetadatum>(0){} 00018 #endif 00019 HcalLutMetadata(const HcalTopology* topo) : HcalCondObjectContainer<HcalLutMetadatum>(topo){} 00020 00021 std::string myname() const {return (std::string)"HcalLutMetadata";} 00022 00023 bool setRctLsb(float rctlsb); 00024 float getRctLsb() const {return mNonChannelData.mRctLsb;} 00025 00026 bool setNominalGain(float gain); 00027 float getNominalGain() const {return mNonChannelData.mNominalGain;} 00028 00029 class NonChannelData{ 00030 friend class HcalLutMetadata; 00031 public: 00032 NonChannelData(): 00033 mRctLsb(0.0), 00034 mNominalGain(0.0){} 00035 00036 protected: 00037 float mRctLsb; 00038 float mNominalGain; 00039 }; 00040 00041 protected: 00042 NonChannelData mNonChannelData; 00043 }; 00044 00045 #endif