AliRoot Core  a565103 (a565103)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpUID.h
Go to the documentation of this file.
1 #ifndef ALIMPUID_H
2 #define ALIMPUID_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6 
7 // $Id$
8 
13 // Author Laurent Aphecetche, Subatech
14 
15 #ifndef ROOT_TObject
16 # include "TObject.h"
17 #endif
18 #ifndef ROOT_TString
19 # include "TString.h"
20 #endif
21 #ifndef ALI_MP_CATHOD_TYPE_H
22 # include "AliMpCathodType.h"
23 #endif
24 
25 class AliMpUID : public TObject
26 {
27 public:
28  AliMpUID();
29  AliMpUID(AliMp::CathodType cathodeType, Int_t station, Int_t chamber=-1, Int_t de=-1,
30  Int_t bp=-1, Int_t manu=-1, Int_t pcb=-1);
31  AliMpUID(AliMp::CathodType cathodeType, const AliMpUID& b);
32  AliMpUID(AliMp::CathodType cathodeType, const char* pathname);
33  AliMpUID(const char* pathname);
34 
36  virtual ~AliMpUID() {}
37 
38  TString Name() const;
39  TString PathName() const;
40  TString BaseName() const;
41  TString DirName() const;
42 
43  Bool_t IsStation() const;
44  Bool_t IsChamber() const;
45  Bool_t IsDetectionElement() const;
46  Bool_t IsBusPatch() const;
47  Bool_t IsManu() const;
48  Bool_t IsPCB() const;
49  Bool_t IsValid() const;
50 
53  Int_t StationId() const { return fStationId; }
55  Int_t ChamberId() const { return fChamberId; }
57  Int_t DetElemId() const { return fDetElemId; }
59  Int_t BusPatchId() const { return fBusPatchId; }
61  Int_t ManuId() const { return fManuId; }
63  Int_t PCBId() const { return fPCBId; }
64 
65  virtual void Print(Option_t* opt="") const;
66 
68  TString Type() const;
69 
70 private:
71 
72  Bool_t CheckTemplate(const char* name, const char* templateName, Int_t& value);
73  TString StripCathode(const char* name) const;
74 
75 private:
76  Int_t fCathodeId;
77  Int_t fStationId;
78  Int_t fChamberId;
79  Int_t fDetElemId;
80  Int_t fBusPatchId;
81  Int_t fManuId;
82  Int_t fPCBId;
83 
84  ClassDef(AliMpUID,1) // UID of a tracker channel
85 };
86 
87 #endif
Bool_t IsDetectionElement() const
Definition: AliMpUID.cxx:206
TString Name() const
Definition: AliMpUID.cxx:249
Int_t fDetElemId
Detection element id.
Definition: AliMpUID.h:79
Bool_t IsChamber() const
Definition: AliMpUID.cxx:197
Bool_t IsStation() const
Definition: AliMpUID.cxx:189
TString PathName() const
Definition: AliMpUID.cxx:287
virtual void Print(Option_t *opt="") const
Definition: AliMpUID.cxx:332
Int_t DetElemId() const
Return detection element Id.
Definition: AliMpUID.h:57
Global (string-eable) ID of a tracker channel.
Definition: AliMpUID.h:25
TString DirName() const
Definition: AliMpUID.cxx:181
virtual ~AliMpUID()
dtor
Definition: AliMpUID.h:36
Int_t fStationId
Station id.
Definition: AliMpUID.h:77
AliMpUID()
Definition: AliMpUID.cxx:55
AliMp::CathodType CathodeId() const
Definition: AliMpUID.cxx:153
Bool_t IsBusPatch() const
Definition: AliMpUID.cxx:214
TString BaseName() const
Definition: AliMpUID.cxx:145
Int_t PCBId() const
Return PCB Id.
Definition: AliMpUID.h:63
Int_t fBusPatchId
Bus patch id.
Definition: AliMpUID.h:80
Int_t fManuId
Manu id.
Definition: AliMpUID.h:81
Int_t BusPatchId() const
Return bus patch Id.
Definition: AliMpUID.h:59
Bool_t IsManu() const
Definition: AliMpUID.cxx:221
Int_t ManuId() const
Return manu Id.
Definition: AliMpUID.h:61
TString StripCathode(const char *name) const
Definition: AliMpUID.cxx:340
Int_t fPCBId
PCB id.
Definition: AliMpUID.h:82
Bool_t CheckTemplate(const char *name, const char *templateName, Int_t &value)
Definition: AliMpUID.cxx:161
Int_t ChamberId() const
Return chamber Id.
Definition: AliMpUID.h:55
Int_t StationId() const
Return station Id.
Definition: AliMpUID.h:53
Int_t fChamberId
Chamber id.
Definition: AliMpUID.h:78
Bool_t IsValid() const
Definition: AliMpUID.cxx:241
Bool_t IsPCB() const
Definition: AliMpUID.cxx:234
Int_t fCathodeId
Cathode number.
Definition: AliMpUID.h:76
TString Type() const
Return our type (e.g. PCB, Chamber, DE, MANU, etc...)
Definition: AliMpUID.cxx:356