10#ifndef Generator_KKMC_H
11#define Generator_KKMC_H
13#include "GaudiKernel/Algorithm.h"
14#include "GaudiKernel/ISvcLocator.h"
15#include "MeasuredEcmsSvc/IMeasuredEcmsSvc.h"
19class KKMC:
public Algorithm
23 KKMC(
const std::string& name, ISvcLocator* pSvcLocator);
32 int m_numberEventPrint;
35 std::vector<int> m_kkseed;
37 double m_cmsEnergySpread;
38 bool m_generateResonance;
39 bool m_generateContinuum;
40 bool m_generateDownQuark;
41 bool m_generateUpQuark;
42 bool m_generateStrangeQuark;
43 bool m_generateCharmQuark;
44 bool m_generateBottomQuark;
45 bool m_generateMuonPair;
46 bool m_generateTauPair;
51 bool m_generatePsiPrime;
52 bool m_generatePsi3770;
53 double m_DdbarCutPsi3770;
54 bool m_generatePsi4030;
55 bool m_generatePsi4160;
56 bool m_generatePsi4415;
57 bool m_generatePsi4260;
61 bool m_RdMeasuredEcms;
64 std::vector<double> m_paramRho;
65 std::vector<double> m_paramRh2;
66 std::vector<double> m_paramRh3;
67 std::vector<double> m_paramOme;
68 std::vector<double> m_paramOm2;
69 std::vector<double> m_paramOm3;
70 std::vector<double> m_paramPhi;
71 std::vector<double> m_paramPh2;
72 std::vector<double> m_paramPsi;
73 std::vector<double> m_paramPs2;
74 std::vector<double> m_paramPs3;
75 std::vector<double> m_paramPs4;
76 std::vector<double> m_paramPs5;
77 std::vector<double> m_paramPs6;
78 std::vector<double> m_paramPs7;
79 std::vector<double> m_paramPs8;
80 std::vector<double> m_paramUps;
81 std::vector<double> m_paramUp2;
82 std::vector<double> m_paramUp3;
83 std::vector<double> m_paramUp4;
84 std::vector<double> m_paramUp5;
85 std::vector<double> m_paramUp6;
86 std::vector<double> m_paramZeta;
87 std::vector<double> m_paramW;
88 std::vector<std::string> m_pypars;
89 std::vector<double> m_beam1PolVec,m_beam2PolVec;
97 double m_ps4toD0D0Star;
98 double m_ps4toDpDmStar;
99 double m_ps4toD0StarD0Star;
100 double m_ps4toDpStarDmStar;
105 double m_ps5toD0D0Star;
106 double m_ps5toDpDmStar;
107 double m_ps5toDsDsStar;
108 double m_ps5toD0StarD0Star;
109 double m_ps5toDpStarDmStar;
112 bool m_radiationCorrection;
manage multiple CLHEP random engines as named streams