CMS 3D CMS Logo

SoftLepton.h
Go to the documentation of this file.
1 #ifndef RecoBTag_SoftLepton_SoftLepton_h
2 #define RecoBTag_SoftLepton_SoftLepton_h
3 
4 // -*- C++ -*-
5 //
6 // Package: SoftLepton
7 // Class: SoftLepton
8 //
16 //
17 // Original Author: fwyzard
18 // Created: Wed Oct 18 18:02:07 CEST 2006
19 //
20 
21 // system include files
22 #include <memory>
23 #include <map>
24 
25 // user include files
47 
49 
51 public:
52  explicit SoftLepton(const edm::ParameterSet& iConfig);
53  ~SoftLepton() override;
54  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
55 
56  struct TrackCompare {
58  return t1.key() < t2.key();
59  }
60  };
61 
62  typedef std::map<unsigned int, float> LeptonIds;
63  typedef std::map<edm::RefToBase<reco::Track>, LeptonIds, TrackCompare> Leptons;
64 
65  // generic interface, using a TrackRefVector for lepton tracks
68  const Leptons& leptons,
69  const reco::Vertex& primaryVertex) const;
70 
71 protected:
72  // generic interface, using a TrackRefVector for lepton tracks
73 
77 
78  static double relativeEta(const math::XYZVector& vector, const math::XYZVector& axis);
79 
80  static double boostedPPar(const math::XYZVector& vector, const math::XYZVector& axis);
81 
82 private:
83  void produce(edm::Event& event, const edm::EventSetup& setup) override;
84 
85  // configuration
100 
101  // service used to make transient tracks from tracks
103 
104  // algorithm configuration
105  unsigned int m_refineJetAxis;
106  double m_deltaRCut;
107  double m_chi2Cut;
108 
109  // specific for reco::Muons
111 
112  // nominal beam spot position
114 };
115 
116 #endif // RecoBTag_SoftLepton_SoftLepton_h
Vector3DBase
Definition: Vector3DBase.h:8
ConfigurationDescriptions.h
SoftLepton::token_jtas
const edm::EDGetTokenT< reco::JetTracksAssociationCollection > token_jtas
Definition: SoftLepton.h:87
RandomServiceHelper.t2
t2
Definition: RandomServiceHelper.py:257
JetTracksAssociation.h
SoftLepton::produce
void produce(edm::Event &event, const edm::EventSetup &setup) override
Definition: SoftLepton.cc:100
PDWG_EXOHSCP_cff.tracks
tracks
Definition: PDWG_EXOHSCP_cff.py:28
Muon.h
SoftLepton::token_pfElectrons
const edm::EDGetTokenT< reco::PFCandidateCollection > token_pfElectrons
Definition: SoftLepton.h:93
SoftLepton::Leptons
std::map< edm::RefToBase< reco::Track >, LeptonIds, TrackCompare > Leptons
Definition: SoftLepton.h:63
SoftLeptonTagInfo.h
PFCandidate.h
HLT_FULL_cff.leptons
leptons
Definition: HLT_FULL_cff.py:26346
edm::EDGetTokenT
Definition: EDGetToken.h:33
SoftLepton::token_primaryVertex
const edm::EDGetTokenT< reco::VertexCollection > token_primaryVertex
Definition: SoftLepton.h:89
SoftLepton::m_jets
const edm::InputTag m_jets
Definition: SoftLepton.h:86
EDProducer.h
Jet.h
edm::RefVector< TrackCollection >
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
SoftLepton::~SoftLepton
~SoftLepton() override
Definition: SoftLepton.cc:97
BeamMonitor_cff.primaryVertex
primaryVertex
hltOfflineBeamSpot for HLTMON
Definition: BeamMonitor_cff.py:7
RandomServiceHelper.t1
t1
Definition: RandomServiceHelper.py:256
SoftLepton::LeptonIds
std::map< unsigned int, float > LeptonIds
Definition: SoftLepton.h:62
Track.h
SoftLepton::token_leptonId
const edm::EDGetTokenT< edm::ValueMap< float > > token_leptonId
Definition: SoftLepton.h:99
muon::SelectionType
SelectionType
Selector type.
Definition: MuonSelectors.h:18
MuonSelectors.h
SoftLepton::tag
reco::SoftLeptonTagInfo tag(const edm::RefToBase< reco::Jet > &jet, const reco::TrackRefVector &tracks, const Leptons &leptons, const reco::Vertex &primaryVertex) const
Definition: SoftLepton.cc:293
SoftLepton::s_nominalBeamSpot
static const reco::Vertex s_nominalBeamSpot
Definition: SoftLepton.h:113
GsfElectron.h
RefToBase.h
SoftLepton::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: SoftLepton.cc:432
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
Vertex.h
SoftLepton::token_tracks
const edm::EDGetTokenT< edm::View< reco::Track > > token_tracks
Definition: SoftLepton.h:95
reco::TemplatedSoftLeptonTagInfo
Definition: TemplatedSoftLeptonTagInfo.h:108
edm::ParameterSet
Definition: ParameterSet.h:47
SoftLepton::token_leptonCands
const edm::EDGetTokenT< edm::ValueMap< float > > token_leptonCands
Definition: SoftLepton.h:97
Event.h
SoftLepton::token_electrons
const edm::EDGetTokenT< edm::View< reco::Electron > > token_electrons
Definition: SoftLepton.h:92
SoftLepton::m_chi2Cut
double m_chi2Cut
Definition: SoftLepton.h:107
SoftLepton::m_leptonId
const edm::InputTag m_leptonId
Definition: SoftLepton.h:98
math::XYZVector
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
SoftLepton::SoftLepton
SoftLepton(const edm::ParameterSet &iConfig)
Definition: SoftLepton.cc:70
SoftLepton::token_muons
const edm::EDGetTokenT< edm::View< reco::Muon > > token_muons
Definition: SoftLepton.h:94
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
edm::stream::EDProducer
Definition: EDProducer.h:38
TransientTrackBuilder
Definition: TransientTrackBuilder.h:16
edm::EventSetup
Definition: EventSetup.h:57
SoftLepton::token_jets
const edm::EDGetTokenT< edm::View< reco::Jet > > token_jets
Definition: SoftLepton.h:88
SoftLepton::m_leptons
const edm::InputTag m_leptons
Definition: SoftLepton.h:90
ValueMap.h
VertexFwd.h
SoftLepton::relativeEta
static double relativeEta(const math::XYZVector &vector, const math::XYZVector &axis)
Definition: SoftLepton.cc:414
SoftLepton::boostedPPar
static double boostedPPar(const math::XYZVector &vector, const math::XYZVector &axis)
Definition: SoftLepton.cc:421
Electron.h
SoftLepton::m_muonSelection
muon::SelectionType m_muonSelection
Definition: SoftLepton.h:110
SoftLepton::m_transientTrackBuilder
const TransientTrackBuilder * m_transientTrackBuilder
Definition: SoftLepton.h:102
Frameworkfwd.h
metsig::jet
Definition: SignAlgoResolutions.h:47
GlobalVector.h
edm::RefToBase< reco::Track >
SoftLepton::m_deltaRCut
double m_deltaRCut
Definition: SoftLepton.h:106
SoftLepton::m_leptonCands
const edm::InputTag m_leptonCands
Definition: SoftLepton.h:96
ParameterSet.h
SoftLepton::refineJetAxis
GlobalVector refineJetAxis(const edm::RefToBase< reco::Jet > &jet, const reco::TrackRefVector &tracks, const edm::RefToBase< reco::Track > &exclude=edm::RefToBase< reco::Track >()) const
Definition: SoftLepton.cc:337
event
Definition: event.py:1
edm::Event
Definition: Event.h:73
SoftLepton
Definition: SoftLepton.h:50
Vector3D.h
SoftLepton::TrackCompare::operator()
bool operator()(const edm::RefToBase< reco::Track > &t1, const edm::RefToBase< reco::Track > &t2) const
Definition: SoftLepton.h:57
edm::InputTag
Definition: InputTag.h:15
reco::Vertex
Definition: Vertex.h:35
SoftLepton::token_gsfElectrons
const edm::EDGetTokenT< edm::View< reco::GsfElectron > > token_gsfElectrons
Definition: SoftLepton.h:91
PFCandidateFwd.h
SoftLepton::TrackCompare
Definition: SoftLepton.h:56
SoftLepton::m_refineJetAxis
unsigned int m_refineJetAxis
Definition: SoftLepton.h:105