00001 #ifndef Input_MCFileSource_h 00002 #define Input_MCFileSource_h 00003 00004 // $Id: MCFileSource.h,v 1.4 2007/05/29 21:00:22 weng Exp $ 00005 00012 #include "FWCore/Sources/interface/ExternalInputSource.h" 00013 00014 00015 class HepMCFileReader; 00016 00017 namespace HepMC{ 00018 class GenEvent; 00019 } 00020 00021 00022 namespace edm 00023 { 00024 class Event; 00025 class ParameterSet; 00026 class InputSourceDescription; 00027 00028 class MCFileSource : public ExternalInputSource { 00029 public: 00030 MCFileSource(const ParameterSet& pset, const InputSourceDescription& desc); 00031 virtual ~MCFileSource(); 00032 00033 private: 00034 virtual bool produce(Event &e); 00035 void clear(); 00036 00037 HepMCFileReader *reader_; 00038 HepMC::GenEvent *evt_; 00039 bool useExtendedAscii_; 00040 }; 00041 } 00042 00043 #endif