#include <PhysicsTools/RecoAlgos/interface/MuonSelector.h>
Definition at line 33 of file MuonSelector.h.
Definition at line 35 of file MuonSelector.h.
typedef ClusterHitRecord<SiPixelRecHit> helper::MuonCollectionStoreManager::PixelClusterHitRecord [private] |
Definition at line 94 of file MuonSelector.h.
typedef ClusterHitRecord<SiStripRecHit2D> helper::MuonCollectionStoreManager::StripClusterHitRecord [private] |
Definition at line 95 of file MuonSelector.h.
helper::MuonCollectionStoreManager::MuonCollectionStoreManager | ( | const edm::Handle< reco::MuonCollection > & | ) |
Definition at line 42 of file MuonSelector.cc.
00043 : 00044 selMuons_( new reco::MuonCollection ), 00045 selTracks_( new reco::TrackCollection ), 00046 selTracksExtras_( new reco::TrackExtraCollection ), 00047 selTracksHits_( new TrackingRecHitCollection ), 00048 selGlobalMuonTracks_( new reco::TrackCollection ), 00049 selGlobalMuonTracksExtras_( new reco::TrackExtraCollection ), 00050 selGlobalMuonTracksHits_( new TrackingRecHitCollection ), 00051 selStandAloneTracks_( new reco::TrackCollection ), 00052 selStandAloneTracksExtras_( new reco::TrackExtraCollection ), 00053 selStandAloneTracksHits_( new TrackingRecHitCollection ), 00054 selStripClusters_( new edmNew::DetSetVector<SiStripCluster> ), 00055 selPixelClusters_( new edmNew::DetSetVector<SiPixelCluster> ), 00056 rMuons_(), 00057 rTracks_(), rTrackExtras_(), rHits_(), rStripClusters_(), rPixelClusters_(), 00058 rGBTracks_(), rGBTrackExtras_(), rGBHits_(), 00059 rSATracks_(), rSATrackExtras_(), rSAHits_(), 00060 id_(0), igbd_(0), isad_(0), idx_(0), igbdx_(0), 00061 isadx_(0), hidx_(0), higbdx_(0), hisadx_(0), 00062 cloneClusters_ (true) 00063 { 00064 }
void helper::MuonCollectionStoreManager::cloneAndStore | ( | const I & | begin, | |
const I & | end, | |||
edm::Event & | evt | |||
) | [inline] |
Method to clone tracks, track extras and their hits and clusters.
typename I = this is an interator over a Muon collection, **I needs to dereference into a Muon.
Definition at line 172 of file MuonSelector.h.
References hidx_, higbdx_, hisadx_, I, i, id_, idx_, igbd_, igbdx_, isad_, isadx_, configurableAnalysis::Muon, pixelClusterRecords_, processAllClusters(), processMuon(), HcalSimpleRecAlgoImpl::reco(), rGBHits_, rGBTrackExtras_, rGBTracks_, rHits_, rMuons_, rPixelClusters_, rSAHits_, rSATrackExtras_, rSATracks_, rStripClusters_, rTrackExtras_, rTracks_, and stripClusterRecords_.
00173 { 00174 using namespace reco; 00175 rHits_ = evt.template getRefBeforePut<TrackingRecHitCollection>("TrackerOnly"); 00176 rGBHits_ = evt.template getRefBeforePut<TrackingRecHitCollection>("GlobalMuon"); 00177 rSAHits_ = evt.template getRefBeforePut<TrackingRecHitCollection>("StandAlone"); 00178 rTrackExtras_ = evt.template getRefBeforePut<TrackExtraCollection>("TrackerOnly"); 00179 rGBTrackExtras_ = evt.template getRefBeforePut<TrackExtraCollection>("GlobalMuon"); 00180 rSATrackExtras_ = evt.template getRefBeforePut<TrackExtraCollection>("StandAlone"); 00181 rTracks_ = evt.template getRefBeforePut<TrackCollection>("TrackerOnly"); 00182 rGBTracks_ = evt.template getRefBeforePut<TrackCollection>("GlobalMuon"); 00183 rSATracks_ = evt.template getRefBeforePut<TrackCollection>("StandAlone"); 00184 00185 rMuons_ = evt.template getRefBeforePut<MuonCollection>("SelectedMuons"); 00186 00187 //--- New: save clusters too 00188 rStripClusters_ 00189 = evt.template getRefBeforePut< edmNew::DetSetVector<SiStripCluster> >(); 00190 00191 rPixelClusters_ 00192 = evt.template getRefBeforePut< edmNew::DetSetVector<SiPixelCluster> >(); 00193 00194 id_=0; igbd_=0; isad_=0; 00195 idx_ = 0; igbdx_=0; isadx_=0; 00196 hidx_=0; higbdx_=0; hisadx_=0; 00197 00198 //--- Records about the clusters we want to clone 00199 stripClusterRecords_.clear(); 00200 pixelClusterRecords_.clear(); 00201 00202 for( I i = begin; i != end; ++ i ) { 00203 const Muon & mu = * * i; 00204 //--- Clone this track, and store references aside 00205 processMuon( mu ); 00206 } 00207 //--- Clone the clusters and fixup refs 00208 processAllClusters(); 00209 }
bool helper::MuonCollectionStoreManager::cloneClusters | ( | ) | [inline] |
Use these to turn off/on the cloning of clusters.
The default is to clone them. To not clone (and save space in a quick local job, do: setCloneClusters(false);
Definition at line 45 of file MuonSelector.h.
References cloneClusters_.
Referenced by processMuon(), and put().
00045 {return cloneClusters_ ; }
bool helper::MuonCollectionStoreManager::clusterRefsOK | ( | const reco::Track & | track | ) | const [private] |
Check if all references to silicon strip/pixel clusters are available.
Definition at line 260 of file MuonSelector.cc.
References SiStripRecHit2D::cluster(), DetId::det(), TrackingRecHit::geographicalId(), TrackingRecHit::isValid(), SiStripMatchedRecHit2D::monoHit(), ProjectedSiStripRecHit2D::originalHit(), reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), SiStripMatchedRecHit2D::stereoHit(), and DetId::Tracker.
Referenced by processMuon().
00261 { 00262 00263 for (trackingRecHit_iterator hitIt = track.recHitsBegin(); hitIt != track.recHitsEnd(); ++hitIt) { 00264 const TrackingRecHit &hit = **hitIt; 00265 if (!hit.isValid() || hit.geographicalId().det() != DetId::Tracker) continue; 00266 00267 // So we are in the tracker - now check hit types and availability of cluster refs: 00268 const std::type_info &hit_type = typeid(hit); 00269 if (hit_type == typeid(SiPixelRecHit)) { 00270 if (!static_cast<const SiPixelRecHit &>(hit).cluster().isAvailable()) return false; 00271 } else if (hit_type == typeid(SiStripRecHit2D)) { 00272 if (!static_cast<const SiStripRecHit2D &>(hit).cluster().isAvailable()) return false; 00273 } else if (hit_type == typeid(SiStripMatchedRecHit2D)) { 00274 const SiStripMatchedRecHit2D &mHit = static_cast<const SiStripMatchedRecHit2D &>(hit); 00275 if (!mHit.monoHit()->cluster().isAvailable()) return false; 00276 if (!mHit.stereoHit()->cluster().isAvailable()) return false; 00277 } else if (hit_type == typeid(ProjectedSiStripRecHit2D)) { 00278 const ProjectedSiStripRecHit2D &pHit = static_cast<const ProjectedSiStripRecHit2D &>(hit); 00279 if (!pHit.originalHit().cluster().isAvailable()) return false; 00280 } else { 00281 // std::cout << "| It is a " << hit_type.name() << " hit !?" << std::endl; 00282 // Do nothing. We might end up here for FastSim hits. 00283 } // end 'switch' on hit type 00284 } 00285 00286 // No tracker hit with bad cluster found, so all fine: 00287 return true; 00288 }
void helper::MuonCollectionStoreManager::processAllClusters | ( | ) | [private] |
Processes all the clusters of the tracks (after the tracks have been dealt with).
Definition at line 203 of file MuonSelector.cc.
References pixelClusterRecords_, rPixelClusters_, rStripClusters_, selPixelClusters_, selStripClusters_, and stripClusterRecords_.
Referenced by cloneAndStore().
00204 { 00205 if (!pixelClusterRecords_.empty()) { 00206 processClusters<SiPixelRecHit, SiPixelCluster>(pixelClusterRecords_, *selPixelClusters_, rPixelClusters_ ); 00207 } 00208 if (!stripClusterRecords_.empty()) { 00209 processClusters<SiStripRecHit2D,SiStripCluster>(stripClusterRecords_, *selStripClusters_, rStripClusters_ ); 00210 } 00211 }
void helper::MuonCollectionStoreManager::processClusters | ( | std::vector< ClusterHitRecord< HitType > > & | clusterRecords, | |
edmNew::DetSetVector< ClusterType > & | dsv, | |||
edm::RefProd< edmNew::DetSetVector< ClusterType > > & | refprod | |||
) | [inline, private] |
Processes all the clusters of a specific type (after the tracks have been dealt with).
Definition at line 216 of file MuonSelector.cc.
References end, it, edmNew::DetSetVector< T >::push_back(), and python::multivaluedict::sort().
00219 { 00220 std::sort(clusterRecords.begin(), clusterRecords.end()); // this sorts them by detid 00221 typedef typename std::vector<ClusterHitRecord<HitType> >::const_iterator RIT; 00222 RIT it = clusterRecords.begin(), end = clusterRecords.end(); 00223 size_t clusters = 0; 00224 while (it != end) { 00225 RIT it2 = it; 00226 uint32_t detid = it->detid(); 00227 00228 // first isolate all clusters on the same detid 00229 while ( (it2 != end) && (it2->detid() == detid)) { ++it2; } 00230 // now [it, it2] bracket one detid 00231 00232 // then prepare to copy the clusters 00233 typename edmNew::DetSetVector<ClusterType>::FastFiller filler(dsv, detid); 00234 typename HitType::ClusterRef lastRef, newRef; 00235 for ( ; it != it2; ++it) { // loop on the detid 00236 // first check if we need to clone the hit 00237 if (it->clusterRef() != lastRef) { 00238 lastRef = it->clusterRef(); 00239 // clone cluster 00240 filler.push_back( *lastRef ); // this might throw if !clusterRefsOK(..) above... 00241 // make new ref 00242 newRef = typename HitType::ClusterRef( refprod, clusters++ ); 00243 } 00244 // then fixup the reference 00245 it->rekey( newRef ); 00246 00247 } // end of the loop on a single detid 00248 00249 } // end of the loop on all clusters 00250 00251 clusterRecords.clear(); 00252 } // end of the function
void helper::MuonCollectionStoreManager::processHit | ( | const TrackingRecHit * | hit, | |
edm::OwnVector< TrackingRecHit > & | hits | |||
) | [private] |
Process a single hit.
Definition at line 166 of file MuonSelector.cc.
References DetId::det(), detId, TrackingRecHit::geographicalId(), TrackingRecHit::isValid(), SiStripMatchedRecHit2D::monoHit(), ProjectedSiStripRecHit2D::originalHit(), pixelClusterRecords_, edm::OwnVector< T, P >::size(), SiStripMatchedRecHit2D::stereoHit(), stripClusterRecords_, and DetId::Tracker.
Referenced by processMuon().
00166 { 00167 //--- Skip the rest for this hit if we don't want to clone the cluster. 00168 //--- The copy constructer in the rec hit will copy the link properly. 00169 // 00170 00171 //std::cout << "| I'm cloing clusters, hit vector = " << (&hits) << std::endl; 00172 00173 const DetId detId( hit->geographicalId() ); 00174 if (hit->isValid() && (detId.det() == DetId::Tracker)) { 00175 //std::cout << "| It is a tracker hit" << std::endl; 00176 00177 const std::type_info & hit_type = typeid(*hit); 00178 if (hit_type == typeid(SiPixelRecHit)) { 00179 //std::cout << "| It is a Pixel hit !!" << std::endl; 00180 pixelClusterRecords_.push_back( PixelClusterHitRecord( static_cast<const SiPixelRecHit &>(*hit), &hits, hits.size() - 1) ); 00181 } else if (hit_type == typeid(SiStripRecHit2D)) { 00182 //std::cout << "| It is a SiStripRecHit2D hit !!" << std::endl; 00183 stripClusterRecords_.push_back( StripClusterHitRecord( static_cast<const SiStripRecHit2D &>(*hit), &hits, hits.size() - 1) ); 00184 } else if (hit_type == typeid(SiStripMatchedRecHit2D)) { 00185 //std::cout << "| It is a SiStripMatchedRecHit2D hit !!" << std::endl; 00186 const SiStripMatchedRecHit2D & mhit = static_cast<const SiStripMatchedRecHit2D &>(*hit); 00187 stripClusterRecords_.push_back( StripClusterHitRecord( *mhit.monoHit() , &hits, hits.size() - 1) ); 00188 stripClusterRecords_.push_back( StripClusterHitRecord( *mhit.stereoHit(), &hits, hits.size() - 1) ); 00189 } else if (hit_type == typeid(ProjectedSiStripRecHit2D)) { 00190 //std::cout << "| It is a ProjectedSiStripRecHit2D hit !!" << std::endl; 00191 const ProjectedSiStripRecHit2D & phit = static_cast<const ProjectedSiStripRecHit2D &>(*hit); 00192 stripClusterRecords_.push_back( StripClusterHitRecord( phit.originalHit(), &hits, hits.size() - 1) ); 00193 } else { 00194 //std::cout << "| It is a " << hit_type.name() << " hit !?" << std::endl; 00195 // do nothing. We might end up here for FastSim hits. 00196 } // end 'switch' on hit type 00197 } // end if it was a tracker hit 00198 00199 }
void helper::MuonCollectionStoreManager::processMuon | ( | const reco::Muon & | mu | ) | [private] |
Process a single muon.
Definition at line 72 of file MuonSelector.cc.
References reco::TrackExtraBase::add(), cloneClusters(), clusterRefsOK(), reco::Muon::combinedMuon(), reco::Muon::globalTrack(), hidx_, higbdx_, hisadx_, id_, idx_, igbd_, igbdx_, reco::Track::innerDetId(), reco::Track::innerMomentum(), reco::Track::innerOk(), reco::Track::innerPosition(), reco::Track::innerStateCovariance(), reco::Muon::innerTrack(), isad_, isadx_, edm::Ref< C, T, F >::isNonnull(), configurableAnalysis::Muon, reco::Track::outerDetId(), reco::Track::outerMomentum(), reco::Track::outerOk(), reco::Track::outerPosition(), reco::Track::outerStateCovariance(), processHit(), reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), rGBHits_, rGBTrackExtras_, rGBTracks_, rHits_, rSAHits_, rSATrackExtras_, rSATracks_, rTrackExtras_, rTracks_, reco::Track::seedDirection(), selGlobalMuonTracks_, selGlobalMuonTracksExtras_, selGlobalMuonTracksHits_, selMuons_, selStandAloneTracks_, selStandAloneTracksExtras_, selStandAloneTracksHits_, selTracks_, selTracksExtras_, selTracksHits_, reco::Track::setExtra(), reco::Muon::standAloneMuon(), and reco::Muon::track().
Referenced by cloneAndStore().
00073 { 00074 if (this->cloneClusters() 00075 && ( (mu.globalTrack().isNonnull() && !this->clusterRefsOK(*mu.globalTrack())) 00076 || (mu.innerTrack() .isNonnull() && !this->clusterRefsOK(*mu.innerTrack() )) 00077 // || (mu.outerTrack(). isNonnull() && !this->clusterRefsOK(*mu.outerTrack() )) 00078 )) { // outer track is muon only and has no strip clusters... 00079 // At least until CMSSW_2_1_8, global muon track reconstruction assigns wrong hits in 00080 // case of a track from iterative tracking. These hits are fetched from Trajectories 00081 // instead of from Tracks and therefore reference temporary cluster collections. 00082 // As a hack we skip these muons here - they can anyway not be refitted. 00083 edm::LogError("BadRef") << "@SUB=MuonCollectionStoreManager::processMuon" 00084 << "Skip muon: One of its tracks references " 00085 << "non-available clusters!"; 00086 return; 00087 } 00088 00089 selMuons_->push_back( Muon( mu ) ); 00090 // only tracker Muon Track 00091 selMuons_->back().setInnerTrack( TrackRef( rTracks_, id_ ++ ) ); 00092 TrackRef trkRef = mu.track(); 00093 if(trkRef.isNonnull()){ 00094 00095 selTracks_->push_back(Track( *trkRef) ); 00096 00097 Track & trk= selTracks_->back(); 00098 00099 selTracksExtras_->push_back( TrackExtra( trk.outerPosition(), trk.outerMomentum(), trk.outerOk(), 00100 trk.innerPosition(), trk.innerMomentum(), trk.innerOk(), 00101 trk.outerStateCovariance(), trk.outerDetId(), 00102 trk.innerStateCovariance(), trk.innerDetId(), 00103 trk.seedDirection() ) ); 00104 00105 TrackExtra & tx = selTracksExtras_->back(); 00106 00107 for( trackingRecHit_iterator hit = trk.recHitsBegin(); hit != trk.recHitsEnd(); ++ hit ) { 00108 selTracksHits_->push_back( (*hit)->clone() ); 00109 TrackingRecHit * newHit = & (selTracksHits_->back()); 00110 tx.add( TrackingRecHitRef( rHits_, hidx_ ++ ) ); 00111 if (cloneClusters()) processHit( newHit, *selTracksHits_ ); 00112 } // end of for loop over tracking rec hits on this track 00113 00114 trk.setExtra( TrackExtraRef( rTrackExtras_, idx_ ++ ) ); 00115 00116 }// TO trkRef.isNonnull 00117 00118 // global Muon Track 00119 selMuons_->back().setGlobalTrack( TrackRef( rGBTracks_, igbd_ ++ ) ); 00120 trkRef = mu.combinedMuon(); 00121 if(trkRef.isNonnull()){ 00122 selGlobalMuonTracks_->push_back(Track( *trkRef) ); 00123 Track & trk = selGlobalMuonTracks_->back(); 00124 00125 selGlobalMuonTracksExtras_->push_back( TrackExtra( trk.outerPosition(), trk.outerMomentum(), trk.outerOk(), 00126 trk.innerPosition(), trk.innerMomentum(), trk.innerOk(), 00127 trk.outerStateCovariance(), trk.outerDetId(), 00128 trk.innerStateCovariance(), trk.innerDetId(), trk.seedDirection() ) ); 00129 TrackExtra & tx = selGlobalMuonTracksExtras_->back(); 00130 for( trackingRecHit_iterator hit = trk.recHitsBegin(); hit != trk.recHitsEnd(); ++ hit ) { 00131 selGlobalMuonTracksHits_->push_back( (*hit)->clone() ); 00132 TrackingRecHit * newHit = & (selGlobalMuonTracksHits_->back()); 00133 tx.add( TrackingRecHitRef( rGBHits_, higbdx_ ++ ) ); 00134 if (cloneClusters()) processHit( newHit, *selGlobalMuonTracksHits_ ); 00135 } 00136 trk.setExtra( TrackExtraRef( rGBTrackExtras_, igbdx_ ++ ) ); 00137 00138 } // GB trkRef.isNonnull() 00139 00140 // stand alone Muon Track 00141 selMuons_->back().setOuterTrack( TrackRef( rSATracks_, isad_ ++ ) ); 00142 trkRef = mu.standAloneMuon(); 00143 if(trkRef.isNonnull()){ 00144 selStandAloneTracks_->push_back(Track( *trkRef) ); 00145 Track & trk = selStandAloneTracks_->back(); 00146 00147 selStandAloneTracksExtras_->push_back( TrackExtra( trk.outerPosition(), trk.outerMomentum(), trk.outerOk(), 00148 trk.innerPosition(), trk.innerMomentum(), trk.innerOk(), 00149 trk.outerStateCovariance(), trk.outerDetId(), 00150 trk.innerStateCovariance(), trk.innerDetId(), trk.seedDirection() ) ); 00151 TrackExtra & tx = selStandAloneTracksExtras_->back(); 00152 for( trackingRecHit_iterator hit = trk.recHitsBegin(); hit != trk.recHitsEnd(); ++ hit ) { 00153 selStandAloneTracksHits_->push_back( (*hit)->clone() ); 00154 tx.add( TrackingRecHitRef( rSAHits_, hisadx_ ++ ) ); 00155 } 00156 trk.setExtra( TrackExtraRef( rSATrackExtras_, isadx_ ++ ) ); 00157 00158 } // SA trkRef.isNonnull() 00159 }// end of track, and function
edm::OrphanHandle< reco::MuonCollection > helper::MuonCollectionStoreManager::put | ( | edm::Event & | evt | ) |
Put tracks, track extras and hits+clusters into the event.
Put Muons, tracks, track extras and hits+clusters into the event.
Definition at line 295 of file MuonSelector.cc.
References cloneClusters(), h, edm::Event::put(), selGlobalMuonTracks_, selGlobalMuonTracksExtras_, selGlobalMuonTracksHits_, selMuons_, selPixelClusters_, selStandAloneTracks_, selStandAloneTracksExtras_, selStandAloneTracksHits_, selStripClusters_, selTracks_, selTracksExtras_, and selTracksHits_.
00295 { 00296 edm::OrphanHandle<reco::MuonCollection> h; 00297 h = evt.put( selMuons_ , "SelectedMuons"); 00298 evt.put( selTracks_ , "TrackerOnly"); 00299 evt.put( selTracksExtras_ , "TrackerOnly"); 00300 evt.put( selTracksHits_ ,"TrackerOnly"); 00301 evt.put( selGlobalMuonTracks_,"GlobalMuon" ); 00302 evt.put( selGlobalMuonTracksExtras_ ,"GlobalMuon"); 00303 evt.put( selGlobalMuonTracksHits_,"GlobalMuon" ); 00304 evt.put( selStandAloneTracks_ ,"StandAlone"); 00305 evt.put( selStandAloneTracksExtras_ ,"StandAlone"); 00306 evt.put( selStandAloneTracksHits_ ,"StandAlone"); 00307 if (cloneClusters()) { 00308 evt.put( selStripClusters_ ); 00309 evt.put( selPixelClusters_ ); 00310 } 00311 return h; 00312 00313 }
Definition at line 46 of file MuonSelector.h.
References cloneClusters_.
00046 { cloneClusters_ = w; }
size_t helper::MuonCollectionStoreManager::size | ( | void | ) | const [inline] |
Get the size.
Definition at line 56 of file MuonSelector.h.
References selMuons_.
00056 { return selMuons_->size(); }
Clone clusters, or not? Default: true.
Definition at line 137 of file MuonSelector.h.
Referenced by cloneClusters(), and setCloneClusters().
size_t helper::MuonCollectionStoreManager::hidx_ [private] |
size_t helper::MuonCollectionStoreManager::higbdx_ [private] |
size_t helper::MuonCollectionStoreManager::hisadx_ [private] |
size_t helper::MuonCollectionStoreManager::id_ [private] |
size_t helper::MuonCollectionStoreManager::idx_ [private] |
size_t helper::MuonCollectionStoreManager::igbd_ [private] |
size_t helper::MuonCollectionStoreManager::igbdx_ [private] |
size_t helper::MuonCollectionStoreManager::isad_ [private] |
size_t helper::MuonCollectionStoreManager::isadx_ [private] |
std::vector<PixelClusterHitRecord> helper::MuonCollectionStoreManager::pixelClusterRecords_ [private] |
Definition at line 113 of file MuonSelector.h.
Referenced by cloneAndStore(), processAllClusters(), and processHit().
edm::RefProd< edmNew::DetSetVector<SiPixelCluster> > helper::MuonCollectionStoreManager::rPixelClusters_ [private] |
Definition at line 123 of file MuonSelector.h.
Referenced by cloneAndStore(), and processAllClusters().
edm::RefProd< edmNew::DetSetVector<SiStripCluster> > helper::MuonCollectionStoreManager::rStripClusters_ [private] |
Definition at line 122 of file MuonSelector.h.
Referenced by cloneAndStore(), and processAllClusters().
std::auto_ptr<reco::TrackCollection> helper::MuonCollectionStoreManager::selGlobalMuonTracks_ [private] |
std::auto_ptr<reco::TrackExtraCollection> helper::MuonCollectionStoreManager::selGlobalMuonTracksExtras_ [private] |
std::auto_ptr<TrackingRecHitCollection> helper::MuonCollectionStoreManager::selGlobalMuonTracksHits_ [private] |
std::auto_ptr<reco::MuonCollection> helper::MuonCollectionStoreManager::selMuons_ [private] |
std::auto_ptr< edmNew::DetSetVector<SiPixelCluster> > helper::MuonCollectionStoreManager::selPixelClusters_ [private] |
std::auto_ptr<reco::TrackCollection> helper::MuonCollectionStoreManager::selStandAloneTracks_ [private] |
std::auto_ptr<reco::TrackExtraCollection> helper::MuonCollectionStoreManager::selStandAloneTracksExtras_ [private] |
std::auto_ptr<TrackingRecHitCollection> helper::MuonCollectionStoreManager::selStandAloneTracksHits_ [private] |
std::auto_ptr< edmNew::DetSetVector<SiStripCluster> > helper::MuonCollectionStoreManager::selStripClusters_ [private] |
std::auto_ptr<reco::TrackCollection> helper::MuonCollectionStoreManager::selTracks_ [private] |
std::auto_ptr<reco::TrackExtraCollection> helper::MuonCollectionStoreManager::selTracksExtras_ [private] |
std::auto_ptr<TrackingRecHitCollection> helper::MuonCollectionStoreManager::selTracksHits_ [private] |
std::vector<StripClusterHitRecord> helper::MuonCollectionStoreManager::stripClusterRecords_ [private] |
Definition at line 112 of file MuonSelector.h.
Referenced by cloneAndStore(), processAllClusters(), and processHit().