CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Protected Attributes
TrackProducerBase< T > Class Template Referenceabstract

#include <TrackProducerBase.h>

Inheritance diagram for TrackProducerBase< T >:
AlgoProductTraits< T >

Public Types

using AlgoProductCollection = typename Base::AlgoProductCollection
 
using Base = AlgoProductTraits< T >
 
using TrackCollection = typename Base::TrackCollection
 
using TrackView = typename Base::TrackView
 
- Public Types inherited from AlgoProductTraits< T >
using AlgoProductCollection = std::vector< AlgoProduct >
 
using TrackCollection = std::vector< T >
 
using TrackView = edm::View< T >
 

Public Member Functions

const edm::ParameterSetgetConf () const
 
virtual void getFromES (const edm::EventSetup &, edm::ESHandle< TrackerGeometry > &, edm::ESHandle< MagneticField > &, edm::ESHandle< TrajectoryFitter > &, edm::ESHandle< Propagator > &, edm::ESHandle< MeasurementTracker > &, edm::ESHandle< TransientTrackingRecHitBuilder > &)
 Get needed services from the Event Setup. More...
 
virtual void getFromEvt (edm::Event &, edm::Handle< TrackCandidateCollection > &, reco::BeamSpot &)
 Get TrackCandidateCollection from the Event (needed by TrackProducer) More...
 
virtual void getFromEvt (edm::Event &, edm::Handle< TrackView > &, reco::BeamSpot &)
 Get TrackCollection from the Event (needed by TrackRefitter) More...
 
virtual void produce (edm::Event &, const edm::EventSetup &)=0
 Method where the procduction take place. To be implemented in concrete classes. More...
 
void setAlias (std::string alias)
 set the aliases of produced collections More...
 
void setClusterRemovalInfo (const edm::InputTag &clusterRemovalInfo)
 Sets the information on cluster removal, and turns it on. More...
 
void setConf (const edm::ParameterSet &conf)
 Set parameter set. More...
 
void setSecondHitPattern (Trajectory *traj, T &track, const Propagator *prop, const MeasurementTrackerEvent *measTk, const TrackerTopology *ttopo)
 
void setSrc (const edm::EDGetToken &src, const edm::EDGetTokenT< reco::BeamSpot > &bsSrc, const edm::EDGetTokenT< MeasurementTrackerEvent > &mteSrc)
 set label of source collection More...
 
 TrackProducerBase (bool trajectoryInEvent=false)
 Constructor. More...
 
virtual ~TrackProducerBase () noexcept(false)
 Destructor. More...
 

Protected Attributes

std::string alias_
 
edm::EDGetTokenT< reco::BeamSpotbsSrc_
 
edm::InputTag clusterRemovalInfo_
 
edm::ParameterSet conf_
 
edm::EDGetTokenT< MeasurementTrackerEventmteSrc_
 
bool rekeyClusterRefs_
 
edm::OrphanHandle< TrackCollectionrTracks_
 
edm::EDGetToken src_
 
edm::ESHandle< NavigationSchooltheSchool
 
bool trajectoryInEvent_
 

Detailed Description

template<class T>
class TrackProducerBase< T >

Base Class To Produce Tracks

Author
cerati

Definition at line 39 of file TrackProducerBase.h.

Member Typedef Documentation

◆ AlgoProductCollection

template<class T>
using TrackProducerBase< T >::AlgoProductCollection = typename Base::AlgoProductCollection

Definition at line 44 of file TrackProducerBase.h.

◆ Base

template<class T>
using TrackProducerBase< T >::Base = AlgoProductTraits<T>

Definition at line 41 of file TrackProducerBase.h.

◆ TrackCollection

template<class T>
using TrackProducerBase< T >::TrackCollection = typename Base::TrackCollection

Definition at line 43 of file TrackProducerBase.h.

◆ TrackView

template<class T>
using TrackProducerBase< T >::TrackView = typename Base::TrackView

Definition at line 42 of file TrackProducerBase.h.

Constructor & Destructor Documentation

◆ TrackProducerBase()

template<class T>
TrackProducerBase< T >::TrackProducerBase ( bool  trajectoryInEvent = false)
inline

Constructor.

Definition at line 48 of file TrackProducerBase.h.

48 : trajectoryInEvent_(trajectoryInEvent), rekeyClusterRefs_(false) {}

◆ ~TrackProducerBase()

template<class T>
virtual TrackProducerBase< T >::~TrackProducerBase ( )
virtualnoexcept

Destructor.

Member Function Documentation

◆ getConf()

template<class T>
const edm::ParameterSet& TrackProducerBase< T >::getConf ( ) const
inline

Definition at line 100 of file TrackProducerBase.h.

100 { return conf_; }

◆ getFromES()

Get needed services from the Event Setup.

◆ getFromEvt() [1/2]

template<class T>
virtual void TrackProducerBase< T >::getFromEvt ( edm::Event ,
edm::Handle< TrackCandidateCollection > &  ,
reco::BeamSpot  
)
virtual

Get TrackCandidateCollection from the Event (needed by TrackProducer)

◆ getFromEvt() [2/2]

template<class T>
virtual void TrackProducerBase< T >::getFromEvt ( edm::Event ,
edm::Handle< TrackView > &  ,
reco::BeamSpot  
)
virtual

Get TrackCollection from the Event (needed by TrackRefitter)

◆ produce()

template<class T>
virtual void TrackProducerBase< T >::produce ( edm::Event ,
const edm::EventSetup  
)
pure virtual

Method where the procduction take place. To be implemented in concrete classes.

Implemented in TrackProducerWithSCAssociation, DAFTrackProducer, TrackProducer, GsfTrackProducer, GsfTrackRefitter, and TrackRefitter.

◆ setAlias()

template<class T>
void TrackProducerBase< T >::setAlias ( std::string  alias)
inline

set the aliases of produced collections

Definition at line 83 of file TrackProducerBase.h.

83  {
84  alias.erase(alias.size() - 6, alias.size());
85  alias_ = alias;
86  }

◆ setClusterRemovalInfo()

template<class T>
void TrackProducerBase< T >::setClusterRemovalInfo ( const edm::InputTag clusterRemovalInfo)
inline

Sets the information on cluster removal, and turns it on.

Definition at line 89 of file TrackProducerBase.h.

89  {
90  rekeyClusterRefs_ = true;
92  }

◆ setConf()

template<class T>
void TrackProducerBase< T >::setConf ( const edm::ParameterSet conf)
inline

Set parameter set.

Definition at line 71 of file TrackProducerBase.h.

71 { conf_ = conf; }

◆ setSecondHitPattern()

template<class T>
void TrackProducerBase< T >::setSecondHitPattern ( Trajectory traj,
T track,
const Propagator prop,
const MeasurementTrackerEvent measTk,
const TrackerTopology ttopo 
)

◆ setSrc()

template<class T>
void TrackProducerBase< T >::setSrc ( const edm::EDGetToken src,
const edm::EDGetTokenT< reco::BeamSpot > &  bsSrc,
const edm::EDGetTokenT< MeasurementTrackerEvent > &  mteSrc 
)
inline

set label of source collection

Definition at line 74 of file TrackProducerBase.h.

76  {
77  src_ = src;
78  bsSrc_ = bsSrc;
79  mteSrc_ = mteSrc;
80  }

Member Data Documentation

◆ alias_

template<class T>
std::string TrackProducerBase< T >::alias_
protected

Definition at line 107 of file TrackProducerBase.h.

Referenced by TrackProducerBase< reco::GsfTrack >::setAlias().

◆ bsSrc_

template<class T>
edm::EDGetTokenT<reco::BeamSpot> TrackProducerBase< T >::bsSrc_
protected

Definition at line 110 of file TrackProducerBase.h.

Referenced by TrackProducerBase< reco::GsfTrack >::setSrc().

◆ clusterRemovalInfo_

template<class T>
edm::InputTag TrackProducerBase< T >::clusterRemovalInfo_
protected

◆ conf_

template<class T>
edm::ParameterSet TrackProducerBase< T >::conf_
protected

◆ mteSrc_

template<class T>
edm::EDGetTokenT<MeasurementTrackerEvent> TrackProducerBase< T >::mteSrc_
protected

Definition at line 111 of file TrackProducerBase.h.

Referenced by TrackProducerBase< reco::GsfTrack >::setSrc().

◆ rekeyClusterRefs_

template<class T>
bool TrackProducerBase< T >::rekeyClusterRefs_
protected

◆ rTracks_

template<class T>
edm::OrphanHandle<TrackCollection> TrackProducerBase< T >::rTracks_
protected

Definition at line 109 of file TrackProducerBase.h.

◆ src_

template<class T>
edm::EDGetToken TrackProducerBase< T >::src_
protected

Definition at line 104 of file TrackProducerBase.h.

Referenced by TrackProducerBase< reco::GsfTrack >::setSrc().

◆ theSchool

template<class T>
edm::ESHandle<NavigationSchool> TrackProducerBase< T >::theSchool
protected

Definition at line 116 of file TrackProducerBase.h.

◆ trajectoryInEvent_

template<class T>
bool TrackProducerBase< T >::trajectoryInEvent_
protected

Definition at line 108 of file TrackProducerBase.h.

TrackProducerBase::conf_
edm::ParameterSet conf_
Definition: TrackProducerBase.h:103
TrackRefitter_38T_cff.src
src
Definition: TrackRefitter_38T_cff.py:24
TrackProducerBase::src_
edm::EDGetToken src_
Definition: TrackProducerBase.h:104
TrackProducerBase::alias_
std::string alias_
Definition: TrackProducerBase.h:107
TrackProducerBase::trajectoryInEvent_
bool trajectoryInEvent_
Definition: TrackProducerBase.h:108
TrackProducerBase::bsSrc_
edm::EDGetTokenT< reco::BeamSpot > bsSrc_
Definition: TrackProducerBase.h:110
TrackProducerBase::mteSrc_
edm::EDGetTokenT< MeasurementTrackerEvent > mteSrc_
Definition: TrackProducerBase.h:111
SiStripOfflineCRack_cfg.alias
alias
Definition: SiStripOfflineCRack_cfg.py:128
TrackProducerBase::rekeyClusterRefs_
bool rekeyClusterRefs_
Definition: TrackProducerBase.h:113
HLT_FULL_cff.clusterRemovalInfo
clusterRemovalInfo
Definition: HLT_FULL_cff.py:9577
TrackProducerBase::clusterRemovalInfo_
edm::InputTag clusterRemovalInfo_
Definition: TrackProducerBase.h:114