CMS 3D CMS Logo

HFClusterAlgo.h
Go to the documentation of this file.
1 #ifndef RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H
2 #define RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H 1
3 
11 
16 //$Id:HFClusterAlgo.h,v 1.2 2007/09/19 09:52 K. Klapoetke Minnesota
17 
19 public:
20  HFClusterAlgo();
21 
22  void setup(double minTowerEnergy,
23  double seedThreshold,
24  double maximumSL,
25  double m_maximumRenergy,
26  bool usePMTflag,
27  bool usePulseflag,
28  bool forcePulseFlagMC,
29  int correctionSet);
30 
31  void isMC(bool isMC) { m_isMC = isMC; }
32 
34  void clusterize(const HFRecHitCollection& hf,
35  const CaloGeometry& geom,
37  reco::SuperClusterCollection& SuperClusters);
38 
39  void resetForRun();
40 
41 private:
42  friend class CompareHFCompleteHitET;
43  friend class CompareHFCore;
44 
48  bool m_isMC;
50  std::vector<double> m_cutByEta;
51  std::vector<double> m_correctionByEta;
52  std::vector<double> m_seedmnEta;
53  std::vector<double> m_seedMXeta;
54  std::vector<double> m_seedmnPhi;
55  std::vector<double> m_seedMXphi;
56  struct HFCompleteHit {
58  double energy, et;
59  };
60  bool isPMTHit(const HFRecHit& hfr);
61  bool makeCluster(const HcalDetId& seedid,
62  const HFRecHitCollection& hf,
63  const CaloGeometry* geom,
64  reco::HFEMClusterShape& clusShp,
65  reco::SuperCluster& SClus);
66 };
67 
68 #endif
HFClusterAlgo::HFCompleteHit::energy
double energy
Definition: HFClusterAlgo.h:58
HFClusterAlgo::m_seedmnPhi
std::vector< double > m_seedmnPhi
Definition: HFClusterAlgo.h:54
HFEMClusterShapeAssociation.h
HFClusterAlgo::clusterize
void clusterize(const HFRecHitCollection &hf, const CaloGeometry &geom, reco::HFEMClusterShapeCollection &clusters, reco::SuperClusterCollection &SuperClusters)
Definition: HFClusterAlgo.cc:86
reco::SuperCluster
Definition: SuperCluster.h:18
hfClusterShapes_cfi.forcePulseFlagMC
forcePulseFlagMC
Definition: hfClusterShapes_cfi.py:11
reco::HFEMClusterShapeCollection
std::vector< HFEMClusterShape > HFEMClusterShapeCollection
Definition: HFEMClusterShapeFwd.h:8
HFClusterAlgo::m_seedmnEta
std::vector< double > m_seedmnEta
Definition: HFClusterAlgo.h:52
HFClusterAlgo::m_maximumRenergy
double m_maximumRenergy
Definition: HFClusterAlgo.h:45
HFClusterAlgo::HFCompleteHit
Definition: HFClusterAlgo.h:56
edm::SortedCollection
Definition: SortedCollection.h:49
HFClusterAlgo::m_seedMXphi
std::vector< double > m_seedMXphi
Definition: HFClusterAlgo.h:55
HFClusterAlgo::m_isMC
bool m_isMC
Definition: HFClusterAlgo.h:48
HFClusterAlgo::m_correctionByEta
std::vector< double > m_correctionByEta
Definition: HFClusterAlgo.h:51
reco::SuperClusterCollection
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
Definition: SuperClusterFwd.h:9
HFClusterAlgo::m_minTowerEnergy
double m_minTowerEnergy
Definition: HFClusterAlgo.h:45
CaloGeometry
Definition: CaloGeometry.h:21
reco::HFEMClusterShape
Definition: HFEMClusterShape.h:20
photonIsolationHIProducer_cfi.hf
hf
Definition: photonIsolationHIProducer_cfi.py:9
HFClusterAlgo::m_seedThreshold
double m_seedThreshold
Definition: HFClusterAlgo.h:45
HFRecHit
Definition: HFRecHit.h:11
HFClusterAlgo::makeCluster
bool makeCluster(const HcalDetId &seedid, const HFRecHitCollection &hf, const CaloGeometry *geom, reco::HFEMClusterShape &clusShp, reco::SuperCluster &SClus)
Definition: HFClusterAlgo.cc:193
HFClusterAlgo::isPMTHit
bool isPMTHit(const HFRecHit &hfr)
Definition: HFClusterAlgo.cc:389
relativeConstraints.geom
geom
Definition: relativeConstraints.py:72
HFClusterAlgo::m_seedMXeta
std::vector< double > m_seedMXeta
Definition: HFClusterAlgo.h:53
HFClusterAlgo::setup
void setup(double minTowerEnergy, double seedThreshold, double maximumSL, double m_maximumRenergy, bool usePMTflag, bool usePulseflag, bool forcePulseFlagMC, int correctionSet)
Definition: HFClusterAlgo.cc:37
HFClusterAlgo::HFClusterAlgo
HFClusterAlgo()
Definition: HFClusterAlgo.cc:16
hfClusterShapes_cfi.maximumSL
maximumSL
Definition: hfClusterShapes_cfi.py:8
CompareHFCore
Definition: HFClusterAlgo.cc:27
bsc_activity_cfg.clusters
clusters
Definition: bsc_activity_cfg.py:36
HFClusterAlgo::resetForRun
void resetForRun()
Definition: HFClusterAlgo.cc:400
HcalDetId
Definition: HcalDetId.h:12
HFClusterAlgo::m_maximumSL
double m_maximumSL
Definition: HFClusterAlgo.h:45
hfClusterShapes_cfi.minTowerEnergy
minTowerEnergy
Definition: hfClusterShapes_cfi.py:6
HFClusterAlgo::m_usePMTFlag
bool m_usePMTFlag
Definition: HFClusterAlgo.h:46
CompareHFCompleteHitET
Definition: HFClusterAlgo.cc:20
HFClusterAlgo::HFCompleteHit::et
double et
Definition: HFClusterAlgo.h:58
HFClusterAlgo
Definition: HFClusterAlgo.h:18
HFClusterAlgo::m_correctionSet
int m_correctionSet
Definition: HFClusterAlgo.h:49
SuperClusterFwd.h
SuperCluster.h
CaloGeometry.h
HFClusterAlgo::m_cutByEta
std::vector< double > m_cutByEta
Definition: HFClusterAlgo.h:50
HcalRecHitCollections.h
HFClusterAlgo::m_usePulseFlag
bool m_usePulseFlag
Definition: HFClusterAlgo.h:47
HFClusterAlgo::isMC
void isMC(bool isMC)
Definition: HFClusterAlgo.h:31
HFClusterAlgo::HFCompleteHit::id
HcalDetId id
Definition: HFClusterAlgo.h:57
HFEMClusterShape.h
HFClusterAlgo::m_forcePulseFlagMC
bool m_forcePulseFlagMC
Definition: HFClusterAlgo.h:47