RecoJets
JetProducers
plugins
CompoundJetProducer.h
Go to the documentation of this file.
1
#ifndef RecoJets_JetProducers_CompoundJetProducer_h
2
#define RecoJets_JetProducers_CompoundJetProducer_h
3
4
/* *********************************************************
5
\class CompoundJetProducer
6
7
\brief Jet producer to produce compound jets (i.e. jets of jets)
8
9
\author Salvatore Rappoccio
10
\version
11
12
Notes on implementation:
13
14
Because the BaseJetProducer only allows the user to produce
15
one jet collection at a time, this algorithm cannot
16
fit into that paradigm.
17
18
All of the "hard" jets are of type BasicJet, since
19
they are "jets of jets". The subjets will be either
20
CaloJets, GenJets, etc.
21
22
In order to avoid a templatization of the entire
23
EDProducer itself, we only use a templated method
24
to write out the subjets to the event record,
25
and to use that information to write out the
26
hard jets to the event record.
27
28
Modifications:
29
25Feb09: Updated to use anomalous cells, also
30
included corrected CaloTowers for the PV.
31
32
************************************************************/
33
34
#include "
RecoJets/JetProducers/plugins/VirtualJetProducer.h
"
35
36
#include "
RecoJets/JetAlgorithms/interface/CompoundPseudoJet.h
"
37
38
namespace
cms
{
39
class
CompoundJetProducer
:
public
VirtualJetProducer
{
40
public
:
41
CompoundJetProducer
(
const
edm::ParameterSet
& ps);
42
43
~CompoundJetProducer
()
override
{}
44
45
protected
:
46
std::vector<CompoundPseudoJet>
fjCompoundJets_
;
47
48
protected
:
49
// overridden inputTowers method. Resets fjCompoundJets_ and
50
// calls VirtualJetProducer::inputTowers
51
void
inputTowers
()
override
;
52
55
void
output
(
edm::Event
&
iEvent
,
edm::EventSetup
const
& iSetup)
override
;
56
template
<
typename
T>
57
void
writeCompoundJets
(
edm::Event
&
iEvent
,
edm::EventSetup
const
& iSetup);
58
};
59
60
}
// namespace cms
61
62
#endif
cms::CompoundJetProducer::writeCompoundJets
void writeCompoundJets(edm::Event &iEvent, edm::EventSetup const &iSetup)
function template to write out the outputs
Definition:
CompoundJetProducer.cc:45
cms::CompoundJetProducer::output
void output(edm::Event &iEvent, edm::EventSetup const &iSetup) override
Definition:
CompoundJetProducer.cc:22
VirtualJetProducer
Definition:
VirtualJetProducer.h:35
VirtualJetProducer.h
cms::CompoundJetProducer::inputTowers
void inputTowers() override
compound fastjet::PseudoJets
Definition:
CompoundJetProducer.cc:17
edm::ParameterSet
Definition:
ParameterSet.h:36
iEvent
int iEvent
Definition:
GenABIO.cc:224
cms::CompoundJetProducer::fjCompoundJets_
std::vector< CompoundPseudoJet > fjCompoundJets_
Definition:
CompoundJetProducer.h:46
edm::EventSetup
Definition:
EventSetup.h:57
cms::CompoundJetProducer::~CompoundJetProducer
~CompoundJetProducer() override
Definition:
CompoundJetProducer.h:43
CompoundPseudoJet.h
cms::CompoundJetProducer
Definition:
CompoundJetProducer.h:39
edm::Event
Definition:
Event.h:73
cms::CompoundJetProducer::CompoundJetProducer
CompoundJetProducer(const edm::ParameterSet &ps)
Definition:
CompoundJetProducer.cc:12
cms
Namespace of DDCMS conversion namespace.
Definition:
ProducerAnalyzer.cc:21
Generated for CMSSW Reference Manual by
1.8.16