1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
#ifndef gen_ExhumeHadronizer_h
#define gen_ExhumeHadronizer_h
#include <memory>
#include <string>
#include <vector>
#include "FWCore/ParameterSet/interface/ParameterSetfwd.h"
#include "GeneratorInterface/Core/interface/BaseHadronizer.h"
namespace lhef {
class LHERunInfo;
class LHEEvent;
} // namespace lhef
class LHEEventProduct;
namespace HepMC {
class GenEvent;
}
namespace Exhume {
class Event;
class CrossSection;
} // namespace Exhume
namespace CLHEP {
class HepRandomEngine;
}
namespace gen {
//class Pythia6Hadronizer;
class Pythia6Service;
class ExhumeHadronizer : public BaseHadronizer {
public:
ExhumeHadronizer(edm::ParameterSet const& ps);
~ExhumeHadronizer() override;
// bool generatePartons();
bool generatePartonsAndHadronize();
bool hadronize();
bool decay();
bool residualDecay();
bool readSettings(int);
bool initializeForExternalPartons();
bool initializeForInternalPartons();
bool declareStableParticles(const std::vector<int>&);
bool declareSpecialSettings(const std::vector<std::string>&);
void finalizeEvent();
void statistics();
const char* classname() const;
private:
void doSetRandomEngine(CLHEP::HepRandomEngine* v) override;
std::vector<std::string> const& doSharedResources() const override { return theSharedResources; }
static const std::vector<std::string> theSharedResources;
Pythia6Service* pythia6Service_;
CLHEP::HepRandomEngine* randomEngine_;
double comEnergy_;
//edm::ParameterSet processPSet_;
//edm::ParameterSet paramsPSet_;
edm::ParameterSet myPSet_;
bool hepMCVerbosity_;
unsigned int maxEventsToPrint_;
unsigned int pythiaListVerbosity_;
bool convertToPDG_;
//Pythia6Hadronizer* pythia6Hadronizer_;
Exhume::Event* exhumeEvent_;
Exhume::CrossSection* exhumeProcess_;
};
} // namespace gen
#endif
|