Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:35:56

0001 #ifndef DataFormats_ParticleFlowReco_PFV0_h
0002 #define DataFormats_ParticleFlowReco_PFV0_h
0003 
0004 #include "DataFormats/TrackReco/interface/Track.h"
0005 #include "DataFormats/ParticleFlowReco/interface/PFRecTrack.h"
0006 #include "DataFormats/ParticleFlowReco/interface/PFRecTrackFwd.h"
0007 #include "DataFormats/ParticleFlowReco/interface/PFV0Fwd.h"
0008 #include "DataFormats/Candidate/interface/VertexCompositeCandidate.h"
0009 #include "DataFormats/Candidate/interface/VertexCompositeCandidateFwd.h"
0010 #include <iostream>
0011 #include <vector>
0012 
0013 class Conversion;
0014 
0015 namespace reco {
0016 
0017   class PFV0 {
0018   public:
0019     /// Default constructor
0020     PFV0() {}
0021 
0022     PFV0(const reco::VertexCompositeCandidateRef V0,
0023          const std::vector<reco::PFRecTrackRef>& pftr,
0024          const std::vector<reco::TrackRef>& tr)
0025         : originalV0_(V0), pfTracks_(pftr), tracks_(tr) {}
0026 
0027     /// destructor
0028     ~PFV0() {}
0029 
0030     /// Ref to the original V0
0031     const reco::VertexCompositeCandidateRef& originalV0() const { return originalV0_; }
0032 
0033     /// Vector of a Refs of PFRecTrack
0034     const std::vector<reco::PFRecTrackRef>& pfTracks() const { return pfTracks_; }
0035 
0036     /// Vector of a Refs of Track
0037     const std::vector<reco::TrackRef>& Tracks() const { return tracks_; }
0038 
0039   private:
0040     reco::VertexCompositeCandidateRef originalV0_;
0041     std::vector<reco::PFRecTrackRef> pfTracks_;
0042     std::vector<reco::TrackRef> tracks_;
0043   };
0044 
0045 }  // namespace reco
0046 
0047 #endif