File indexing completed on 2024-04-06 12:04:44
0001 #ifndef DATAFORMATS_METRECO_HALOCLUSTERCANDIDATEECAL_H
0002 #define DATAFORMATS_METRECO_HALOCLUSTERCANDIDATEECAL_H
0003
0004 #include "DataFormats/DetId/interface/DetId.h"
0005 #include "DataFormats/EcalDetId/interface/EcalSubdetector.h"
0006 #include "DataFormats/EcalDetId/interface/EBDetId.h"
0007 #include "DataFormats/EcalDetId/interface/EEDetId.h"
0008 #include "DataFormats/HcalRecHit/interface/HBHERecHit.h"
0009 #include "DataFormats/GeometrySurface/interface/Cylinder.h"
0010 #include "DataFormats/GeometrySurface/interface/Plane.h"
0011 #include "DataFormats/GeometrySurface/interface/Cone.h"
0012 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0013 #include "DataFormats/GeometryVector/interface/GlobalVector.h"
0014 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0015 #include "DataFormats/GeometryVector/interface/LocalVector.h"
0016 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h"
0017 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0018 #include "DataFormats/Math/interface/deltaPhi.h"
0019
0020 namespace reco {
0021 class HaloClusterCandidateECAL {
0022 public:
0023 HaloClusterCandidateECAL();
0024 ~HaloClusterCandidateECAL() {}
0025
0026 double getClusterEt() const { return et; }
0027 double getSeedEt() const { return seed_et; }
0028 double getSeedEta() const { return seed_eta; }
0029 double getSeedPhi() const { return seed_phi; }
0030 double getSeedZ() const { return seed_Z; }
0031 double getSeedR() const { return seed_R; }
0032 double getSeedTime() const { return seed_time; }
0033 double getTimeDiscriminator() const { return timediscriminator; }
0034 bool getIsHaloFromPattern() const { return ishalofrompattern; }
0035 bool getIsHaloFromPattern_HLT() const { return ishalofrompattern_hlt; }
0036 const edm::RefVector<EcalRecHitCollection>& getBeamHaloRecHitsCandidates() const { return bhrhcandidates; }
0037
0038
0039 double getEtStripIPhiSeedPlus1() const { return etstrip_iphiseedplus1; }
0040 double getEtStripIPhiSeedMinus1() const { return etstrip_iphiseedminus1; }
0041 double getHoverE() const { return hovere; }
0042 int getNbofCrystalsInEta() const { return numberofcrystalsineta; }
0043
0044 double getH2overE() const { return h2overe; }
0045 int getNbEarlyCrystals() const { return nbearlycrystals; }
0046 int getNbLateCrystals() const { return nblatecrystals; }
0047 int getClusterSize() const { return clustersize; }
0048
0049 void setClusterEt(double x) { et = x; }
0050 void setSeedEt(double x) { seed_et = x; }
0051 void setSeedEta(double x) { seed_eta = x; }
0052 void setSeedPhi(double x) { seed_phi = x; }
0053 void setSeedZ(double x) { seed_Z = x; }
0054 void setSeedR(double x) { seed_R = x; }
0055 void setSeedTime(double x) { seed_time = x; }
0056 void setTimeDiscriminator(double x) { timediscriminator = x; }
0057 void setIsHaloFromPattern(bool x) { ishalofrompattern = x; }
0058 void setIsHaloFromPattern_HLT(bool x) { ishalofrompattern_hlt = x; }
0059 void setBeamHaloRecHitsCandidates(edm::RefVector<EcalRecHitCollection> x) { bhrhcandidates = x; }
0060
0061 void setEtStripIPhiSeedPlus1(double x) { etstrip_iphiseedplus1 = x; }
0062 void setEtStripIPhiSeedMinus1(double x) { etstrip_iphiseedminus1 = x; }
0063 void setHoverE(double x) { hovere = x; }
0064 void setNbofCrystalsInEta(double x) { numberofcrystalsineta = x; }
0065
0066 void setH2overE(double x) { h2overe = x; }
0067 void setNbEarlyCrystals(int x) { nbearlycrystals = x; }
0068 void setNbLateCrystals(int x) { nblatecrystals = x; }
0069 void setClusterSize(int x) { clustersize = x; }
0070
0071 private:
0072 double et;
0073 double seed_et, seed_eta, seed_phi, seed_Z, seed_R, seed_time;
0074 double timediscriminator;
0075 bool ishalofrompattern;
0076 bool ishalofrompattern_hlt;
0077
0078 double hovere;
0079 int numberofcrystalsineta;
0080 double etstrip_iphiseedplus1, etstrip_iphiseedminus1;
0081
0082 double h2overe;
0083 int nbearlycrystals, nblatecrystals, clustersize;
0084
0085 edm::RefVector<EcalRecHitCollection> bhrhcandidates;
0086 };
0087 typedef std::vector<HaloClusterCandidateECAL> HaloClusterCandidateECALCollection;
0088 }
0089 #endif