1 #ifndef RecoAlgos_GsfElectronSelector_h
2 #define RecoAlgos_GsfElectronSelector_h
40 TrackExtraRefProd rTrackExtras = evt.template getRefBeforePut<TrackExtraCollection>();
42 GsfTrackRefProd rTracks = evt.template getRefBeforePut<GsfTrackCollection>();
45 SuperClusterRefProd rSuperClusters = evt.template getRefBeforePut<SuperClusterCollection>();
46 size_t idx = 0, tidx = 0, hidx = 0;
47 for(
I i = begin;
i !=
end; ++
i ) {
66 selHits_->push_back( (*hit)->clone() );
94 std::auto_ptr<TrackingRecHitCollection>
selHits_;
101 produces<reco::GsfElectronCollection>().setBranchAlias( alias +
"GsfElectrons" );
102 produces<reco::GsfElectronCoreCollection>().setBranchAlias( alias +
"GsfElectronCores" );
103 produces<reco::SuperClusterCollection>().setBranchAlias( alias +
"SuperClusters" );
104 produces<reco::GsfTrackCollection>().setBranchAlias( alias +
"GsfTracks" );
105 produces<reco::GsfTrackExtraCollection>().setBranchAlias( alias +
"GsfTrackExtras" );
106 produces<reco::TrackExtraCollection>().setBranchAlias( alias +
"TrackExtras" );
107 produces<TrackingRecHitCollection>().setBranchAlias( alias +
"RecHits" );
edm::Ref< GsfTrackCollection > GsfTrackRef
persistent reference to a GsfTrack
GsfElectronCollectionStoreManager type
T getParameter(std::string const &) const
std::auto_ptr< reco::GsfTrackCollection > selTracks_
edm::Ref< GsfElectronCoreCollection > GsfElectronCoreRef
bool isNonnull() const
Checks for non-null.
reco::GsfElectronCollection collection
void setGsfExtra(const GsfTrackExtraRef &ref)
set reference to GSF "extra" object
std::vector< GsfTrackExtra > GsfTrackExtraCollection
collection of GsfTrackExtra objects
bool innerOk() const
return true if the innermost hit is valid
edm::Ref< TrackExtraCollection > TrackExtraRef
persistent reference to a TrackExtra
edm::Ptr< CaloCluster > CaloClusterPtr
edm::OrphanHandle< reco::GsfElectronCollection > put(edm::Event &evt)
std::auto_ptr< reco::TrackExtraCollection > selTrackExtras_
const math::XYZPoint & outerPosition() const
position of the outermost hit
void cloneAndStore(const I &begin, const I &end, edm::Event &evt)
edm::Ref< SuperClusterCollection > SuperClusterRef
reference to an object in a collection of SuperCluster objects
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
const math::XYZPoint & innerPosition() const
position of the innermost hit
std::auto_ptr< reco::GsfElectronCollection > selElectrons_
edm::RefToBase< reco::Track > TrackBaseRef
persistent reference to a Track, using views
std::auto_ptr< reco::GsfTrackExtraCollection > selGsfTrackExtras_
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
edm::Ref< TrackingRecHitCollection > TrackingRecHitRef
persistent reference to a TrackingRecHit
std::auto_ptr< reco::SuperClusterCollection > selSuperClusters_
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
CovarianceMatrix outerStateCovariance() const
outermost trajectory state curvilinear errors
std::vector< GsfElectronCore > GsfElectronCoreCollection
std::vector< GsfTrack > GsfTrackCollection
collection of GsfTracks
unsigned int outerDetId() const
DetId of the detector on which surface the outermost state is located.
const std::complex< double > I
edm::RefVector< GsfTrackCollection > GsfTrackRefVector
vector of reference to GsfTrack in the same collection
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
trackingRecHit_iterator recHitsBegin() const
Iterator to first hit on the track.
GsfElectronCollectionStoreManager(const edm::Handle< reco::GsfElectronCollection > &)
edm::Ref< GsfTrackExtraCollection > GsfTrackExtraRef
persistent reference to a GsfTrackExtra
std::auto_ptr< TrackingRecHitCollection > selHits_
std::vector< TrackExtra > TrackExtraCollection
collection of TrackExtra objects
void setExtra(const TrackExtraRef &ref)
set reference to "extra" object
const GsfTrackExtraRef & gsfExtra() const
reference to "extra" object
const math::XYZVector & outerMomentum() const
momentum vector at the outermost hit position
bool outerOk() const
return true if the outermost hit is valid
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
CovarianceMatrix innerStateCovariance() const
innermost trajectory state curvilinear errors
virtual GsfElectronCoreRef core() const
GsfElectronSelectorBase(const edm::ParameterSet &cfg)
const math::XYZVector & innerMomentum() const
momentum vector at the innermost hit position
GsfElectronSelectorBase base
PropagationDirection seedDirection() const
direction of how the hits were sorted in the original seed
unsigned int innerDetId() const
DetId of the detector on which surface the innermost state is located.
std::auto_ptr< reco::GsfElectronCoreCollection > selElectronCores_
TrackingRecHitCollection::base::const_iterator trackingRecHit_iterator
iterator over a vector of reference to TrackingRecHit in the same collection
virtual GsfTrackRef gsfTrack() const
reference to a GsfTrack
trackingRecHit_iterator recHitsEnd() const
Iterator to last hit on the track.