Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
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:82
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:48
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:178
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:409
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:51
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