00001 00010 #ifndef __EcalSeverityLevelAlgo_h_ 00011 #define __EcalSeverityLevelAlgo_h_ 00012 00013 #include "FWCore/Framework/interface/Frameworkfwd.h" 00014 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" 00015 #include "DataFormats/EcalRecHit/interface/EcalSeverityLevel.h" 00016 #include "CondFormats/EcalObjects/interface/EcalChannelStatus.h" 00017 00018 00019 #include <vector> 00020 00032 class EcalRecHit; 00033 class DetId; 00034 00035 00036 class EcalSeverityLevelAlgo{ 00037 00038 00039 public: 00040 00041 00042 explicit EcalSeverityLevelAlgo(const edm::ParameterSet& p); 00043 00044 00046 00049 EcalSeverityLevel::SeverityLevel severityLevel(const DetId& id, 00050 const EcalRecHitCollection& rhs) const; 00051 00052 00054 EcalSeverityLevel::SeverityLevel severityLevel(const EcalRecHit& rh) const; 00055 00056 00058 void setChannelStatus(const EcalChannelStatus& chs){chStatus_=&chs;} 00059 00060 private: 00061 00062 00064 00067 std::vector<uint32_t> flagMask_; 00068 00069 00071 00074 std::vector<uint32_t> dbstatusMask_; 00075 00076 00078 float timeThresh_; 00079 00080 const EcalChannelStatus * chStatus_; 00081 }; 00082 00083 00084 #endif // __EcalSeverityLevelAlgo_h_ 00085 00086 // Configure (x)emacs for this file ... 00087 // Local Variables: 00088 // mode:c++ 00089 // compile-command: "cd ..; scram b -k" 00090 // End: