00001 // 00002 // $Id: CompositeCandidate.h,v 1.2 2008/11/28 19:25:02 lowette Exp $ 00003 // 00004 00005 #ifndef DataFormats_PatCandidates_CompositeCandidate_h 00006 #define DataFormats_PatCandidates_CompositeCandidate_h 00007 00019 #include "DataFormats/Candidate/interface/CompositeCandidate.h" 00020 #include "DataFormats/PatCandidates/interface/PATObject.h" 00021 00022 00023 // Define typedefs for convenience 00024 namespace pat { 00025 class CompositeCandidate; 00026 typedef std::vector<CompositeCandidate> CompositeCandidateCollection; 00027 typedef edm::Ref<CompositeCandidateCollection> CompositeCandidateRef; 00028 typedef edm::RefVector<CompositeCandidateCollection> CompositeCandidateRefVector; 00029 } 00030 00031 00032 // Class definition 00033 namespace pat { 00034 00035 00036 class CompositeCandidate : public PATObject<reco::CompositeCandidate> { 00037 00038 public: 00039 00041 CompositeCandidate(); 00043 CompositeCandidate(const reco::CompositeCandidate & aCompositeCandidate); 00045 virtual ~CompositeCandidate(); 00046 00048 virtual CompositeCandidate * clone() const { return new CompositeCandidate(*this); } 00049 00050 }; 00051 00052 00053 } 00054 00055 #endif