Go to the documentation of this file.00001 #ifndef DataFormats_PatCandidates_interface_HardEventHypothesis_h
00002 #define DataFormats_PatCandidates_interface_HardEventHypothesis_h
00003
00004
00005
00006
00008
00009
00010
00011
00016
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097 #include "DataFormats/Candidate/interface/Candidate.h"
00098 #include "DataFormats/PatCandidates/interface/Electron.h"
00099 #include "DataFormats/PatCandidates/interface/Muon.h"
00100 #include "DataFormats/PatCandidates/interface/Jet.h"
00101 #include "DataFormats/PatCandidates/interface/Photon.h"
00102 #include "DataFormats/PatCandidates/interface/MET.h"
00103 #include "DataFormats/PatCandidates/interface/Tau.h"
00104 #include "DataFormats/Candidate/interface/CompositeCandidate.h"
00105 #include <vector>
00106
00107 class StarterKit;
00108
00109 namespace pat {
00110
00111 class HardEventHypothesis {
00112 public:
00113
00114
00115 friend class StarterKit;
00116
00117
00118 inline void setQuality( float q ) { quality_ = q;}
00119
00120
00121 inline float getQuality() const { return quality_; }
00122
00123
00124 virtual const char * getCandidateRole ( int i = 0 ) const = 0;
00125
00126 virtual bool getIsVector(int i = 0) const = 0;
00127
00128 protected:
00129
00130
00131
00132
00133
00134
00135 virtual reco::Candidate & getCandidate (std::string name, int irole = -1) = 0;
00136
00137 float quality_;
00138 };
00139
00140 }
00141
00142 #endif