Main Page
Namespaces
Classes
Package Documentation
HLTrigger
Egamma
plugins
HLTPMMassFilter.h
Go to the documentation of this file.
1
#ifndef HLTPMMassFilter_h
2
#define HLTPMMassFilter_h
3
12
#include "
HLTrigger/HLTcore/interface/HLTFilter.h
"
13
14
#include "
DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h
"
15
#include "
RecoEgamma/EgammaElectronAlgos/interface/FTSFromVertexToPointFactory.h
"
16
#include "
DataFormats/BeamSpot/interface/BeamSpot.h
"
17
#include "
DataFormats/Math/interface/Point3D.h
"
18
19
#include "
FWCore/Framework/interface/EventSetup.h
"
20
21
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
22
#include "
MagneticField/Engine/interface/MagneticField.h
"
23
24
#include "
DataFormats/Common/interface/Handle.h
"
25
26
#include "
FWCore/ParameterSet/interface/ConfigurationDescriptions.h
"
27
#include "
FWCore/ParameterSet/interface/ParameterSetDescription.h
"
28
29
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
30
31
#include "
DataFormats/EgammaReco/interface/SuperCluster.h
"
32
#include "
DataFormats/EgammaReco/interface/SuperClusterFwd.h
"
33
34
#include "
DataFormats/RecoCandidate/interface/RecoEcalCandidate.h
"
35
#include "
DataFormats/RecoCandidate/interface/RecoEcalCandidateFwd.h
"
36
37
#include "
DataFormats/EgammaCandidates/interface/Electron.h
"
38
#include "
DataFormats/EgammaCandidates/interface/ElectronFwd.h
"
39
40
// TEST
41
#include "
FWCore/ServiceRegistry/interface/Service.h
"
42
#include "
CommonTools/UtilAlgos/interface/TFileService.h
"
43
44
#include "TFile.h"
45
#include "TDirectory.h"
46
#include "TH1F.h"
47
#include "TH2F.h"
48
#include "TLorentzVector.h"
49
#include "TVector3.h"
50
51
//
52
// class declaration
53
//
54
55
class
HLTPMMassFilter
:
public
HLTFilter
{
56
57
public
:
58
explicit
HLTPMMassFilter
(
const
edm::ParameterSet
&);
59
~HLTPMMassFilter
()
override
;
60
bool
hltFilter
(
edm::Event
&,
const
edm::EventSetup
&,
trigger::TriggerFilterObjectWithRefs
& filterproduct)
const override
;
61
static
void
fillDescriptions
(
edm::ConfigurationDescriptions
& descriptions);
62
63
private
:
64
TLorentzVector
approxMomAtVtx
(
const
MagneticField
*magField,
const
GlobalPoint
& xvert,
const
reco::SuperClusterRef
sc
,
int
charge
)
const
;
65
66
edm::InputTag
candTag_
;
// input tag identifying product contains filtered egammas
67
edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs>
candToken_
;
68
edm::InputTag
beamSpot_
;
// input tag identifying beamSpot product
69
edm::EDGetTokenT<reco::BeamSpot>
beamSpotToken_
;
70
double
lowerMassCut_
;
71
double
upperMassCut_
;
72
int
nZcandcut_
;
// number of Z candidates required
73
bool
reqOppCharge_
;
74
75
bool
isElectron1_
;
76
bool
isElectron2_
;
77
edm::InputTag
l1EGTag_
;
78
79
};
80
81
#endif //HLTPMMassFilter_h
82
83
HLTPMMassFilter::hltFilter
bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) const override
Definition:
HLTPMMassFilter.cc:53
HLTPMMassFilter::candTag_
edm::InputTag candTag_
Definition:
HLTPMMassFilter.h:66
MessageLogger.h
HLTPMMassFilter::isElectron2_
bool isElectron2_
Definition:
HLTPMMassFilter.h:76
HLTPMMassFilter::beamSpot_
edm::InputTag beamSpot_
Definition:
HLTPMMassFilter.h:68
HLTPMMassFilter::beamSpotToken_
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken_
Definition:
HLTPMMassFilter.h:69
HLTFilter.h
HLTPMMassFilter::~HLTPMMassFilter
~HLTPMMassFilter() override
edm::Ref< SuperClusterCollection >
HLTPMMassFilter::reqOppCharge_
bool reqOppCharge_
Definition:
HLTPMMassFilter.h:73
trigger::TriggerFilterObjectWithRefs
Definition:
TriggerFilterObjectWithRefs.h:36
EventSetup.h
HLTPMMassFilter::HLTPMMassFilter
HLTPMMassFilter(const edm::ParameterSet &)
Definition:
HLTPMMassFilter.cc:16
HLTPMMassFilter::upperMassCut_
double upperMassCut_
Definition:
HLTPMMassFilter.h:71
MagneticField
Definition:
MagneticField.h:19
TriggerFilterObjectWithRefs.h
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs >
SimDataFormats::CaloAnalysis::sc
SimCluster sc
Definition:
classes.h:8
Point3D.h
TFileService.h
HLTPMMassFilter::lowerMassCut_
double lowerMassCut_
Definition:
HLTPMMassFilter.h:70
MagneticField.h
ElectronFwd.h
SuperClusterFwd.h
ParameterSetDescription.h
HLTFilter
Definition:
HLTFilter.h:28
Service.h
FTSFromVertexToPointFactory.h
edm::EventSetup
Definition:
EventSetup.h:57
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition:
ALCARECOTkAlJpsiMuMu_cff.py:47
HLTPMMassFilter
Definition:
HLTPMMassFilter.h:55
RecoEcalCandidateFwd.h
HLTPMMassFilter::candToken_
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > candToken_
Definition:
HLTPMMassFilter.h:67
HLTPMMassFilter::nZcandcut_
int nZcandcut_
Definition:
HLTPMMassFilter.h:72
HLTPMMassFilter::l1EGTag_
edm::InputTag l1EGTag_
Definition:
HLTPMMassFilter.h:77
RecoEcalCandidate.h
HLTPMMassFilter::isElectron1_
bool isElectron1_
Definition:
HLTPMMassFilter.h:75
Point3DBase< float, GlobalTag >
edm::InputTag
Definition:
InputTag.h:15
BeamSpot.h
edm::ParameterSet
Definition:
ParameterSet.h:36
ConfigurationDescriptions.h
HLTPMMassFilter::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition:
HLTPMMassFilter.cc:36
edm::Event
Definition:
Event.h:71
Electron.h
edm::ConfigurationDescriptions
Definition:
ConfigurationDescriptions.h:28
IdealMagneticFieldRecord.h
Handle.h
HLTPMMassFilter::approxMomAtVtx
TLorentzVector approxMomAtVtx(const MagneticField *magField, const GlobalPoint &xvert, const reco::SuperClusterRef sc, int charge) const
Definition:
HLTPMMassFilter.cc:183
SuperCluster.h
Generated for CMSSW Reference Manual by
1.8.11