agile is hosted by Hepforge, IPPP Durham

Run.hh

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef AGILE_RUN_HH
00003 #define AGILE_RUN_HH
00004 
00005 #include "AGILe/AGILe.hh"
00006 #include "AGILe/Generator.hh"
00007 #include "HepMC/GenEvent.h"
00008 #include "HepMC/IO_GenEvent.h"
00009 
00010 namespace AGILe {
00011 
00012 
00014   class Run {
00015   public:
00016 
00021     enum FilterLevel { NOFILT=0, DOCFILT=1, UNSTABLEFILT=2 };
00022 
00024     Run(Generator& gen);
00025 
00027     Run(Generator& gen, const std::string& evtfile="-", int precision=16);
00028 
00029     // /// Destructor
00030     // ~Run();
00031 
00033     void setFilter(FilterLevel filt=DOCFILT) {
00034       _filter = filt;
00035     }
00036 
00038     bool makeEvent();
00039 
00041     const HepMC::GenEvent& event() const {
00042       return _evt;
00043     }
00044 
00046     std::string eventSummary() const;
00047 
00048 
00049   private:
00050 
00052     Generator* _gen;
00053 
00055     FilterLevel _filter;
00056 
00058     HepMC::GenEvent _evt;
00059 
00061     shared_ptr<std::ostream> _ostr;
00062 
00064     shared_ptr<HepMC::IO_GenEvent> _io;
00065 
00066   };
00067 
00068 
00069 }
00070 
00071 #endif
Generated on Tue Mar 6 10:39:39 2012 for AGILe - A Generator Interface Library (+ executable) by  doxygen 1.6.3