]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - RICH/AliRICHResponseV0.h
MUON specific classes added.
[u/mrichter/AliRoot.git] / RICH / AliRICHResponseV0.h
index 85961c0c2ee2ab23f125d4f2d4613e439ff4d602..ab14d5b74fa0ce57414b9ce8345a511992e6cccf 100644 (file)
@@ -9,13 +9,19 @@
 
 
 #include "AliRICHResponse.h"
+#include <Riostream.h>
 
-class AliRICHResponseV0 : //Mathieson response
-public AliRICHResponse {
- public:
-    AliRICHResponseV0(){}
+class AliSegmentation;
+
+
+class AliRICHResponseV0 : public AliRICHResponse 
+{
+public:
+    AliRICHResponseV0();                    // default ctor
     virtual ~AliRICHResponseV0(){}
-    //
+    
+   virtual inline void Print(Option_t* option)const;
+//
     // Configuration methods
     // 
     // Number of sigmas over which cluster didintegration is performed
@@ -51,11 +57,14 @@ public AliRICHResponse {
     //  
     // Chamber response methods
     // Pulse height from scored quantity (eloss)
-    virtual Float_t IntPH(Float_t eloss);
-    virtual Float_t IntPH();
+    virtual Float_t IntPH(Float_t eloss, Float_t yhit);
+    virtual Float_t IntPH(Float_t yhit);
     // Charge disintegration
-    virtual Float_t IntXY(AliRICHSegmentation * segmentation);
+    virtual Float_t IntXY(AliSegmentation * segmentation);
     virtual Int_t   FeedBackPhotons(Float_t *source, Float_t qtot);
+    // Wire sag
+    virtual void SetWireSag(Int_t p1) {fWireSag=p1;};
+    virtual void SetVoltage(Int_t p1) {fVoltage=p1;};
        protected:
     Float_t fChargeSlope;              // Slope of the charge distribution
     Float_t fChargeSpreadX;            // Width of the charge distribution in x
@@ -64,13 +73,37 @@ public AliRICHResponse {
     Float_t fAlphaFeedback;            // Feedback photons coefficient
     Float_t fEIonisation;              // Mean ionisation energy
     Float_t fMaxAdc;                   // Maximum ADC channel
-    Float_t fSqrtKx3;         // Mathieson parameters for x
-    Float_t fKx2;             // Mathieson parameters for x
-    Float_t fKx4;             // Mathieson parameters for x
-    Float_t fSqrtKy3;         // Mathieson parameters for y
-    Float_t fKy2;             // Mathieson parameters for y 
-    Float_t fKy4;             // Mathieson parameters for y
-    Float_t fPitch;           //anode-cathode pitch
-    ClassDef(AliRICHResponseV0,1)
+    Float_t fSqrtKx3;                  // Mathieson parameters for x
+    Float_t fKx2;                      // Mathieson parameters for x
+    Float_t fKx4;                      // Mathieson parameters for x
+    Float_t fSqrtKy3;                  // Mathieson parameters for y
+    Float_t fKy2;                      // Mathieson parameters for y 
+    Float_t fKy4;                      // Mathieson parameters for y
+    Float_t fPitch;                    // Anode-cathode pitch
+    Int_t   fWireSag;                  // Flag to turn on/off (0/1) wire sag
+    Int_t   fVoltage;                  // Working voltage (2000, 2050, 2100, 2150)
+    ClassDef(AliRICHResponseV0,1)      // RICH Response model: Mathieson verion
 };
+    
+inline void AliRICHResponseV0::Print(Option_t* option) const
+{
+   TObject::Print();
+   cout<<"Slope of the charge distribution               "<<fChargeSlope                             <<endl;
+   cout<<"Width of the charge distribution in x          "<<fChargeSpreadX                   <<endl;
+   cout<<"Width of the charge distribution in y          "<<fChargeSpreadY                   <<endl;
+   cout<<"Number of sigma's used for charge distribution "<<fSigmaIntegration                <<endl;
+   cout<<"Feedback photons coefficient                   "<<fAlphaFeedback                   <<endl;
+   cout<<"Mean ionisation energy                         "<<fEIonisation                             <<endl;
+   cout<<"Maximum ADC channel                            "<<fMaxAdc                          <<endl;
+   cout<<"Mathieson parameters for x                     "<<fSqrtKx3                         <<endl;
+   cout<<"Mathieson parameters for x                     "<<fKx2                                     <<endl;
+   cout<<"Mathieson parameters for x                     "<<fKx4                                     <<endl;
+   cout<<"Mathieson parameters for y                     "<<fSqrtKy3                         <<endl;
+   cout<<"Mathieson parameters for y                     "<<fKy2                                     <<endl;
+   cout<<"Mathieson parameters for y                     "<<fKy4                                     <<endl;
+   cout<<"Anode-cathode pitch                            "<<fPitch                           <<endl;
+   cout<<"Flag to turn on/off (0/1) wire sag             "<<fWireSag                         <<endl;
+   cout<<"Working voltage (2000, 2050, 2100, 2150)       "<<fVoltage                           <<endl; 
+}//void AliRICHResponseV0::Print()
+
 #endif