]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONMathieson.h
Additional protection in case of negative indexes. More investigation is needed
[u/mrichter/AliRoot.git] / MUON / AliMUONMathieson.h
CommitLineData
7e4a628d 1#ifndef ALIMUONMATHIESON_H
2#define ALIMUONMATHIESON_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7// Revision of includes 07/05/2004
692de412 8//
9/// \ingroup base
10/// \class AliMUONMathieson
11/// \brief Implementation of Mathieson response
7e4a628d 12
471035eb 13#ifndef ROOT_TObject
14# include "TObject.h"
15#endif
16
a713db22 17class AliMUONGeometrySegmentation;
7e4a628d 18
471035eb 19class AliMUONMathieson : public TObject
7e4a628d 20{
21 public:
22 AliMUONMathieson();
23 virtual ~AliMUONMathieson(){}
24
25 // Get anode cathode Pitch
26 Float_t Pitch() const {return fPitch;}
27 // Set anode cathode Pitch
8bd8c4ce 28 void SetPitch(Float_t p1);
7e4a628d 29
30 // Set Mathieson parameters
31 // Mathieson \sqrt{Kx3} and derived Kx2 and Kx4
32 void SetSqrtKx3AndDeriveKx2Kx4(Float_t SqrtKx3);
33 // Mathieson \sqrt{Kx3}
34 void SetSqrtKx3(Float_t p1) {fSqrtKx3 = p1;};
35 // Mathieson Kx2
36 void SetKx2(Float_t p1) {fKx2 = p1;};
37 // Mathieson Kx4
38 void SetKx4(Float_t p1) {fKx4 = p1;};
39 // Mathieson \sqrt{Ky3} and derived Ky2 and Ky4
40 void SetSqrtKy3AndDeriveKy2Ky4(Float_t SqrtKy3);
41 // Mathieson \sqrt{Ky3}
42 void SetSqrtKy3(Float_t p1) {fSqrtKy3 = p1;};
43 // Mathieson Ky2
44 void SetKy2(Float_t p1) {fKy2 = p1;};
45 // Mathieson Ky4
46 void SetKy4(Float_t p1) {fKy4 = p1;};
471035eb 47 /// \deprecated To be removed when old (s)digitizers go off.
a713db22 48 Float_t IntXY(Int_t id, AliMUONGeometrySegmentation* segmentation);
471035eb 49 /// Charge integration on region (x1,y1,x2,y2).
50 Float_t IntXY(Float_t xi1, Float_t yi1, Float_t xi2, Float_t yi2) const;
51
52 private:
7e4a628d 53
54 Float_t fSqrtKx3; // Mathieson Sqrt(Kx3)
55 Float_t fKx2; // Mathieson Kx2
56 Float_t fKx4; // Mathieson Kx4 = Kx1/Kx2/Sqrt(Kx3)
57 Float_t fSqrtKy3; // Mathieson Sqrt(Ky3)
58 Float_t fKy2; // Mathieson Ky2
59 Float_t fKy4; // Mathieson Ky4 = Ky1/Ky2/Sqrt(Ky3)
60 Float_t fPitch; // anode-cathode pitch
8bd8c4ce 61 Float_t fInversePitch; // 1/Pitch
62 ClassDef(AliMUONMathieson,3) // Implementation of Mathieson response
7e4a628d 63};
64#endif
65
66
67
68
69
70
71
72
73
74
75