]> git.uio.no Git - u/mrichter/AliRoot.git/blob - RICH/AliRICHResponse.h
AliCRTModule added
[u/mrichter/AliRoot.git] / RICH / AliRICHResponse.h
1 #ifndef AliRICHResponse_h
2 #define AliRICHResponse_h
3
4
5 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6  * See cxx source for full Copyright notice                               */
7
8 #include "TObject.h"
9
10 class AliSegmentation;
11
12 class AliRICHResponse : public TObject
13 {
14 public:
15     AliRICHResponse();                    // default ctor
16     virtual ~AliRICHResponse(){}
17     virtual void    SetSigmaIntegration(Float_t p1) {fSigmaIntegration=p1;}
18     virtual Float_t SigmaIntegration() {return fSigmaIntegration;}    
19     virtual void    SetChargeSlope(Float_t p1) {fChargeSlope=p1;}
20     virtual Float_t ChargeSlope()      {return fChargeSlope;}
21     virtual void    SetChargeSpread(Float_t p1, Float_t p2){fChargeSpreadX=p1; fChargeSpreadY=p2;}
22     virtual Float_t ChargeSpreadX()    {return fChargeSpreadX;}    
23     virtual Float_t ChargeSpreadY()    {return fChargeSpreadY;}        
24     virtual void    SetMaxAdc(Float_t p1) {fMaxAdc=p1;}
25     virtual Float_t MaxAdc()           {return fMaxAdc;}
26     virtual Float_t Pitch()            {return fPitch;}
27     virtual void    SetPitch(Float_t p1) {fPitch=p1;};
28     virtual void    SetAlphaFeedback(Float_t alpha) {fAlphaFeedback=alpha;}
29     virtual Float_t AlphaFeedback()  {return fAlphaFeedback;}
30     virtual void    SetEIonisation(Float_t e) {fEIonisation=e;}
31     virtual Float_t EIonisation() {return fEIonisation;}                            
32     virtual void   SetSqrtKx3(Float_t p1) {fSqrtKx3=p1;};
33     virtual void   SetKx2(Float_t p1) {fKx2=p1;};
34     virtual void   SetKx4(Float_t p1) {fKx4=p1;};
35     virtual void   SetSqrtKy3(Float_t p1) {fSqrtKy3=p1;};
36     virtual void   SetKy2(Float_t p1) {fKy2=p1;};
37     virtual void   SetKy4(Float_t p1) {fKy4=p1;};
38     virtual Float_t IntPH(Float_t eloss, Float_t yhit);
39     virtual Float_t IntPH(Float_t yhit);
40     virtual Float_t IntXY(AliSegmentation * segmentation);
41     virtual Int_t   FeedBackPhotons(Float_t *source, Float_t qtot);
42     virtual void SetWireSag(Int_t p1) {fWireSag=p1;};
43     virtual void SetVoltage(Int_t p1) {fVoltage=p1;};
44     protected:
45     Float_t fChargeSlope;              // Slope of the charge distribution
46     Float_t fChargeSpreadX;            // Width of the charge distribution in x
47     Float_t fChargeSpreadY;            // Width of the charge distribution in y
48     Float_t fSigmaIntegration;         // Number of sigma's used for charge distribution
49     Float_t fAlphaFeedback;            // Feedback photons coefficient
50     Float_t fEIonisation;              // Mean ionisation energy
51     Float_t fMaxAdc;                   // Maximum ADC channel
52     Float_t fSqrtKx3;                  // Mathieson parameters for x
53     Float_t fKx2;                      // Mathieson parameters for x
54     Float_t fKx4;                      // Mathieson parameters for x
55     Float_t fSqrtKy3;                  // Mathieson parameters for y
56     Float_t fKy2;                      // Mathieson parameters for y 
57     Float_t fKy4;                      // Mathieson parameters for y
58     Float_t fPitch;                    // Anode-cathode pitch
59     Int_t   fWireSag;                  // Flag to turn on/off (0/1) wire sag
60     Int_t   fVoltage;                  // Working voltage (2000, 2050, 2100, 2150)
61     ClassDef(AliRICHResponse,1)        // RICH Response model: Mathieson verion
62 };
63     
64 #endif