CLHEP/HepMC/GenEventConvert.h

00001 // $Id: GenEventConvert.h,v 1.1 2002/05/30 23:51:17 garren Exp $
00002 // ----------------------------------------------------------------------
00003 //
00004 // GenEventConvert.h
00005 //
00006 //  defines methods to build GenEvent from some set of common blocks
00007 //  also fill the common blocks from GenEvent
00008 //  Specific implementation is found in the common block class.
00009 //
00010 //  We plan to use this template with other common block sets (e.g. pythia)
00011 //
00012 // ----------------------------------------------------------------------
00013 #ifndef GENEVENTCONVERT_H
00014 #define GENEVENTCONVERT_H
00015 
00016 #include <map>
00017 #include <vector>
00018 
00019 #include "CLHEP/HepMC/CBInterface.h"
00020 #include "CLHEP/HepMC/GenEvent.h"
00021 #include "CLHEP/HepMC/HepMCConfig.h"
00022 
00023 namespace HepMC {
00024 
00029 template<class S>
00030 class GenEventConvert {
00031 
00032 public:
00033 
00034   GenEventConvert( bool p=true )
00035   : itsInconsitencyErrors( p )
00036   { ; }
00037   ~GenEventConvert() {;}
00038 
00039   // conversion methods
00040   GenEvent * getGenEventfromHEPEVT();
00041   bool       toGenEvent( GenEvent * );
00042   bool       fromGenEvent( const GenEvent * );
00043   bool       addtoHEPEVT( const GenEvent * );
00044 
00045   // decide how to deal with HEPEVT
00046   bool  printInconsistencyErrors() const { return itsInconsitencyErrors; }
00047   void  setInconsitencyErrors( bool b ) { itsInconsitencyErrors = b; }
00048 
00049 private:
00050 
00051   bool itsInconsitencyErrors; 
00052 
00053 };
00054 
00055 } // HepMC
00056 
00057 #include "CLHEP/HepMC/GenEventConvert.icc"
00058 
00059 #endif // GENEVENTCONVERT_H

Class Library for High Energy Physics (version 1.8)