GEMC
2.3
Geant4 Monte-Carlo Framework
Main Page
Namespaces
Data Structures
Files
File List
Globals
hitprocess
clas12
ec_hitprocess.h
Go to the documentation of this file.
1
#ifndef EC_HITPROCESS_H
2
#define EC_HITPROCESS_H 1
3
4
// gemc headers
5
#include "
HitProcess.h
"
6
7
// ec constants
8
// these are loaded with initWithRunNumber
9
class
ecConstants
10
{
11
public
:
12
// runNo is mandatory variable to keep track of run number changes
13
int
runNo
;
14
string
variation
;
15
string
date
;
16
string
connection
;
17
char
database
[80];
18
19
// For strip dependent constants read from CCDB
20
// Array [6][9][3] -> sector,layer,view sector=1-6 layer=1-3 (PCAL) 4-6 (ECinner) 7-9 (ECouter) view=1-3 (U,V,W)
21
22
//attlen: attenuation length
23
vector<double>
attlen
[6][9][3];
24
25
double
NSTRIPS
;
// Number of strips
26
double
TDC_time_to_evio
;
// Conversion from time (ns) to EVIO TDC format
27
double
ADC_MeV_to_evio
;
// Conversion from energy (MeV) to EVIO FADC250 format
28
double
veff
;
// Effective velocity of scintillator light (mm/ns)
29
double
pmtPEYld
;
// Number of p.e. divided by the energy deposited in MeV. See EC NIM paper table 1.
30
double
pmtQE
;
// Quantum efficiency of PMT
31
double
pmtDynodeGain
;
// PMT dynode gain
32
double
pmtDynodeK
;
// PMT dynode secondary emission statistics factor: K=0 (Poisson) K=1 (exponential)
33
double
pmtFactor
;
// Contribution to FWHM from PMT statistical fluctuations.
34
};
35
36
37
// Class definition
38
class
ec_HitProcess
:
public
HitProcess
39
{
40
public
:
41
42
~ec_HitProcess
(){;}
43
44
// constants initialized with initWithRunNumber
45
static
ecConstants
ecc
;
46
47
void
initWithRunNumber(
int
runno);
48
49
// - integrateDgt: returns digitized information integrated over the hit
50
map<string, double> integrateDgt(
MHit
*,
int
);
51
52
// - multiDgt: returns multiple digitized information / hit
53
map< string, vector <int> > multiDgt(
MHit
*,
int
);
54
55
// The pure virtual method processID returns a (new) identifier
56
// containing hit sharing information
57
vector<identifier> processID(vector<identifier>, G4Step*,
detector
);
58
59
// creates the HitProcess
60
static
HitProcess
*
createHitClass
() {
return
new
ec_HitProcess
;}
61
62
};
63
64
65
66
67
68
#endif
HitProcess.h
ecConstants::pmtPEYld
double pmtPEYld
Definition:
ec_hitprocess.h:29
ecConstants::ADC_MeV_to_evio
double ADC_MeV_to_evio
Definition:
ec_hitprocess.h:27
ecConstants::pmtQE
double pmtQE
Definition:
ec_hitprocess.h:30
ecConstants::veff
double veff
Definition:
ec_hitprocess.h:28
ecConstants::variation
string variation
Definition:
ec_hitprocess.h:14
ecConstants::date
string date
Definition:
ec_hitprocess.h:15
detector
Definition:
detector.h:60
ecConstants::connection
string connection
Definition:
ec_hitprocess.h:16
ecConstants::NSTRIPS
double NSTRIPS
Definition:
ec_hitprocess.h:25
ec_HitProcess::createHitClass
static HitProcess * createHitClass()
Definition:
ec_hitprocess.h:60
ecConstants::TDC_time_to_evio
double TDC_time_to_evio
Definition:
ec_hitprocess.h:26
ecConstants::attlen
vector< double > attlen[6][9][3]
Definition:
ec_hitprocess.h:23
ecConstants::database
char database[80]
Definition:
ec_hitprocess.h:17
ec_HitProcess::~ec_HitProcess
~ec_HitProcess()
Definition:
ec_hitprocess.h:42
MHit
Definition:
Hit.h:22
ec_HitProcess::ecc
static ecConstants ecc
Definition:
ec_hitprocess.h:45
ecConstants::runNo
int runNo
Definition:
ec_hitprocess.h:13
ecConstants::pmtDynodeK
double pmtDynodeK
Definition:
ec_hitprocess.h:32
ec_HitProcess
Definition:
ec_hitprocess.h:38
ecConstants::pmtFactor
double pmtFactor
Definition:
ec_hitprocess.h:33
ecConstants
Definition:
ec_hitprocess.h:9
HitProcess
Definition:
HitProcess.h:64
ecConstants::pmtDynodeGain
double pmtDynodeGain
Definition:
ec_hitprocess.h:31
Generated on Wed Jul 6 2016 11:13:42 for GEMC by
1.8.11