CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
GsfElectronCoreBaseProducer Class Reference

#include <GsfElectronCoreBaseProducer.h>

Inheritance diagram for GsfElectronCoreBaseProducer:
edm::stream::EDProducer<> GEDGsfElectronCoreProducer GsfElectronCoreEcalDrivenProducer GsfElectronCoreProducer LowPtGsfElectronCoreProducer

Public Member Functions

 GsfElectronCoreBaseProducer (const edm::ParameterSet &conf)
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescription (edm::ParameterSetDescription &, std::string const &gsfPfRecTracks="pfTrackElec", std::string const &gsfTracks="electronGsfTracks")
 

Protected Member Functions

void fillElectronCore (reco::GsfElectronCore *)
 
void initEvent (edm::Event &event, const edm::EventSetup &setup)
 

Protected Attributes

edm::Handle< reco::TrackCollectionctfTracksH_
 
edm::Handle< reco::GsfPFRecTrackCollectiongsfPfRecTracksH_
 
edm::Handle< reco::GsfTrackCollectiongsfTracksH_
 
bool useGsfPfRecTracks_
 

Private Attributes

edm::EDGetTokenT< reco::TrackCollectionctfTracksTag_
 
edm::EDGetTokenT< reco::GsfPFRecTrackCollectiongsfPfRecTracksTag_
 
edm::EDGetTokenT< reco::GsfTrackCollectiongsfTracksTag_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Detailed Description

Definition at line 28 of file GsfElectronCoreBaseProducer.h.

Constructor & Destructor Documentation

GsfElectronCoreBaseProducer::GsfElectronCoreBaseProducer ( const edm::ParameterSet conf)
explicit

Definition at line 25 of file GsfElectronCoreBaseProducer.cc.

References edm::ParameterSet::getParameter().

25  {
26  produces<GsfElectronCoreCollection>();
27  gsfPfRecTracksTag_ = mayConsume<reco::GsfPFRecTrackCollection>(config.getParameter<edm::InputTag>("gsfPfRecTracks"));
28  gsfTracksTag_ = consumes<reco::GsfTrackCollection>(config.getParameter<edm::InputTag>("gsfTracks"));
29  ctfTracksTag_ = consumes<reco::TrackCollection>(config.getParameter<edm::InputTag>("ctfTracks"));
30  useGsfPfRecTracks_ = config.getParameter<bool>("useGsfPfRecTracks");
31 }
Definition: config.py:1
edm::EDGetTokenT< reco::TrackCollection > ctfTracksTag_
edm::EDGetTokenT< reco::GsfPFRecTrackCollection > gsfPfRecTracksTag_
edm::EDGetTokenT< reco::GsfTrackCollection > gsfTracksTag_

Member Function Documentation

void GsfElectronCoreBaseProducer::fillDescription ( edm::ParameterSetDescription desc,
std::string const &  gsfPfRecTracks = "pfTrackElec",
std::string const &  gsfTracks = "electronGsfTracks" 
)
static
void GsfElectronCoreBaseProducer::fillElectronCore ( reco::GsfElectronCore eleCore)
protected

Definition at line 46 of file GsfElectronCoreBaseProducer.cc.

References egamma::getClosestCtfToGsf(), reco::GsfElectronCore::gsfTrack(), and reco::GsfElectronCore::setCtfTrack().

Referenced by LowPtGsfElectronCoreProducer::produce(), GsfElectronCoreEcalDrivenProducer::produceEcalDrivenCore(), GEDGsfElectronCoreProducer::produceElectronCore(), and GsfElectronCoreProducer::produceTrackerDrivenCore().

46  {
47  const GsfTrackRef& gsfTrackRef = eleCore->gsfTrack();
48 
49  std::pair<TrackRef, float> ctfpair = egamma::getClosestCtfToGsf(gsfTrackRef, ctfTracksH_);
50  eleCore->setCtfTrack(ctfpair.first, ctfpair.second);
51 }
void setCtfTrack(const TrackRef &closestCtfTrack, float ctfGsfOverlap)
const GsfTrackRef & gsfTrack() const
edm::Handle< reco::TrackCollection > ctfTracksH_
std::pair< reco::TrackRef, float > getClosestCtfToGsf(reco::GsfTrackRef const &, edm::Handle< reco::TrackCollection > const &ctfTracksH)
void GsfElectronCoreBaseProducer::initEvent ( edm::Event event,
const edm::EventSetup setup 
)
protected

Definition at line 38 of file GsfElectronCoreBaseProducer.cc.

Referenced by GsfElectronCoreEcalDrivenProducer::produce(), LowPtGsfElectronCoreProducer::produce(), GEDGsfElectronCoreProducer::produce(), and GsfElectronCoreProducer::produce().

38  {
39  if (useGsfPfRecTracks_) {
40  event.getByToken(gsfPfRecTracksTag_, gsfPfRecTracksH_);
41  }
42  event.getByToken(gsfTracksTag_, gsfTracksH_);
43  event.getByToken(ctfTracksTag_, ctfTracksH_);
44 }
edm::Handle< reco::TrackCollection > ctfTracksH_
edm::Handle< reco::GsfTrackCollection > gsfTracksH_
edm::EDGetTokenT< reco::TrackCollection > ctfTracksTag_
edm::EDGetTokenT< reco::GsfPFRecTrackCollection > gsfPfRecTracksTag_
edm::Handle< reco::GsfPFRecTrackCollection > gsfPfRecTracksH_
edm::EDGetTokenT< reco::GsfTrackCollection > gsfTracksTag_

Member Data Documentation

edm::Handle<reco::TrackCollection> GsfElectronCoreBaseProducer::ctfTracksH_
protected

Definition at line 41 of file GsfElectronCoreBaseProducer.h.

edm::EDGetTokenT<reco::TrackCollection> GsfElectronCoreBaseProducer::ctfTracksTag_
private

Definition at line 49 of file GsfElectronCoreBaseProducer.h.

edm::Handle<reco::GsfPFRecTrackCollection> GsfElectronCoreBaseProducer::gsfPfRecTracksH_
protected
edm::EDGetTokenT<reco::GsfPFRecTrackCollection> GsfElectronCoreBaseProducer::gsfPfRecTracksTag_
private

Definition at line 47 of file GsfElectronCoreBaseProducer.h.

edm::Handle<reco::GsfTrackCollection> GsfElectronCoreBaseProducer::gsfTracksH_
protected
edm::EDGetTokenT<reco::GsfTrackCollection> GsfElectronCoreBaseProducer::gsfTracksTag_
private

Definition at line 48 of file GsfElectronCoreBaseProducer.h.

bool GsfElectronCoreBaseProducer::useGsfPfRecTracks_
protected