00001 #ifndef DurhamProtoJet_h 00002 #define DurhamProtoJet_h 00003 00005 // 00006 // CLASS : DurhamProtoJet 00007 // Object used to compute jets with Durham 00008 // 00009 // Written by J.P. Wellisch, 25. Jan 1999 00010 // adapted to Alpha++ by C.Delaere 00011 // 00013 00014 #include <vector> 00015 #include "CLHEP/Vector/LorentzVector.h" 00016 class QvecBase; 00017 00019 class DurhamProtoJet 00020 { 00021 public: 00023 DurhamProtoJet(const QvecBase & alobj); 00025 DurhamProtoJet & operator+=(const DurhamProtoJet & aJet); 00027 double getYTimesE2(const DurhamProtoJet * aJet); 00029 vector<DurhamProtoJet>::iterator findNextNeighbour(const vector<DurhamProtoJet> & theProtoJets); 00031 const vector<const QvecBase *> getConstituants() const {return theConstituants;} 00033 static int Scheme; 00035 const HepLorentzVector & get4Momentum() const { return theFourMomentum;} 00036 00037 private: 00038 HepLorentzVector theFourMomentum; 00039 vector<const QvecBase *> theConstituants; 00040 00041 }; 00042 00043 #endif 00044 00045 00046 00047