File indexing completed on 2024-04-06 12:04:44
0001 #ifndef DATAFORMATS_METRECO_HALOCLUSTERCANDIDATEHCAL_H
0002 #define DATAFORMATS_METRECO_HALOCLUSTERCANDIDATEHCAL_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/GeometrySurface/interface/Cylinder.h"
0009 #include "DataFormats/GeometrySurface/interface/Plane.h"
0010 #include "DataFormats/GeometrySurface/interface/Cone.h"
0011 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0012 #include "DataFormats/GeometryVector/interface/GlobalVector.h"
0013 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0014 #include "DataFormats/GeometryVector/interface/LocalVector.h"
0015 #include "DataFormats/HcalRecHit/interface/HBHERecHit.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 HaloClusterCandidateHCAL {
0022 public:
0023 HaloClusterCandidateHCAL();
0024 ~HaloClusterCandidateHCAL() {}
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 bool getIsHaloFromPattern() const { return ishalofrompattern; }
0034 bool getIsHaloFromPattern_HLT() const { return ishalofrompattern_hlt; }
0035 double getEoverH() const { return eoverh; }
0036 double getEtStripPhiSeedPlus1() const { return etstrip_phiseedplus1; }
0037 double getEtStripPhiSeedMinus1() const { return etstrip_phiseedminus1; }
0038 edm::RefVector<HBHERecHitCollection> getBeamHaloRecHitsCandidates() const { return bhrhcandidates; }
0039
0040 int getNbTowersInEta() const { return nbtowersineta; }
0041 double getTimeDiscriminatorITBH() const { return timediscriminatoritbh; }
0042 double getTimeDiscriminatorOTBH() const { return timediscriminatorotbh; }
0043
0044 double getH1overH123() const { return h1overh123; }
0045 int getClusterSize() const { return clustersize; }
0046 double getTimeDiscriminator() const { return timediscriminator; }
0047
0048 void setClusterEt(double x) { et = x; }
0049 void setSeedEt(double x) { seed_et = x; }
0050 void setSeedEta(double x) { seed_eta = x; }
0051 void setSeedPhi(double x) { seed_phi = x; }
0052 void setSeedZ(double x) { seed_Z = x; }
0053 void setSeedR(double x) { seed_R = x; }
0054 void setSeedTime(double x) { seed_time = x; }
0055 void setIsHaloFromPattern(bool x) { ishalofrompattern = x; }
0056 void setIsHaloFromPattern_HLT(bool x) { ishalofrompattern_hlt = x; }
0057 void setEoverH(double x) { eoverh = x; }
0058 void setEtStripPhiSeedPlus1(double x) { etstrip_phiseedplus1 = x; }
0059 void setEtStripPhiSeedMinus1(double x) { etstrip_phiseedminus1 = x; }
0060 void setBeamHaloRecHitsCandidates(edm::RefVector<HBHERecHitCollection> x) { bhrhcandidates = x; }
0061
0062 void setNbTowersInEta(double x) { nbtowersineta = x; }
0063 void setTimeDiscriminatorITBH(double x) { timediscriminatoritbh = x; }
0064 void setTimeDiscriminatorOTBH(double x) { timediscriminatorotbh = x; }
0065
0066 void setH1overH123(double x) { h1overh123 = x; }
0067 void setClusterSize(int x) { clustersize = x; }
0068 void setTimeDiscriminator(double x) { timediscriminator = x; }
0069
0070 private:
0071 double et;
0072 double seed_et, seed_eta, seed_phi, seed_Z, seed_R, seed_time;
0073 bool ishalofrompattern;
0074 bool ishalofrompattern_hlt;
0075 double eoverh;
0076 double etstrip_phiseedplus1, etstrip_phiseedminus1;
0077
0078 int nbtowersineta;
0079 double timediscriminatoritbh, timediscriminatorotbh;
0080
0081 double h1overh123;
0082 int clustersize;
0083 double timediscriminator;
0084
0085 edm::RefVector<HBHERecHitCollection> bhrhcandidates;
0086 };
0087 typedef std::vector<HaloClusterCandidateHCAL> HaloClusterCandidateHCALCollection;
0088 }
0089 #endif