GosSiP  1.32
PhotonSource.h
Go to the documentation of this file.
1 #ifndef PhotonSource_h
2 #define PhotonSource_h
3 
4 #include <vector>
5 #include "TRandom3.h"
6 #include "TH1.h"
7 #include "TH2.h"
8 #include "PhotonList.h"
9 #include <iostream>
10 
11 using std::vector;
12 using std::cout;
13 using std::endl;
14 using std::string;
15 
20 {
21 
22  public:
23 
24  PhotonSource();
29  void SetShape( string Shape ){ shape = Shape; };
31  void SetShape( TH2 *h_shape ){ hShape = h_shape; shape = "custom"; };
33  void SetPulse( string Pulse ){ pulse = Pulse; };
35  void SetPulse( TH1 *h_time ){ hTime = h_time; pulse = "custom"; };
37  void SetXY( double X, double Y ){ x = X; y = Y; };
39  void SetXYWidth( double Xwidth, double Ywidth ){ xWidth = Xwidth; yWidth = Ywidth; };
41  void SetTime( double T ){ t = T; };
43  void SetTimeWidth( double Twidth ){ tWidth = Twidth; };
45  void SetRiseTime( double Trise ){ tRise = Trise; };
47  void SetNgamma( int nGamma ){ Ngamma = nGamma; };
49  void SetFluctuation( bool fluct ){ fluctuation = fluct; };
50 
51 
52  private:
53 
54  PhotonList photonList;
55  TRandom3 r;
56  bool fluctuation;
57  double x, y;
58  double xWidth, yWidth;
59  double t, tWidth, tRise;
60  double Ngamma;
61  string shape, pulse;
62  TH2 *hShape;
63  TH1 *hTime;
64  TF1 *fExp2;
65 };
66 
67 #endif
void SetTime(double T)
Definition: PhotonSource.h:41
void SetShape(string Shape)
Definition: PhotonSource.h:29
Definition: PhotonList.h:17
void SetPulse(string Pulse)
Definition: PhotonSource.h:33
void SetPulse(TH1 *h_time)
Definition: PhotonSource.h:35
void SetNgamma(int nGamma)
Definition: PhotonSource.h:47
void SetRiseTime(double Trise)
Definition: PhotonSource.h:45
void SetXYWidth(double Xwidth, double Ywidth)
Definition: PhotonSource.h:39
PhotonSource()
Definition: PhotonSource.cpp:11
void SetFluctuation(bool fluct)
Definition: PhotonSource.h:49
Definition: HitMatrix.h:14
~PhotonSource()
Definition: PhotonSource.h:25
void SetTimeWidth(double Twidth)
Definition: PhotonSource.h:43
PhotonList GeneratePhotons()
Definition: PhotonSource.cpp:32
Definition: PhotonSource.h:19
void SetShape(TH2 *h_shape)
Definition: PhotonSource.h:31
Definition: HitMatrix.h:14
void SetXY(double X, double Y)
Definition: PhotonSource.h:37