![]() |
![]() |
00001 #ifndef IOMC_Input_MCFileSource_h 00002 #define IOMC_Input_MCFileSource_h 00003 00010 #include "FWCore/Sources/interface/ProducerSourceFromFiles.h" 00011 00012 class HepMCFileReader; 00013 00014 namespace HepMC{ 00015 class GenEvent; 00016 } 00017 00018 namespace edm { 00019 class Event; 00020 class EventID; 00021 struct InputSourceDescription; 00022 class ParameterSet; 00023 class Timestamp; 00024 00025 class MCFileSource : public ProducerSourceFromFiles { 00026 public: 00027 MCFileSource(const ParameterSet& pset, const InputSourceDescription& desc); 00028 virtual ~MCFileSource(); 00029 00030 private: 00031 virtual bool setRunAndEventInfo(EventID&, TimeValue_t& time); 00032 virtual void produce(Event &e); 00033 void clear(); 00034 00035 HepMCFileReader *reader_; 00036 HepMC::GenEvent *evt_; 00037 bool useExtendedAscii_; 00038 }; 00039 } 00040 00041 #endif