74f8c8e3 |
1 | #ifndef ALIMUONSEGMENTPOSITION_H |
2 | #define ALIMUONSEGMENTPOSITION_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 | |
8 | //=================================================================== |
9 | // Segment element position in local coordinates of the detection element |
10 | // Gines MARTINEZ, SUBATECH July 04 |
11 | // This class is one of the basic component of |
12 | // AliMUONSegmentationDetectionElement and contains al the |
13 | // info about a segment (pad or strip): |
14 | // Id-indetectionelement, x_local, y_local |
15 | // Detailed information in Alice Technical Note xxxxxxxx (2004) |
16 | //==================================================================== |
17 | |
212bb69d |
18 | |
74f8c8e3 |
19 | #include <TNamed.h> |
212bb69d |
20 | #include <TString.h> |
74f8c8e3 |
21 | |
22 | class AliMUONSegmentPosition : public TNamed |
23 | { |
24 | public: |
25 | AliMUONSegmentPosition(); |
26 | AliMUONSegmentPosition(const Int_t channelId, const Float_t x, const Float_t y, const Int_t cathode); |
27 | virtual ~AliMUONSegmentPosition(); |
28 | |
29 | Int_t Compare(const TObject *obj) const; |
6b74910d |
30 | Float_t Distance(Float_t x, Float_t y); |
74f8c8e3 |
31 | Int_t GetChannelId()const {return fChannelId;} |
32 | Float_t GetXlocal() const {return fX;} |
33 | Float_t GetYlocal() const {return fY;} |
34 | Int_t GetCathode() const {return fCathode;} |
35 | |
6b74910d |
36 | static Float_t GetUnit() {return fUnit;} |
37 | static TString Name(Float_t x, Float_t y, Int_t cathode) ; |
212bb69d |
38 | |
212bb69d |
39 | void Print() const; |
40 | |
74f8c8e3 |
41 | private: |
212bb69d |
42 | Int_t fChannelId; // Id of the channel within the detection element |
43 | Float_t fX; // Position X of the center of the segment (pad, strip, etc...) |
44 | Float_t fY; // Position Y of the center of the segment (pad, strip, etc...) |
45 | Int_t fCathode; // Cathode Side Bending 1 or non bending 0 |
6b74910d |
46 | Float_t fPadSizeX; |
47 | Float_t fPadSizeY; |
48 | |
49 | static Float_t fUnit; // Unit for generation of the name 3mm has been choses |
50 | |
74f8c8e3 |
51 | ClassDef(AliMUONSegmentPosition,1) // Loal positions of segments |
52 | |
53 | }; |
54 | #endif |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |