]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 1 | #ifndef ALIMUONSEGMENTATIONV02_H |
2 | #define ALIMUONSEGMENTATIONV02_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
a897a37a | 8 | ///////////////////////////////////////////////////// |
a1001283 | 9 | // Segmentation and Response classes version 02 // |
a897a37a | 10 | ///////////////////////////////////////////////////// |
11 | ||
a9e2aefa | 12 | |
13 | #include "AliMUONSegmentationV01.h" | |
14 | ||
15 | class AliMUONSegmentationV02 : | |
16 | public AliMUONSegmentationV01 { | |
a897a37a | 17 | public: |
a9e2aefa | 18 | AliMUONSegmentationV02(){}; |
19 | virtual ~AliMUONSegmentationV02(){} | |
a897a37a | 20 | // |
a9e2aefa | 21 | // Pad size Dx*Dy |
22 | virtual void SetPadSize(Float_t p1, Float_t p2); | |
a897a37a | 23 | // |
24 | // Get member data | |
25 | // Pad size in x | |
26 | virtual Float_t Dpx() {return fDpy;} | |
27 | // Pad size in y | |
28 | virtual Float_t Dpy() {return fDpx;} | |
29 | // Pad size in x by Sector | |
30 | virtual Float_t Dpx(Int_t isec); | |
31 | // Pad size in y by Sector | |
32 | virtual Float_t Dpy(Int_t isec); | |
33 | // Max number of Pads in x | |
34 | virtual Int_t Npx(); | |
35 | // max number of Pads in y | |
36 | virtual Int_t Npy(); | |
37 | // calculate sector from pad coordinates | |
38 | virtual Int_t Sector(Int_t ix, Int_t iy); | |
39 | // | |
40 | // Transform from pad (wire) to real coordinates and vice versa | |
41 | // Transform from pad to real coordinates | |
24b005db | 42 | virtual void GetPadCxy(Int_t ix, Int_t iy, Float_t &x ,Float_t &y ); |
43 | virtual void GetPadCxy(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z) | |
44 | {z=0; GetPadCxy(ix, iy, x , y);} | |
a897a37a | 45 | // Transform from pad to real coordinates |
24b005db | 46 | virtual void GetPadIxy(Float_t x ,Float_t y , Int_t &ix, Int_t &iy); |
47 | virtual void GetPadIxy(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy) | |
48 | {GetPadIxy(x, y, ix, iy);} | |
a9e2aefa | 49 | // Set pad position |
a897a37a | 50 | virtual void SetPad(Int_t ix,Int_t iy); |
51 | // Stepper | |
52 | virtual void NextPad(); | |
53 | // Condition | |
54 | virtual Int_t MorePads(); | |
a9e2aefa | 55 | // Get next neighbours |
a897a37a | 56 | virtual void Neighbours |
57 | (Int_t iX, Int_t iY, Int_t* Nlist, Int_t Xlist[10], Int_t Ylist[10]); | |
58 | // Get next neighbours | |
a9e2aefa | 59 | ClassDef(AliMUONSegmentationV02,1) // Segmentation approximating circular zones with different pad size |
a897a37a | 60 | }; |
61 | #endif | |
62 | ||
63 | ||
64 | ||
65 | ||
66 | ||
67 | ||
68 | ||
69 | ||
70 |