00001 #ifndef ParticleFlowCandidate_PFCandidatePhotonExtra_h 00002 #define ParticleFlowCandidate_PFCandidatePhotonExtra_h 00003 00004 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00005 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" 00006 #include "DataFormats/EgammaCandidates/interface/ConversionFwd.h" 00007 00008 #include <iosfwd> 00009 00010 namespace reco { 00016 class PFCandidatePhotonExtra { 00017 public: 00019 PFCandidatePhotonExtra(); 00021 PFCandidatePhotonExtra(const reco::SuperClusterRef&); 00023 ~PFCandidatePhotonExtra(){;} 00024 00025 // variables for the single conversion identification 00026 00028 reco::SuperClusterRef superClusterRef() const {return scRef_ ; } 00029 00031 void addSingleLegConvTrackRef(const reco::TrackRef& trackref); 00032 00034 const std::vector<reco::TrackRef>& singleLegConvTrackRef() const {return assoSingleLegRefTrack_;} 00035 00037 void addSingleLegConvMva(float& mvasingleleg); 00038 00040 const std::vector<float>& singleLegConvMva() const {return assoSingleLegMva_;} 00041 00043 void addConversionRef(const reco::ConversionRef& convref); 00044 00046 reco::ConversionRefVector conversionRef() const {return assoConversionsRef_;} 00047 00048 00049 private: 00050 00052 reco::SuperClusterRef scRef_; 00053 00055 std::vector<reco::TrackRef> assoSingleLegRefTrack_; 00056 00058 std::vector<float> assoSingleLegMva_; 00059 00061 reco::ConversionRefVector assoConversionsRef_; 00062 00063 }; 00064 } 00065 #endif