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

PL273B181.hh

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef RIVET_PL273B181_HH
00003 #define RIVET_PL273B181_HH
00004 
00005 #include "Rivet/Analysis.hh"
00006 #include "Rivet/Projections/Multiplicity.hh"
00007 #include "Rivet/RivetAIDA.fhh"
00008 
00009 
00010 namespace Rivet {
00011 
00012   /// This analysis just measures the charged multiplicity.
00013   class PL273B181 : public Analysis {
00014 
00015   public:
00016 
00017     /// Default constructor.
00018     inline PL273B181()
00019       : _multproj(_fsproj)
00020     { 
00021       setBeams(ELECTRON, POSITRON); 
00022       addProjection(_fsproj);
00023       addProjection(_multproj);
00024     }
00025 
00026   public:
00027 
00028 
00029     /// Factory method
00030     static Analysis* create() { return new PL273B181(); }
00031 
00032     /// Return the name of this analysis.
00033     inline string getName() const {
00034       return "PL273B181";
00035     }
00036 
00037     virtual void init();
00038 
00039     virtual void analyze(const Event & event);
00040 
00041     virtual void finalize();
00042 
00043   private:
00044 
00045     /// @name The projectors used by this analysis.
00046     //{
00047     FinalState _fsproj;
00048 
00049     Multiplicity _multproj;
00050     //}
00051 
00052   private:
00053 
00054     /// Hide the assignment operator
00055     PL273B181& operator=(const PL273B181&);
00056 
00057     /// @name Histograms
00058     //@{
00059     AIDA::IHistogram1D* _histChTot;
00060     //@}
00061 
00062   };
00063 
00064 }
00065 
00066 
00067 #endif