5a5633969d47fdc0bcc6a90a7e8c40c38252acaa
[u/mrichter/AliRoot.git] / MUON / AliMUONSegmentManuIndex.h
1 #ifndef ALIMUONSEGMENTMANUINDEX_H
2 #define ALIMUONSEGMENTMANUINDEX_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 indexing in a detection element for electronics   
10 //        Gines MARTINEZ, SUBATECH July 04                
11 //  This class is the basic component of 
12 //  AliMUONSegmentationDetectionElement and contains al the 
13 //  info about a segment (pad or strip):
14 //          Id-indetectionelement,  #manu, #manuchannel 
15 //  Detailed information in Alice Technical Note xxxxxxxx (2004)
16 //====================================================================
17
18 #include <TNamed.h>
19
20 class TString;
21
22 class AliMUONSegmentManuIndex : public TNamed {
23  public:
24   AliMUONSegmentManuIndex();
25   AliMUONSegmentManuIndex(const Int_t channelId, const Int_t manuId, const Int_t busPatchId, const Int_t manuChannelId);
26
27   virtual ~AliMUONSegmentManuIndex();
28
29   Int_t Compare(const TObject *obj) const;
30
31   Int_t GetChannelId()     const{return fChannelId;}
32   Int_t GetManuId()        const{return fManuId;}
33   Int_t GetBusPatchId()    const{return fBusPatchId;}
34   Int_t GetManuChannelId() const{return fManuChannelId;}
35
36   static TString Name(Int_t manuId, Int_t manuchannel);
37   
38   void   Print() const;
39
40  private:
41   Int_t fChannelId; // Id of the channel within the detection element
42   Int_t fManuId; // Manu id in the detection element
43   Int_t fBusPatchId; // BusPatchId in the detection element up to 4 for slats
44   Int_t fManuChannelId; // ChannelId in the manu card 1-64
45   
46   ClassDef(AliMUONSegmentManuIndex,1) // Segmenation for MUON detection elements
47     
48 };
49
50 #endif
51
52
53
54
55
56