]> git.uio.no Git - u/mrichter/AliRoot.git/blob - RICH/AliRICHResponseV0.h
Test macro for generator output.
[u/mrichter/AliRoot.git] / RICH / AliRICHResponseV0.h
1 #ifndef ALIRICHRESPONSEV0_H
2 #define ALIRICHRESPONSEV0_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 /* $Id$ */
9
10
11 #include "AliRICHResponse.h"
12
13 class AliRICHResponseV0 : //Mathieson response
14 public AliRICHResponse {
15  public:
16     AliRICHResponseV0(){}
17     virtual ~AliRICHResponseV0(){}
18     //
19     // Configuration methods
20     // 
21     // Number of sigmas over which cluster didintegration is performed
22     virtual void    SetSigmaIntegration(Float_t p1) {fSigmaIntegration=p1;}
23     virtual Float_t SigmaIntegration() {return fSigmaIntegration;}    
24     // charge slope in ADC/e
25     virtual void    SetChargeSlope(Float_t p1) {fChargeSlope=p1;}
26     virtual Float_t ChargeSlope()      {return fChargeSlope;}
27     // sigma of the charge spread function
28     virtual void    SetChargeSpread(Float_t p1, Float_t p2)
29         {fChargeSpreadX=p1; fChargeSpreadY=p2;}
30     virtual Float_t ChargeSpreadX()    {return fChargeSpreadX;}    
31     virtual Float_t ChargeSpreadY()    {return fChargeSpreadY;}        
32     // Adc-count saturation value
33     virtual void    SetMaxAdc(Float_t p1) {fMaxAdc=p1;}
34     virtual Float_t MaxAdc()           {return fMaxAdc;}
35     // anode cathode Pitch
36     virtual Float_t Pitch()            {return fPitch;}
37     virtual void    SetPitch(Float_t p1) {fPitch=p1;};
38     // alpha feedback
39     virtual void    SetAlphaFeedback(Float_t alpha) {fAlphaFeedback=alpha;}
40     virtual Float_t AlphaFeedback()  {return fAlphaFeedback;}
41     // ionisation enrgy
42     virtual void    SetEIonisation(Float_t e) {fEIonisation=e;}
43     virtual Float_t EIonisation() {return fEIonisation;}                            
44     // Mathieson parameters
45     virtual void   SetSqrtKx3(Float_t p1) {fSqrtKx3=p1;};
46     virtual void   SetKx2(Float_t p1) {fKx2=p1;};
47     virtual void   SetKx4(Float_t p1) {fKx4=p1;};
48     virtual void   SetSqrtKy3(Float_t p1) {fSqrtKy3=p1;};
49     virtual void   SetKy2(Float_t p1) {fKy2=p1;};
50     virtual void   SetKy4(Float_t p1) {fKy4=p1;};
51     //  
52     // Chamber response methods
53     // Pulse height from scored quantity (eloss)
54     virtual Float_t IntPH(Float_t eloss);
55     virtual Float_t IntPH();
56     // Charge disintegration
57     virtual Float_t IntXY(AliRICHSegmentation * segmentation);
58     virtual Int_t   FeedBackPhotons(Float_t *source, Float_t qtot);
59         protected:
60     Float_t fChargeSlope;              // Slope of the charge distribution
61     Float_t fChargeSpreadX;            // Width of the charge distribution in x
62     Float_t fChargeSpreadY;            // Width of the charge distribution in y
63     Float_t fSigmaIntegration;         // Number of sigma's used for charge distribution
64     Float_t fAlphaFeedback;            // Feedback photons coefficient
65     Float_t fEIonisation;              // Mean ionisation energy
66     Float_t fMaxAdc;                   // Maximum ADC channel
67     Float_t fSqrtKx3;         // Mathieson parameters for x
68     Float_t fKx2;             // Mathieson parameters for x
69     Float_t fKx4;             // Mathieson parameters for x
70     Float_t fSqrtKy3;         // Mathieson parameters for y
71     Float_t fKy2;             // Mathieson parameters for y 
72     Float_t fKy4;             // Mathieson parameters for y
73     Float_t fPitch;           //anode-cathode pitch
74     ClassDef(AliRICHResponseV0,1)
75 };
76 #endif