]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSresponseSSD.h
7a1d650037e7251f918061abb947284bea8dd2ec
[u/mrichter/AliRoot.git] / ITS / AliITSresponseSSD.h
1 #ifndef ALIITSRESPONSESSD_H
2 #define ALIITSRESPONSESSD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 #include "AliITSresponse.h"
7 #include <Riostream.h>
8
9 /////////////////////////////////////////////////// 
10 // Response class for SSD                        //
11 //                                               //
12 ///////////////////////////////////////////////////
13
14 class AliITSresponseSSD : public AliITSresponse {
15
16  public:
17     AliITSresponseSSD();
18     virtual ~AliITSresponseSSD() {;}
19
20     void SetADCpereV(Double_t a=120./24888.9){fADCpereV = a;}
21     Double_t DEvToADC(Double_t eV) const {return eV*fADCpereV;}
22     Int_t IEvToADC(Double_t eV) const { // Converts electron-hole pairs to
23       return ((Int_t) DEvToADC(eV)); }
24       
25     void SetKeVperADC(Double_t a=86.4/120.){fKeVperADC = a;}
26     Double_t ADCToKeV(Double_t adc) const {return adc*fKeVperADC;}
27
28     Double_t  GetCouplingPR() const {// couplings
29       return fCouplingPR;}
30     Double_t  GetCouplingPL() const {// couplings
31       return fCouplingPL;}
32     Double_t  GetCouplingNR() const {// couplings
33       return fCouplingNR;}
34     Double_t  GetCouplingNL() const {// couplings
35       return fCouplingNL;}
36     virtual void SetCouplings(Double_t pr, Double_t pl, Double_t nr, Double_t nl) {
37       fCouplingPR=pr; fCouplingPL=pl; fCouplingNR=nr; fCouplingNL=nl; }
38
39     Int_t GetZSThreshold() const { // ZS threshold
40       return fZSThreshold; }
41     virtual void SetZSThreshold(Int_t zsth) { fZSThreshold = zsth; }
42
43 protected:
44     static const Float_t fgkDiffCoeffDefault; //default for fDiffCoeff
45
46     static const Double_t fgkfCouplingPR;  // default value for couplings
47     static const Double_t fgkfCouplingPL;  // default value for couplings
48     static const Double_t fgkfCouplingNR;  // default value for couplings
49     static const Double_t fgkfCouplingNL;  // default value for couplings
50
51     Double_t fADCpereV;        // Constant to convert eV to ADC.
52     Double_t fKeVperADC;       // Constant to convert ADC to keV
53
54     Double_t  fCouplingPR;  // couplings
55     Double_t  fCouplingPL;  // couplings
56     Double_t  fCouplingNR;  // couplings
57     Double_t  fCouplingNL;  // couplings   
58
59     static const Int_t fgkZSThreshold; // threshold for the zero suppresion
60     Int_t fZSThreshold; 
61
62
63  private:
64     AliITSresponseSSD(const AliITSresponseSSD &source); // copy constructor
65     AliITSresponseSSD& operator=(const AliITSresponseSSD &source); // ass. op.
66
67     ClassDef(AliITSresponseSSD,5) //Response class for SSD
68 };
69 #endif