10#ifndef Generator_KKMC_H
11#define Generator_KKMC_H
13#include "GaudiKernel/Algorithm.h"
14#include "GaudiKernel/ISvcLocator.h"
18class KKMC:
public Algorithm
22 KKMC(
const std::string& name, ISvcLocator* pSvcLocator);
30 int m_numberEventPrint;
32 std::vector<int> m_kkseed;
34 double m_cmsEnergySpread;
35 bool m_generateResonance;
36 bool m_generateContinuum;
37 bool m_generateDownQuark;
38 bool m_generateUpQuark;
39 bool m_generateStrangeQuark;
40 bool m_generateCharmQuark;
41 bool m_generateBottomQuark;
42 bool m_generateMuonPair;
43 bool m_generateTauPair;
48 bool m_generatePsiPrime;
49 bool m_generatePsi3770;
50 double m_DdbarCutPsi3770;
51 bool m_generatePsi4030;
52 bool m_generatePsi4160;
53 bool m_generatePsi4415;
54 bool m_generatePsi4260;
57 bool m_ReadEcmsFromDB;
60 std::vector<double> m_paramRho;
61 std::vector<double> m_paramRh2;
62 std::vector<double> m_paramRh3;
63 std::vector<double> m_paramOme;
64 std::vector<double> m_paramOm2;
65 std::vector<double> m_paramOm3;
66 std::vector<double> m_paramPhi;
67 std::vector<double> m_paramPh2;
68 std::vector<double> m_paramPsi;
69 std::vector<double> m_paramPs2;
70 std::vector<double> m_paramPs3;
71 std::vector<double> m_paramPs4;
72 std::vector<double> m_paramPs5;
73 std::vector<double> m_paramPs6;
74 std::vector<double> m_paramPs7;
75 std::vector<double> m_paramPs8;
76 std::vector<double> m_paramUps;
77 std::vector<double> m_paramUp2;
78 std::vector<double> m_paramUp3;
79 std::vector<double> m_paramUp4;
80 std::vector<double> m_paramUp5;
81 std::vector<double> m_paramUp6;
82 std::vector<double> m_paramZeta;
83 std::vector<double> m_paramW;
84 std::vector<std::string> m_pypars;
92 double m_ps4toD0D0Star;
93 double m_ps4toDpDmStar;
94 double m_ps4toD0StarD0Star;
95 double m_ps4toDpStarDmStar;
100 double m_ps5toD0D0Star;
101 double m_ps5toDpDmStar;
102 double m_ps5toDsDsStar;
103 double m_ps5toD0StarD0Star;
104 double m_ps5toDpStarDmStar;
107 bool m_radiationCorrection;
manage multiple CLHEP random engines as named streams