CMS 3D CMS Logo

RecoCandidate.cc

Go to the documentation of this file.
00001 // $Id: RecoCandidate.cc,v 1.14 2008/07/18 15:48:32 gpetrucc Exp $
00002 #include "DataFormats/RecoCandidate/interface/RecoCandidate.h"
00003 #include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
00004 
00005 using namespace reco;
00006 
00007 RecoCandidate::~RecoCandidate() { }
00008 
00009 TrackRef RecoCandidate::track() const {
00010   return TrackRef();
00011 }
00012 
00013 TrackRef RecoCandidate::track( size_t ) const {
00014   return TrackRef();
00015 }
00016 
00017 size_t RecoCandidate::numberOfTracks() const {
00018   return 0;
00019 }
00020 
00021 GsfTrackRef RecoCandidate::gsfTrack() const {
00022   return GsfTrackRef();
00023 }
00024 
00025 TrackRef RecoCandidate::standAloneMuon() const {
00026   return TrackRef();
00027 }
00028 
00029 TrackRef RecoCandidate::combinedMuon() const {
00030   return TrackRef();
00031 }
00032 
00033 SuperClusterRef RecoCandidate::superCluster() const {
00034   return SuperClusterRef();
00035 }
00036 
00037 CaloTowerRef RecoCandidate::caloTower() const {
00038   return CaloTowerRef();
00039 }
00040 
00041 const Track * RecoCandidate::bestTrack() const {
00042   TrackRef muRef = combinedMuon();
00043   if( muRef.isNonnull() ) 
00044     return muRef.get();
00045   TrackRef trkRef = track();
00046   if ( trkRef.isNonnull() ) 
00047     return trkRef.get();
00048   GsfTrackRef gsfTrkRef = gsfTrack();
00049   if ( gsfTrkRef.isNonnull() )
00050     return gsfTrkRef.get();
00051   TrackRef staRef = standAloneMuon(); 
00052   if ( staRef.isNonnull() ) 
00053     return staRef.get(); 
00054   return 0;
00055 }
00056 
00057 TrackBaseRef RecoCandidate::bestTrackRef() const {
00058   TrackRef muRef = combinedMuon();
00059   if( muRef.isNonnull() ) return TrackBaseRef(muRef);
00060   TrackRef trkRef = track();
00061   if ( trkRef.isNonnull() ) return TrackBaseRef(trkRef);
00062   GsfTrackRef gsfTrkRef = gsfTrack();
00063   if ( gsfTrkRef.isNonnull() ) return TrackBaseRef(gsfTrkRef);
00064   TrackRef staRef = standAloneMuon(); 
00065   if ( staRef.isNonnull() ) return TrackBaseRef(staRef); 
00066   return TrackBaseRef();
00067 }
00068 
00069 
00070 RecoCandidate::TrackType RecoCandidate::bestTrackType() const {
00071   if( combinedMuon().isNonnull() ) 
00072     return recoTrackType;
00073   if ( track().isNonnull() ) 
00074     return recoTrackType;
00075   if ( gsfTrack().isNonnull() ) 
00076     return gsfTrackType;
00077   return noTrackType;
00078 }

Generated on Tue Jun 9 17:31:41 2009 for CMSSW by  doxygen 1.5.4