00001 #ifndef PomwigSource_h 00002 #define PomwigSource_h 00003 00011 #include "FWCore/Framework/interface/GeneratedInputSource.h" 00012 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00013 #include "FWCore/ServiceRegistry/interface/Service.h" 00014 #include <map> 00015 #include <string> 00016 #include "HepMC/GenEvent.h" 00017 00018 class Run; 00019 00020 namespace edm 00021 { 00022 class PomwigSource : public GeneratedInputSource { 00023 00024 public: 00025 00026 PomwigSource(const ParameterSet &, const InputSourceDescription &); 00027 virtual ~PomwigSource(); 00028 00029 void endRun( Run& r); 00030 00031 private: 00032 00033 virtual bool produce(Event & e); 00034 void clear(); 00035 00036 bool hwgive(const std::string& iParm ); 00037 bool setRngSeeds(int); 00038 00039 HepMC::GenEvent *evt; 00040 int herwigVerbosity_; 00041 bool herwigHepMCVerbosity_; 00042 int herwigLhapdfVerbosity_; 00043 int maxEventsToPrint_; 00044 double comenergy; 00045 std::string lhapdfSetPath_; 00046 bool useJimmy_; 00047 bool doMPInteraction_; 00048 bool printCards_; 00049 int numTrials_; 00050 00051 double extCrossSect; 00052 double intCrossSect; 00053 double extFilterEff; 00054 00055 double survivalProbability; 00056 int diffTopology; 00057 bool enableForcedDecays; 00058 00059 }; 00060 } 00061 00062 #endif