CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/DataFormats/RecoCandidate/interface/RecoChargedCandidate.h

Go to the documentation of this file.
00001 #ifndef RecoCandidate_RecoChargedCandidate_h
00002 #define RecoCandidate_RecoChargedCandidate_h
00003 
00012 #include "DataFormats/RecoCandidate/interface/RecoCandidate.h"
00013 
00014 namespace reco {
00015 
00016   class RecoChargedCandidate : public RecoCandidate {
00017   public:
00019     RecoChargedCandidate() : RecoCandidate() { }
00021     RecoChargedCandidate( Charge q , const LorentzVector & p4, const Point & vtx = Point( 0, 0, 0 ),
00022                           int pdgId = 0, int status = 0 ) :
00023       RecoCandidate( q, p4, vtx, pdgId, status ) { }
00025     RecoChargedCandidate( Charge q , const PolarLorentzVector & p4, const Point & vtx = Point( 0, 0, 0 ),
00026                           int pdgId = 0, int status = 0 ) :
00027       RecoCandidate( q, p4, vtx, pdgId, status ) { }
00029     virtual ~RecoChargedCandidate();
00031     virtual RecoChargedCandidate * clone() const;
00033     void setTrack( const reco::TrackRef & r ) { track_ = r; }
00035     virtual reco::TrackRef track() const;
00036 
00037   private:
00039     virtual bool overlap( const Candidate & ) const;
00041     reco::TrackRef track_;
00042   };
00043   
00044 }
00045 
00046 #endif