File indexing completed on 2024-09-27 07:03:38
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 #ifndef STARLIGHTPYTHIA_H
0022 #define STARLIGHTPYTHIA_H
0023
0024 #include "eXevent.h"
0025 #include "inputParameters.h"
0026 #include "beambeamsystem.h"
0027 #include "eventchannel.h"
0028
0029 class spectrum;
0030
0031 class starlightPythia : public eventChannel
0032 {
0033
0034 public:
0035
0036 starlightPythia(const inputParameters& input, beamBeamSystem& bbsystem);
0037 virtual ~starlightPythia();
0038
0039 int init(std::string pythiaParams, bool fullEventRecord = false);
0040
0041 virtual eXEvent produceEvent();
0042
0043 virtual eXEvent produceSingleEvent(int , float ){return eXEvent();}
0044
0045 virtual eXEvent produceDoubleEvent(){return eXEvent();}
0046
0047 virtual starlightConstants::event produceEvent(int& ){ return starlightConstants::event();}
0048
0049 void setSingleMode() {
0050 _doDoubleEvent = false;
0051 }
0052
0053 void setDoubleMode() {
0054 _doDoubleEvent = true;
0055 }
0056
0057 void setMinGammaEnergy(double energy) {
0058 _minGammaEnergy = energy;
0059 }
0060
0061 void setMaxGammaEnergy(double energy) {
0062 _maxGammaEnergy = energy;
0063 }
0064
0065 void setFullEventRecord(bool fer = true) { _fullEventRecord = fer; }
0066
0067 private:
0068
0069
0070 spectrum *_spectrum;
0071
0072
0073 bool _doDoubleEvent;
0074
0075
0076 double _minGammaEnergy;
0077
0078
0079 double _maxGammaEnergy;
0080
0081
0082 bool _fullEventRecord;
0083
0084
0085 starlightPythia();
0086 starlightPythia(const starlightPythia& other);
0087 starlightPythia& operator=(const starlightPythia& other);
0088 bool operator==(const starlightPythia& other) const;
0089
0090 };
0091
0092 #endif