Rivet
1.8.0
|
00001 // -*- C++ -*- 00002 #ifndef RIVET_InitialQuarks_HH 00003 #define RIVET_InitialQuarks_HH 00004 00005 #include "Rivet/Projection.hh" 00006 #include "Rivet/Particle.hh" 00007 #include "Rivet/Event.hh" 00008 00009 namespace Rivet { 00010 00011 00016 class InitialQuarks : public Projection { 00017 public: 00018 00020 00021 00022 00023 InitialQuarks() 00024 { 00025 setName("InitialQuarks"); 00026 } 00027 00028 00030 virtual const Projection* clone() const { 00031 return new InitialQuarks(*this); 00032 } 00034 00036 virtual const ParticleVector& particles() const { return _theParticles; } 00037 00039 virtual bool empty() const { return _theParticles.empty(); } 00041 virtual bool isEmpty() const { return _theParticles.empty(); } 00042 00043 00044 protected: 00045 00047 virtual void project(const Event& e); 00048 00050 virtual int compare(const Projection& p) const; 00051 00052 00053 protected: 00054 00056 ParticleVector _theParticles; 00057 00058 }; 00059 00060 } 00061 00062 00063 #endif