Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

WZandh.hh

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef RIVET_WZandh_HH
00003 #define RIVET_WZandh_HH
00004 
00005 #include "Rivet/Projection.hh"
00006 #include "Rivet/Particle.hh"
00007 #include "Rivet/Event.hh"
00008 
00009 
00010 namespace Rivet {
00011 
00012   /// Project out the vector bosons and Higgs particles.
00013   class WZandh: public Projection {
00014     
00015   public:
00016     
00017     /// @name Standard constructors and destructors. */
00018     //@{
00019     /// The default constructor. 
00020     inline WZandh() {}
00021     
00022   public:
00023     /// Return the name of the projection
00024     inline string getName() const {
00025       return "WZandh";
00026     }
00027     
00028   protected:
00029     
00030     /// Apply the projection to the event.
00031     void project(const Event& e);
00032     
00033     /// Compare projections.
00034     int compare(const Projection& p) const;
00035     
00036   public:
00037     
00038     /// Access the Z's decayed to e+e-
00039     inline const ParticleVector& Zees() const { return _theZees; }
00040 
00041     /// Access the W's decayed to e neutrino
00042     inline const ParticleVector& Wens() const { return _theWens; }
00043 
00044     /// Access the W's decayed to mu neutrino
00045     inline const ParticleVector& Wmns() const { return _theWmns; }
00046 
00047     /// Access the Z's decayed to mu mu
00048     inline const ParticleVector& Zmms() const { return _theZmms; }
00049 
00050     /// Access the W's decayed to tau neutrino
00051     inline const ParticleVector& Wtns() const { return _theWtns; }
00052 
00053     /// Access the Z's decayed to tau tau
00054     inline const ParticleVector& Ztts() const { return _theZtts; }
00055 
00056     /// Access the Z's decayed to nu nu
00057     inline const ParticleVector& Znns() const { return _theZnns; }
00058 
00059     /// Access the W's decayed to qq
00060     inline const ParticleVector& Wqqs() const { return _theWqqs; }
00061 
00062     /// Access the Z's decayed to qq
00063     inline const ParticleVector& Zqqs() const { return _theZqqs; }
00064 
00065     /// Access Higgses
00066     inline const ParticleVector& hs() const { return _thehs; }
00067     
00068   private:
00069     
00070     /// @name The particles.
00071     //@{
00072     ParticleVector _theWens;
00073     ParticleVector _theZees;
00074     ParticleVector _theWmns;
00075     ParticleVector _theZmms;
00076     ParticleVector _theWtns;
00077     ParticleVector _theZtts;
00078     ParticleVector _theZnns;
00079     ParticleVector _theWqqs;
00080     ParticleVector _theZqqs;
00081     ParticleVector _thehs;
00082     //@}
00083         
00084   };
00085   
00086 }
00087 
00088 
00089 #endif