CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_2_9_HLT1_bphpatch4/src/RecoLocalCalo/EcalRecAlgos/interface/EcalSeverityLevelAlgo.h

Go to the documentation of this file.
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 "CondFormats/EcalObjects/interface/EcalChannelStatus.h"
00016 
00017 
00018 #include <vector>
00019 
00031 class EcalRecHit;
00032 class DetId;
00033 
00034 
00035 class  EcalSeverityLevelAlgo{
00036 
00037 
00038 public:
00039 
00048   enum EcalSeverityLevel { kGood=0, kProblematic, kRecovered, kTime, kWeird, kBad };
00049 
00050   explicit EcalSeverityLevelAlgo(const edm::ParameterSet& p);
00051 
00052 
00054 
00057   EcalSeverityLevel severityLevel(const DetId& id, 
00058                                   const EcalRecHitCollection& rhs) const;
00059 
00060 
00062   EcalSeverityLevel severityLevel(const EcalRecHit& rh) const;
00063 
00064 
00066   void setChannelStatus(const EcalChannelStatus& chs){chStatus_=&chs;}
00067 
00068 private:
00069 
00070  
00072 
00075   std::vector<uint32_t> flagMask_;
00076   
00077 
00079 
00082   std::vector<uint32_t> dbstatusMask_;
00083 
00084 
00086   float timeThresh_;
00087 
00088   const EcalChannelStatus * chStatus_;
00089 };
00090 
00091 
00092 #endif // __EcalSeverityLevelAlgo_h_
00093 
00094 // Configure (x)emacs for this file ...
00095 // Local Variables:
00096 // mode:c++
00097 // compile-command: "cd ..; scram b -k"
00098 // End: