CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HFClusterAlgo.h
Go to the documentation of this file.
1 #ifndef RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H
2 #define RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H 1
3 
13 #include <map>
14 #include <list>
15 
20 //$Id:HFClusterAlgo.h,v 1.2 2007/09/19 09:52 K. Klapoetke Minnesota
21 
23 public:
24  HFClusterAlgo();
25 
26  void setup(double minTowerEnergy, double seedThreshold,double maximumSL,double m_maximumRenergy,bool usePMTflag,bool usePulseflag, bool forcePulseFlagMC, int correctionSet);
27 
28  void isMC(bool isMC) { m_isMC=isMC; }
29 
31  void clusterize(const HFRecHitCollection& hf,
32  const CaloGeometry& geom,
34  reco::SuperClusterCollection& SuperClusters);
35 
36 
37 private:
38  friend class CompareHFCompleteHitET;
39  friend class CompareHFCore;
40 
44  bool m_isMC;
46  std::vector<double> m_cutByEta;
47  std::vector<double> m_correctionByEta;
48 
49  struct HFCompleteHit {
51  double energy, et;
52  };
53  bool isPMTHit(const HFRecHit& hfr);
54  bool makeCluster(const HcalDetId& seedid,
55  const HFRecHitCollection& hf,
56  const CaloGeometry& geom,
57  reco::HFEMClusterShape& clusShp,
58  reco::SuperCluster& SClus);
59 };
60 
61 #endif
double m_minTowerEnergy
Definition: HFClusterAlgo.h:41
void clusterize(const HFRecHitCollection &hf, const CaloGeometry &geom, reco::HFEMClusterShapeCollection &clusters, reco::SuperClusterCollection &SuperClusters)
double m_maximumRenergy
Definition: HFClusterAlgo.h:41
bool m_forcePulseFlagMC
Definition: HFClusterAlgo.h:43
std::vector< double > m_cutByEta
Definition: HFClusterAlgo.h:46
double m_maximumSL
Definition: HFClusterAlgo.h:41
std::vector< double > m_correctionByEta
Definition: HFClusterAlgo.h:47
std::vector< HFEMClusterShape > HFEMClusterShapeCollection
bool makeCluster(const HcalDetId &seedid, const HFRecHitCollection &hf, const CaloGeometry &geom, reco::HFEMClusterShape &clusShp, reco::SuperCluster &SClus)
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
void isMC(bool isMC)
Definition: HFClusterAlgo.h:28
double m_seedThreshold
Definition: HFClusterAlgo.h:41
bool isPMTHit(const HFRecHit &hfr)
void setup(double minTowerEnergy, double seedThreshold, double maximumSL, double m_maximumRenergy, bool usePMTflag, bool usePulseflag, bool forcePulseFlagMC, int correctionSet)