RecoEcal
EgammaClusterProducers
interface
Multi5x5ClusterProducer.h
Go to the documentation of this file.
1
#ifndef RecoEcal_EgammaClusterProducers_Multi5x5ClusterProducer_h_
2
#define RecoEcal_EgammaClusterProducers_Multi5x5ClusterProducer_h_
3
4
#include <memory>
5
#include <ctime>
6
7
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
8
#include "
FWCore/Framework/interface/stream/EDProducer.h
"
9
#include "
FWCore/Framework/interface/Event.h
"
10
#include "
FWCore/Framework/interface/EventSetup.h
"
11
12
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
13
#include "
FWCore/Utilities/interface/ESGetToken.h
"
14
15
#include "
DataFormats/EcalRecHit/interface/EcalRecHitCollections.h
"
16
#include "
RecoEcal/EgammaClusterAlgos/interface/Multi5x5ClusterAlgo.h
"
17
#include "
RecoEcal/EgammaCoreTools/interface/PositionCalc.h
"
18
#include "
Geometry/CaloTopology/interface/CaloSubdetectorTopology.h
"
19
#include "
Geometry/CaloGeometry/interface/CaloGeometry.h
"
20
#include "
Geometry/Records/interface/CaloGeometryRecord.h
"
21
22
#include "
DataFormats/EgammaReco/interface/BasicClusterFwd.h
"
23
#include "
DataFormats/CaloRecHit/interface/CaloClusterFwd.h
"
24
25
//
26
27
class
Multi5x5ClusterProducer
:
public
edm::stream::EDProducer
<> {
28
public
:
29
Multi5x5ClusterProducer
(
const
edm::ParameterSet
& ps);
30
31
~Multi5x5ClusterProducer
()
override
;
32
33
void
produce
(
edm::Event
&,
const
edm::EventSetup
&)
override
;
34
35
private
:
36
int
nMaxPrintout_
;
// max # of printouts
37
int
nEvt_
;
// internal counter of events
38
39
// cluster which regions
40
bool
doBarrel_
;
41
bool
doEndcap_
;
42
43
edm::EDGetTokenT<EcalRecHitCollection>
barrelHitToken_
;
44
edm::EDGetTokenT<EcalRecHitCollection>
endcapHitToken_
;
45
edm::ESGetToken<CaloGeometry, CaloGeometryRecord>
caloGeometryToken_
;
46
47
std::string
barrelClusterCollection_
;
48
std::string
endcapClusterCollection_
;
49
50
PositionCalc
posCalculator_
;
// position calculation algorithm
51
Multi5x5ClusterAlgo
*
island_p
;
52
53
bool
counterExceeded
()
const
{
return
((
nEvt_
>
nMaxPrintout_
) || (
nMaxPrintout_
< 0)); }
54
55
const
EcalRecHitCollection
*
getCollection
(
edm::Event
& evt,
const
edm::EDGetTokenT<EcalRecHitCollection>
&
token
);
56
57
void
clusterizeECALPart
(
edm::Event
& evt,
58
const
edm::EventSetup
& es,
59
const
edm::EDGetTokenT<EcalRecHitCollection>
&
token
,
60
const
std::string
& clusterCollection,
61
const
reco::CaloID::Detectors
detector
);
62
63
void
outputValidationInfo
(
reco::CaloClusterPtrVector
& clusterPtrVector);
64
};
65
66
#endif
PositionCalc.h
Multi5x5ClusterProducer::~Multi5x5ClusterProducer
~Multi5x5ClusterProducer() override
Definition:
Multi5x5ClusterProducer.cc:78
Multi5x5ClusterProducer::barrelHitToken_
edm::EDGetTokenT< EcalRecHitCollection > barrelHitToken_
Definition:
Multi5x5ClusterProducer.h:43
reco::CaloID::Detectors
Detectors
Definition:
CaloID.h:19
Multi5x5ClusterProducer::barrelClusterCollection_
std::string barrelClusterCollection_
Definition:
Multi5x5ClusterProducer.h:47
edm::EDGetTokenT
Definition:
EDGetToken.h:33
Multi5x5ClusterAlgo.h
EDProducer.h
edm::SortedCollection< EcalRecHit >
Multi5x5ClusterProducer
Definition:
Multi5x5ClusterProducer.h:27
ESGetToken.h
EcalRecHitCollections.h
Multi5x5ClusterProducer::endcapHitToken_
edm::EDGetTokenT< EcalRecHitCollection > endcapHitToken_
Definition:
Multi5x5ClusterProducer.h:44
BasicClusterFwd.h
Multi5x5ClusterProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition:
Multi5x5ClusterProducer.cc:80
Multi5x5ClusterProducer::Multi5x5ClusterProducer
Multi5x5ClusterProducer(const edm::ParameterSet &ps)
Definition:
Multi5x5ClusterProducer.cc:35
Multi5x5ClusterProducer::nEvt_
int nEvt_
Definition:
Multi5x5ClusterProducer.h:37
edm::PtrVector< CaloCluster >
Multi5x5ClusterProducer::island_p
Multi5x5ClusterAlgo * island_p
Definition:
Multi5x5ClusterProducer.h:51
CaloClusterFwd.h
Multi5x5ClusterAlgo
Definition:
Multi5x5ClusterAlgo.h:27
Multi5x5ClusterProducer::doEndcap_
bool doEndcap_
Definition:
Multi5x5ClusterProducer.h:41
CaloGeometryRecord.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
Multi5x5ClusterProducer::endcapClusterCollection_
std::string endcapClusterCollection_
Definition:
Multi5x5ClusterProducer.h:48
Multi5x5ClusterProducer::getCollection
const EcalRecHitCollection * getCollection(edm::Event &evt, const edm::EDGetTokenT< EcalRecHitCollection > &token)
Definition:
Multi5x5ClusterProducer.cc:91
edm::ParameterSet
Definition:
ParameterSet.h:47
Multi5x5ClusterProducer::caloGeometryToken_
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeometryToken_
Definition:
Multi5x5ClusterProducer.h:45
Event.h
Multi5x5ClusterProducer::doBarrel_
bool doBarrel_
Definition:
Multi5x5ClusterProducer.h:40
PositionCalc
Definition:
PositionCalc.h:29
edm::stream::EDProducer
Definition:
EDProducer.h:38
Multi5x5ClusterProducer::posCalculator_
PositionCalc posCalculator_
Definition:
Multi5x5ClusterProducer.h:50
edm::EventSetup
Definition:
EventSetup.h:58
edm::ESGetToken< CaloGeometry, CaloGeometryRecord >
Multi5x5ClusterProducer::counterExceeded
bool counterExceeded() const
Definition:
Multi5x5ClusterProducer.h:53
CaloSubdetectorTopology.h
Frameworkfwd.h
Multi5x5ClusterProducer::outputValidationInfo
void outputValidationInfo(reco::CaloClusterPtrVector &clusterPtrVector)
CaloGeometry.h
EventSetup.h
hgcalTestNeighbor_cfi.detector
detector
Definition:
hgcalTestNeighbor_cfi.py:6
Multi5x5ClusterProducer::nMaxPrintout_
int nMaxPrintout_
Definition:
Multi5x5ClusterProducer.h:36
Multi5x5ClusterProducer::clusterizeECALPart
void clusterizeECALPart(edm::Event &evt, const edm::EventSetup &es, const edm::EDGetTokenT< EcalRecHitCollection > &token, const std::string &clusterCollection, const reco::CaloID::Detectors detector)
Definition:
Multi5x5ClusterProducer.cc:98
ParameterSet.h
edm::Event
Definition:
Event.h:73
unpackBuffers-CaloStage2.token
token
Definition:
unpackBuffers-CaloStage2.py:316
Generated for CMSSW Reference Manual by
1.8.16