Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:22

0001 #ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2SpikeTagger_h
0002 #define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBPhase2SpikeTagger_h
0003 
0004 #include "DataFormats/EcalDigi/interface/EcalLiteDTUSample.h"
0005 #include "DataFormats/EcalDigi/interface/EcalDigiCollections.h"
0006 #include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h"
0007 #include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGLinearizationConst.h"
0008 #include "CondFormats/EcalObjects/interface/EcalEBPhase2TPGPedestals.h"
0009 
0010 #include "CondFormats/EcalObjects/interface/EcalTPGCrystalStatus.h"
0011 
0012 #include <vector>
0013 
0014 /** \class EcalEBPhase2SpikeTagger
0015    Tags spikes on a channel basis
0016 */
0017 
0018 class EcalEBPhase2SpikeTagger {
0019 private:
0020   bool debug_;
0021   const EcalLiteDTUPedestals *peds_;
0022   const EcalEBPhase2TPGLinearizationConstant *linConsts_;
0023   const EcalTPGCrystalStatusCode *badXStatus_;
0024 
0025 public:
0026   EcalEBPhase2SpikeTagger(bool debug);
0027   virtual ~EcalEBPhase2SpikeTagger();
0028 
0029   bool process(const std::vector<int> &linInput);
0030   void setParameters(EBDetId id,
0031                      const EcalLiteDTUPedestalsMap *peds,
0032                      const EcalEBPhase2TPGLinearizationConstMap *ecaltplin,
0033                      const EcalTPGCrystalStatus *ecaltpBadX);
0034 };
0035 
0036 #endif