]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpDetElement.h
Deleting this file since name is wrong (Christian)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDetElement.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$
5 // $MpId: AliMpDetElement.h,v 1.6 2006/05/24 13:58:16 ivana Exp $ 
6
7 /// \ingroup management
8 /// \class AliMpDetElement
9 /// \brief The class defines the electronics properties of detection element
10 ///
11 /// \author Ivana Hrivnacova, IPN Orsay;
12 ///         Laurent Aphecetche, Ch. Finck, Subatech Nantes
13
14 #ifndef ALI_MP_DET_ELEMENT_H
15 #define ALI_MP_DET_ELEMENT_H
16
17 #include <TObject.h>
18 #include <TArrayI.h>
19 #include <TExMap.h>
20
21 #include "AliMpArrayI.h"
22 #include "AliMpStationType.h"
23 #include "AliMpPlaneType.h"
24 #include "AliMpCathodType.h"
25
26 class AliMpVSegmentation;
27
28 class AliMpDetElement : public  TObject {
29
30   public:
31     AliMpDetElement(Int_t id, const TString& name,
32                     const TString& segType, AliMp::PlaneType planeType);
33     AliMpDetElement(TRootIOCtor* /*ioCtor*/);
34     virtual ~AliMpDetElement();
35
36     // static methods
37     static char GetNameSeparator(); 
38     
39     // methods
40     Bool_t AddBusPatch(Int_t busPatchId); 
41     void   AddManuSerial(Int_t manuId, Int_t serialNb); 
42     void   SetDdlId(Int_t ddlId);
43
44     // get methods
45     Int_t   GetId() const;
46     Int_t   GetDdlId() const;
47     TString GetDEName() const;
48     TString GetSegType() const;
49     TString GetSegName(AliMp::CathodType cath) const;
50
51     AliMp::PlaneType   GetPlaneType(AliMp::CathodType cath) const;
52     AliMp::CathodType  GetCathodType(AliMp::PlaneType planeType) const;
53     AliMp::StationType GetStationType() const;
54     
55     Int_t  GetNofBusPatches() const;
56     Int_t  GetBusPatchId(Int_t index) const;
57     Bool_t HasBusPatchId(Int_t busPatchId) const;
58     
59     Int_t  GetNofManus() const;    
60     Int_t  GetManuSerialFromId(Int_t manuId) const;
61     Int_t  GetManuIdFromSerial(Int_t serialNb) const;
62
63   private:
64     AliMpDetElement();
65     AliMpDetElement(const AliMpDetElement& rhs);
66     AliMpDetElement& operator=(const AliMpDetElement& rhs);
67
68     // static data members      
69     static const char  fgkNameSeparator; ///< Separator character used in DE names
70
71     // data members     
72     Int_t          fId;         ///< Identifier (unique)
73     Int_t          fDdlId;      ///< DDL Id to which this DE is connected
74     TString        fName;       ///< Name unique
75     TString        fSegType;    ///< Segmentation type name
76     AliMp::PlaneType fPlaneType;  ///< Plane type on cathod0
77     //AliMpExMap     fBusPatches; ///< Bus patches connected to this detection element
78     AliMpArrayI    fBusPatchIds;  ///< Bus patches connected to this detection element
79     mutable TExMap fManuToSerialNbs; //< Map from manuId to serial #   
80     mutable TExMap fSerialNbToManus; //< Map manu serial # to manuId
81      
82   ClassDef(AliMpDetElement,1)  // The manager class for definition of detection element types
83 };
84
85 // inline function
86
87 /// Return the name separator
88 inline  char AliMpDetElement::GetNameSeparator()
89 { return fgkNameSeparator; }  
90
91 /// Set DDL Id
92 inline  void AliMpDetElement::SetDdlId(Int_t ddlId)
93 { fDdlId = ddlId; }
94
95 /// Return Id
96 inline  Int_t   AliMpDetElement::GetId() const
97 { return fId; }
98
99 /// Return DDL Id
100 inline  Int_t   AliMpDetElement::GetDdlId() const
101 { return fDdlId; }
102
103 /// Return name
104 inline  TString AliMpDetElement::GetDEName() const
105 { return fName; }
106
107 /// Return segmentation type name
108 inline  TString AliMpDetElement::GetSegType() const
109 { return fSegType; }
110
111 #endif //ALI_MP_MANAGER_H
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126