Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
PhysicsTools
PatUtils
plugins
ShiftedPFCandidateProducerForPFMEtMVA.h
Go to the documentation of this file.
1
#ifndef PhysicsTools_PatUtils_ShiftedPFCandidateProducerForPFMEtMVA_h
2
#define PhysicsTools_PatUtils_ShiftedPFCandidateProducerForPFMEtMVA_h
3
21
#include "
FWCore/Framework/interface/EDProducer.h
"
22
#include "
FWCore/Framework/interface/Event.h
"
23
#include "
FWCore/Framework/interface/EventSetup.h
"
24
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
25
#include "
FWCore/Utilities/interface/InputTag.h
"
26
27
#include "
DataFormats/Candidate/interface/Candidate.h
"
28
29
#include <string>
30
#include <vector>
31
32
class
ShiftedPFCandidateProducerForPFMEtMVA
:
public
edm::EDProducer
33
{
34
public
:
35
36
explicit
ShiftedPFCandidateProducerForPFMEtMVA
(
const
edm::ParameterSet
&);
37
~ShiftedPFCandidateProducerForPFMEtMVA
();
38
39
private
:
40
41
void
produce
(
edm::Event
&,
const
edm::EventSetup
&);
42
43
std::string
moduleLabel_
;
44
45
edm::InputTag
srcPFCandidates_
;
46
edm::InputTag
srcUnshiftedObjects_
;
47
edm::InputTag
srcShiftedObjects_
;
48
49
double
dRmatch_PFCandidate_
;
50
double
dRmatch_Object_
;
51
52
struct
objectEntryType
53
{
54
objectEntryType
(
const
reco::Candidate::LorentzVector
& shiftedObjectP4,
55
const
reco::Candidate::LorentzVector
& unshiftedObjectP4,
double
dRmatch)
56
:
shiftedObjectP4_
(shiftedObjectP4),
57
unshiftedObjectP4_
(unshiftedObjectP4),
58
dRmatch_
(dRmatch),
59
isValidMatch_
(
false
)
60
{
61
if
( unshiftedObjectP4.energy() > 0. ) {
62
shift_
= (shiftedObjectP4.energy()/unshiftedObjectP4.energy()) - 1.;
63
isValidMatch_
=
true
;
64
}
65
}
66
~objectEntryType
() {}
67
reco::Candidate::LorentzVector
shiftedObjectP4_
;
68
reco::Candidate::LorentzVector
unshiftedObjectP4_
;
69
double
dRmatch_
;
70
double
shift_
;
71
bool
isValidMatch_
;
72
};
73
74
std::vector<objectEntryType>
objects_
;
75
};
76
77
#endif
78
79
80
81
ShiftedPFCandidateProducerForPFMEtMVA::objects_
std::vector< objectEntryType > objects_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:74
ShiftedPFCandidateProducerForPFMEtMVA::~ShiftedPFCandidateProducerForPFMEtMVA
~ShiftedPFCandidateProducerForPFMEtMVA()
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.cc:23
funct::false
false
Definition:
Factorize.h:34
Event.h
EventSetup.h
ShiftedPFCandidateProducerForPFMEtMVA::dRmatch_PFCandidate_
double dRmatch_PFCandidate_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:49
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::unshiftedObjectP4_
reco::Candidate::LorentzVector unshiftedObjectP4_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:68
ShiftedPFCandidateProducerForPFMEtMVA::dRmatch_Object_
double dRmatch_Object_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:50
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::dRmatch_
double dRmatch_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:69
edm::EDProducer
Definition:
EDProducer.h:21
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::~objectEntryType
~objectEntryType()
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:66
ParameterSet.h
Candidate.h
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::objectEntryType
objectEntryType(const reco::Candidate::LorentzVector &shiftedObjectP4, const reco::Candidate::LorentzVector &unshiftedObjectP4, double dRmatch)
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:54
ShiftedPFCandidateProducerForPFMEtMVA::produce
void produce(edm::Event &, const edm::EventSetup &)
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.cc:28
ShiftedPFCandidateProducerForPFMEtMVA::srcUnshiftedObjects_
edm::InputTag srcUnshiftedObjects_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:46
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:52
edm::EventSetup
Definition:
EventSetup.h:44
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::isValidMatch_
bool isValidMatch_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:71
ShiftedPFCandidateProducerForPFMEtMVA::ShiftedPFCandidateProducerForPFMEtMVA
ShiftedPFCandidateProducerForPFMEtMVA(const edm::ParameterSet &)
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.cc:9
ShiftedPFCandidateProducerForPFMEtMVA::srcPFCandidates_
edm::InputTag srcPFCandidates_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:45
ShiftedPFCandidateProducerForPFMEtMVA::moduleLabel_
std::string moduleLabel_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:43
EDProducer.h
ShiftedPFCandidateProducerForPFMEtMVA::srcShiftedObjects_
edm::InputTag srcShiftedObjects_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:47
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::shift_
double shift_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:70
ShiftedPFCandidateProducerForPFMEtMVA
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:32
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition:
Candidate.h:38
edm::InputTag
Definition:
InputTag.h:12
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::shiftedObjectP4_
reco::Candidate::LorentzVector shiftedObjectP4_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:67
InputTag.h
edm::ParameterSet
Definition:
ParameterSet.h:35
edm::Event
Definition:
Event.h:50
Generated for CMSSW Reference Manual by
1.8.5