CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
Ionization.h
Go to the documentation of this file.
1#ifndef IONIZATION_H
2#define IONIZATION_H
3
5
6#include <vector>
7#include <string>
8
10public:
11 Ionization();
12 virtual ~Ionization();
13
14 virtual void init(unsigned int random, ICgemGeomSvc* geomSvc, double magConfig) = 0;
15 virtual void setDebugging(bool debugging) = 0;
16
17 /* particle = 0,1,2,3,4 (e,mu,pi,K,p) */
18 /* p: momentum (GeV/c) */
19 /* trkPosIn & trkPosOut: starting & exit positions (x,y,z) of the track segment in drift area */
20 virtual void setTrack(int particle, int charge, double p, double trkPosIn[], double trkPosOut[]) = 0;
21
22 /* return the number of electrons from ionization */
23 virtual int getNumberIonE() = 0;
24
25 /* get position and time of the electron from ionization */
26 virtual double getEx(int nElec) = 0;
27 virtual double getEy(int nElec) = 0;
28 virtual double getEz(int nElec) = 0;
29 virtual double getEt(int nElec) = 0;
30};
31
32#endif
virtual double getEx(int nElec)=0
virtual int getNumberIonE()=0
virtual double getEy(int nElec)=0
virtual ~Ionization()
Definition: Ionization.cxx:6
virtual void setDebugging(bool debugging)=0
virtual double getEt(int nElec)=0
virtual double getEz(int nElec)=0
virtual void setTrack(int particle, int charge, double p, double trkPosIn[], double trkPosOut[])=0
virtual void init(unsigned int random, ICgemGeomSvc *geomSvc, double magConfig)=0