Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
RecoEgamma
EgammaHFProducers
interface
HFClusterAlgo.h
Go to the documentation of this file.
1
#ifndef RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H
2
#define RECOLOCALCALO_HFCLUSTERPRODUCER_HFCLUSTERALGO_H 1
3
4
#include "
DataFormats/HcalRecHit/interface/HcalRecHitCollections.h
"
5
#include "
Geometry/CaloGeometry/interface/CaloGeometry.h
"
6
#include "
DataFormats/EgammaReco/interface/HFEMClusterShape.h
"
7
#include "
DataFormats/EgammaReco/interface/BasicCluster.h
"
8
#include "
DataFormats/EgammaReco/interface/SuperCluster.h
"
9
#include "
DataFormats/EgammaReco/interface/HFEMClusterShapeAssociation.h
"
10
#include "
DataFormats/EgammaReco/interface/HFEMClusterShape.h
"
11
#include "
DataFormats/EgammaReco/interface/BasicClusterFwd.h
"
12
#include "
DataFormats/EgammaReco/interface/SuperClusterFwd.h
"
13
#include <map>
14
#include <list>
15
20
//$Id:HFClusterAlgo.h,v 1.2 2007/09/19 09:52 K. Klapoetke Minnesota
21
22
class
HFClusterAlgo
{
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
,
33
reco::HFEMClusterShapeCollection
& clusters,
34
reco::SuperClusterCollection
& SuperClusters);
35
36
37
private
:
38
friend
class
CompareHFCompleteHitET
;
39
friend
class
CompareHFCore
;
40
41
double
m_minTowerEnergy
,
m_seedThreshold
,
m_maximumSL
,
m_maximumRenergy
;
42
bool
m_usePMTFlag
;
43
bool
m_usePulseFlag
,
m_forcePulseFlagMC
;
44
bool
m_isMC
;
45
int
m_correctionSet
;
46
std::vector<double>
m_cutByEta
;
47
std::vector<double>
m_correctionByEta
;
48
49
struct
HFCompleteHit
{
50
HcalDetId
id
;
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
HFClusterAlgo::m_minTowerEnergy
double m_minTowerEnergy
Definition:
HFClusterAlgo.h:41
HFClusterAlgo::clusterize
void clusterize(const HFRecHitCollection &hf, const CaloGeometry &geom, reco::HFEMClusterShapeCollection &clusters, reco::SuperClusterCollection &SuperClusters)
Definition:
HFClusterAlgo.cc:75
HFClusterAlgo::m_correctionSet
int m_correctionSet
Definition:
HFClusterAlgo.h:45
HFClusterAlgo::m_maximumRenergy
double m_maximumRenergy
Definition:
HFClusterAlgo.h:41
HFEMClusterShape.h
edm::SortedCollection
Definition:
SortedCollection.h:49
HFClusterAlgo::m_forcePulseFlagMC
bool m_forcePulseFlagMC
Definition:
HFClusterAlgo.h:43
HFClusterAlgo::m_cutByEta
std::vector< double > m_cutByEta
Definition:
HFClusterAlgo.h:46
reco::HFEMClusterShape
Definition:
HFEMClusterShape.h:21
HFClusterAlgo::m_maximumSL
double m_maximumSL
Definition:
HFClusterAlgo.h:41
HFClusterAlgo::m_correctionByEta
std::vector< double > m_correctionByEta
Definition:
HFClusterAlgo.h:47
HFClusterAlgo::HFCompleteHit::id
HcalDetId id
Definition:
HFClusterAlgo.h:50
reco::HFEMClusterShapeCollection
std::vector< HFEMClusterShape > HFEMClusterShapeCollection
Definition:
HFEMClusterShapeFwd.h:8
HFClusterAlgo::HFCompleteHit::energy
double energy
Definition:
HFClusterAlgo.h:51
SuperClusterFwd.h
HFClusterAlgo::HFClusterAlgo
HFClusterAlgo()
Definition:
HFClusterAlgo.cc:19
HFClusterAlgo::makeCluster
bool makeCluster(const HcalDetId &seedid, const HFRecHitCollection &hf, const CaloGeometry &geom, reco::HFEMClusterShape &clusShp, reco::SuperCluster &SClus)
Definition:
HFClusterAlgo.cc:171
reco::SuperClusterCollection
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
Definition:
SuperClusterFwd.h:9
HcalDetId
Definition:
HcalDetId.h:18
relativeConstraints.geom
list geom
Definition:
relativeConstraints.py:71
CaloGeometry
Definition:
CaloGeometry.h:21
HFClusterAlgo::HFCompleteHit::et
double et
Definition:
HFClusterAlgo.h:51
reco::SuperCluster
Definition:
SuperCluster.h:20
HFEMClusterShapeAssociation.h
BasicClusterFwd.h
HFClusterAlgo
Definition:
HFClusterAlgo.h:22
CaloGeometry.h
HFClusterAlgo::HFCompleteHit
Definition:
HFClusterAlgo.h:49
HFClusterAlgo::isMC
void isMC(bool isMC)
Definition:
HFClusterAlgo.h:28
HcalRecHitCollections.h
HFClusterAlgo::m_seedThreshold
double m_seedThreshold
Definition:
HFClusterAlgo.h:41
CompareHFCompleteHitET
Definition:
HFClusterAlgo.cc:25
HFRecHit
Definition:
HFRecHit.h:14
HFClusterAlgo::isPMTHit
bool isPMTHit(const HFRecHit &hfr)
Definition:
HFClusterAlgo.cc:402
BasicCluster.h
HFClusterAlgo::m_isMC
bool m_isMC
Definition:
HFClusterAlgo.h:44
HFClusterAlgo::setup
void setup(double minTowerEnergy, double seedThreshold, double maximumSL, double m_maximumRenergy, bool usePMTflag, bool usePulseflag, bool forcePulseFlagMC, int correctionSet)
Definition:
HFClusterAlgo.cc:48
HFClusterAlgo::m_usePulseFlag
bool m_usePulseFlag
Definition:
HFClusterAlgo.h:43
HFClusterAlgo::m_usePMTFlag
bool m_usePMTFlag
Definition:
HFClusterAlgo.h:42
CompareHFCore
Definition:
HFClusterAlgo.cc:32
SuperCluster.h
Generated for CMSSW Reference Manual by
1.8.5