00001 #ifndef HcalCovarianceMatrices_h 00002 #define HcalCovarianceMatrices_h 00003 00004 //#include "CondFormats/HcalObjects/interface/HcalCondObjectContainer.h" 00005 #include <iostream> 00006 #include <vector> 00007 #include <string> 00008 #include "DataFormats/DetId/interface/DetId.h" 00009 #include "DataFormats/HcalDetId/interface/HcalGenericDetId.h" 00010 #include "FWCore/Utilities/interface/Exception.h" 00011 #include "CondFormats/HcalObjects/interface/HcalCovarianceMatrix.h" 00012 00013 class HcalCovarianceMatrices//: public HcalCondObjectContainer<HcalCovarianceMatrix> 00014 { 00015 public: 00016 // HcalCovarianceMatrices():HcalCondObjectContainer<HcalCovarianceMatrix>() {} 00017 HcalCovarianceMatrices(); 00018 ~HcalCovarianceMatrices(); 00019 std::string myname() const {return (std::string)"HcalCovarianceMatrices";} 00020 const HcalCovarianceMatrix* getValues(DetId fId) const; 00021 const bool exists(DetId fId) const; 00022 bool addValues(const HcalCovarianceMatrix& myHcalCovarianceMatrix, bool h2mode_=false); 00023 std::vector<DetId> getAllChannels() const; 00024 00025 private: 00026 void initContainer(int container, bool h2mode_ = false); 00027 std::vector<HcalCovarianceMatrix> HBcontainer; 00028 std::vector<HcalCovarianceMatrix> HEcontainer; 00029 std::vector<HcalCovarianceMatrix> HOcontainer; 00030 std::vector<HcalCovarianceMatrix> HFcontainer; 00031 }; 00032 00033 #endif 00034