Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:255
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::dRmatch_
double dRmatch_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:69
edm::EDProducer
Definition:
EDProducer.h:22
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:41
edm::InputTag
Definition:
InputTag.h:17
ShiftedPFCandidateProducerForPFMEtMVA::objectEntryType::shiftedObjectP4_
reco::Candidate::LorentzVector shiftedObjectP4_
Definition:
ShiftedPFCandidateProducerForPFMEtMVA.h:67
InputTag.h
edm::ParameterSet
Definition:
ParameterSet.h:35
edm::Event
Definition:
Event.h:56
Generated for CMSSW Reference Manual by
1.8.5