GEMC  2.3
Geant4 Monte-Carlo Framework
ctof_hitprocess.h
Go to the documentation of this file.
1 #ifndef CTOF_HITPROCESS_H
2 #define CTOF_HITPROCESS_H 1
3 
4 // gemc headers
5 #include "HitProcess.h"
6 
8 {
9  public:
10 
11  // Database parameters
12  int runNo;
13  string variation;
14  string date;
15  string connection;
16  char database[80];
17 
18  // For paddle dependent constants read from CCDB
19  // Array [1][1][2] -> sector,panel,UD
20 
21  // status:
22  // 0 - fully functioning
23  // 1 - noADC
24  // 2 - noTDC
25  // 3 - noADC, noTDC (PMT is dead)
26  // 5 - any other reconstruction problem
27  vector<int> status[1][1][2];
28 
29  // veff: effective velocity
30  vector<double> veff[1][1][2];
31 
32  // attlen: attenuation length
33  vector<double> attlen[1][1][2];
34 
35  // countsForMIP: Desired ADC channel for MIP peak calibration
36  vector<double> countsForMIP[1][1][2];
37 
38  // twlk: Time walk correction, 3 constants each for L and R
39  vector<double> twlk[1][1][6];
40 
41  // tres: Gaussian sigma for smearing time resolution
42  vector<double> tres;
43 
44  int npaddles; // Number of paddles.
45  int thick; // Thickness of paddles (cm).
46  double dEdxMIP; // Nominal MIP specific energy loss (MeV/gm/cm2).
47  double dEMIP; // Nominal MIP energy loss (MeV).
48 
49  double pmtPEYld; // Photoelectron yield (p.e./MeV)
50  double pmtQE; // Quantum efficiency of PMT
51  double pmtDynodeGain; // PMT dynode gain
52  double pmtDynodeK; // PMT dynode secondary emission statistics factor: K=0 (Poisson) K=1 (exponential)
53  double pmtFactor; // Contribution to FWHM from PMT statistical fluctuations.
54  double tdcLSB; // Conversion from ns to TDC channel.
55 };
56 
57 // Class definition
60 
62 {
63  public:
64 
66 
67  // constants initialized with initWithRunNumber
69 
70  void initWithRunNumber(int runno);
71 
72  // - integrateDgt: returns digitized information integrated over the hit
73  map<string, double> integrateDgt(MHit*, int);
74 
75  // - multiDgt: returns multiple digitized information / hit
76  map< string, vector <int> > multiDgt(MHit*, int);
77 
78  // The pure virtual method processID returns a (new) identifier
79  // containing hit sharing information
80  vector<identifier> processID(vector<identifier>, G4Step*, detector);
81 
82  // creates the HitProcess
83  static HitProcess *createHitClass() {return new ctof_HitProcess;}
84 };
85 
86 #endif
vector< double > attlen[1][1][2]
vector< double > twlk[1][1][6]
vector< double > tres
vector< int > status[1][1][2]
char database[80]
double pmtDynodeGain
vector< double > veff[1][1][2]
Definition: Hit.h:22
static ctofConstants ctc
vector< double > countsForMIP[1][1][2]
static HitProcess * createHitClass()