File indexing completed on 2024-04-06 12:25:39
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef __EcalCleaningAlgo_h_
0010 #define __EcalCleaningAlgo_h_
0011
0012 #include "FWCore/Framework/interface/Frameworkfwd.h"
0013 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0014 #include "DataFormats/EcalRecHit/interface/EcalRecHit.h"
0015 #include <vector>
0016
0017 class DetId;
0018
0019 class EcalCleaningAlgo {
0020 public:
0021 EcalCleaningAlgo(const edm::ParameterSet& p);
0022
0023
0024
0025
0026
0027 EcalRecHit::Flags checkTopology(const DetId& id, const EcalRecHitCollection& rhs);
0028
0029 void setFlags(EcalRecHitCollection& rhs);
0030
0031 private:
0032
0033 float e4e1(const DetId& id, const EcalRecHitCollection& rhs);
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043 float e6e2(const DetId& id, const EcalRecHitCollection& rhs);
0044
0045 float recHitE(const DetId id, const EcalRecHitCollection& recHits, bool useTimingInfo);
0046
0047
0048 bool isNearCrack(const DetId& detid);
0049
0050
0051 const std::vector<DetId> neighbours(const DetId& id);
0052
0053
0054 float ignoreOutOfTimeThresh_;
0055
0056
0057
0058 float cThreshold_barrel_;
0059 float cThreshold_endcap_;
0060 float e4e1_a_barrel_;
0061 float e4e1_b_barrel_;
0062 float e4e1_a_endcap_;
0063 float e4e1_b_endcap_;
0064
0065 float e4e1Treshold_barrel_;
0066 float e4e1Treshold_endcap_;
0067 float tightenCrack_e1_single_;
0068 float tightenCrack_e4e1_single_;
0069 float cThreshold_double_;
0070 float tightenCrack_e1_double_;
0071 float tightenCrack_e6e2_double_;
0072 float e6e2thresh_;
0073 };
0074
0075 #endif
0076
0077
0078
0079
0080
0081