]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSresponseSSD.h
Corrections for memory leaks, random numbers, hit number; also some data members...
[u/mrichter/AliRoot.git] / ITS / AliITSresponseSSD.h
CommitLineData
b0f5e3fc 1#ifndef ALIITSRESPONSESSD_H
2#define ALIITSRESPONSESSD_H
3
4#include "AliITSresponse.h"
5
1ca7869b 6class TString;
7
b0f5e3fc 8// response for SSD
9
10//-----------------------------
11class AliITSresponseSSD :
12public AliITSresponse {
13
14public:
15
16 AliITSresponseSSD();
17 virtual ~AliITSresponseSSD();
18 AliITSresponseSSD(const AliITSresponseSSD &source); // copy constructor
19 AliITSresponseSSD& operator=(const AliITSresponseSSD &source); // ass. op.
20
e8189707 21 virtual void SetDiffCoeff(Float_t p1=0.,Float_t dummy=0.) {
b0f5e3fc 22 // Diffusion coefficient
23 fDiffCoeff=p1;
24 }
e8189707 25 virtual void DiffCoeff(Float_t &diffc,Float_t &dummy) {
b0f5e3fc 26 // Get diffusion coefficient
e8189707 27 diffc= fDiffCoeff;
b0f5e3fc 28 }
29
30 virtual void SetNoiseParam(Float_t np=420., Float_t nn=625.) {
31 // set noise par
32 fNoiseP=np; fNoiseN=nn;
33 }
34 virtual void GetNoiseParam(Float_t &np, Float_t &nn) {
35 // get noise par
36 np=fNoiseP; nn=fNoiseN;
37 }
38
e8189707 39 virtual void SetParamOptions(const char *opt1="", const char *opt2="") {
b0f5e3fc 40 // parameters: "SetInvalid" to simulate the invalid strips
41 fOption1=opt1; fOption2=opt2;
42 }
e8189707 43 virtual void ParamOptions(char *opt1,char *opt2) {
b0f5e3fc 44 // options
e8189707 45 strcpy(opt1,fOption1.Data()); strcpy(opt2,fOption2.Data());
b0f5e3fc 46 }
47
48 // Number of parameters to be set
49 // 4 couplings, mean number of invalid strips, RMS of invalid strips
50 virtual void SetNDetParam(Int_t npar=6) {
51 // set number of param
52 fNPar=npar;
53 }
54
55 virtual void SetDetParam(Float_t *par);
56
57 // Parameters options
58 virtual Int_t NDetParam() {
59 // number of param
60 return fNPar;
61 }
62 virtual void GetDetParam(Float_t *dpar);
63
e8189707 64 virtual void SetDataType(const char *data="simulated") {
b0f5e3fc 65 // Type of data - real or simulated
66 fDataType=data;
67 }
e8189707 68 virtual const char *DataType() const {
b0f5e3fc 69 // Get data type
e8189707 70 return fDataType.Data();
b0f5e3fc 71 }
72
73 virtual void SetSigmaSpread(Float_t p1=3., Float_t p2=2.) {
74 // Set sigmas of the charge spread function: Pside-Nside
75 // square of (microns)
76 fSigmaP=p1; fSigmaN=p2;
77 }
78 virtual void SigmaSpread(Float_t &sP, Float_t &sN) {
79 // Get sigmas for the charge spread
80 sP=fSigmaP; sN=fSigmaN;
81 }
82
83protected:
84 Int_t fNPar; // Number of detector param
e8189707 85 Float_t *fDetPar; //[fNPar] Array of parameters
b0f5e3fc 86
87 Float_t fNoiseP; // Noise on Pside
88 Float_t fNoiseN; // Noise on Nside
89
90 Float_t fSigmaP; // Sigma charge spread on Pside
91 Float_t fSigmaN; // Sigma charge spread on Nside
92 Float_t fDiffCoeff; // Diffusion Coefficient
93
e8189707 94 TString fOption1; // Simulate invalid strips option
95 TString fOption2; // Not used for the moment
b0f5e3fc 96
e8189707 97 TString fDataType; // Type of data - real or simulated
b0f5e3fc 98
99 ClassDef(AliITSresponseSSD,1) //Response class for SSD
100
101 };
102
103
104
105#endif
106
107
108
109
110
111
112