]>
Commit | Line | Data |
---|---|---|
1e738c3c | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
4 | // $Id$ | |
b4daf0b2 | 5 | // $MpId: $ |
1e738c3c | 6 | |
9b97f64e | 7 | /// \ingroup management |
1e738c3c | 8 | /// \class AliMpBusPatch |
b4daf0b2 | 9 | /// \brief The class defines the properties of BusPatch |
1e738c3c | 10 | /// |
b4daf0b2 | 11 | /// \author Ivana Hrivnacova, IPN Orsay |
1e738c3c | 12 | |
b4daf0b2 | 13 | #ifndef ALI_MP_BUS_PATCH_H |
14 | #define ALI_MP_BUS_PATCH_H | |
1e738c3c | 15 | |
1e738c3c | 16 | #include <TObject.h> |
59754717 | 17 | #include <TString.h> |
1e738c3c | 18 | |
b4daf0b2 | 19 | #include "AliMpArrayI.h" |
20 | ||
21 | class AliMpBusPatch : public TObject { | |
22 | ||
23 | public: | |
24 | AliMpBusPatch(Int_t id, Int_t deId, Int_t ddlId); | |
25 | AliMpBusPatch(TRootIOCtor* /*ioCtor*/); | |
26 | virtual ~AliMpBusPatch(); | |
27 | ||
28 | // static methods | |
29 | static Int_t GetGlobalBusID(Int_t localID, Int_t ddlID); | |
30 | static Int_t GetLocalBusID(Int_t globalID, Int_t ddlID); | |
31 | ||
32 | // methods | |
33 | Bool_t AddManu(Int_t manuId); | |
bf4bf8d2 | 34 | Bool_t SetNofManusPerModule(Int_t manuNumber = 0); |
59754717 | 35 | void SetTranslatorLabel(TString label); |
36 | void SetCableLabel(TString label); | |
bf4bf8d2 | 37 | void SetCableLength(Float_t length); |
59754717 | 38 | void SetFrtId(Int_t id); |
ae649dcb | 39 | void RevertReadout(); |
40 | void ResetReadout(); | |
41 | ||
b4daf0b2 | 42 | // get methods |
43 | Int_t GetId() const; | |
44 | Int_t GetDEId() const; | |
45 | Int_t GetDdlId() const; | |
59754717 | 46 | Int_t GetFrtId() const; |
b4daf0b2 | 47 | Int_t GetNofManus() const; |
48 | Int_t GetManuId(Int_t index) const; | |
49 | Bool_t HasManu(Int_t manuId) const; | |
50 | ||
f00f5bb0 | 51 | Int_t GetNofPatchModules() const; |
52 | Int_t GetNofManusPerModule(Int_t patchModule) const; | |
53 | ||
bf4bf8d2 | 54 | Float_t GetCableLength() const; |
59754717 | 55 | TString GetCableLabel() const; |
56 | TString GetTranslatorLabel() const; | |
b4daf0b2 | 57 | |
58 | private: | |
71a2d3aa | 59 | /// Not implemented |
b4daf0b2 | 60 | AliMpBusPatch(); |
71a2d3aa | 61 | /// Not implemented |
b4daf0b2 | 62 | AliMpBusPatch(const AliMpBusPatch& rhs); |
71a2d3aa | 63 | /// Not implemented |
b4daf0b2 | 64 | AliMpBusPatch& operator=(const AliMpBusPatch& rhs); |
65 | ||
66 | // static data members | |
71a2d3aa | 67 | static const Int_t fgkOffset; ///< Offset for conversion global/local ID |
b4daf0b2 | 68 | |
69 | // data members | |
59754717 | 70 | Int_t fId; ///< Identifier (unique) |
71 | Int_t fDEId; ///< Detection element to which this bus patch is connected | |
72 | Int_t fDdlId; ///< DDL to which this bus patch is connected | |
73 | AliMpArrayI fManus; ///< Manu Ids connected to this bus patch | |
74 | AliMpArrayI fNofManusPerModule; ///< Nof Manus per patch modules (PCBs) | |
75 | Float_t fCableLength; ///< length of the buspatch cable | |
76 | TString fCableLabel; ///< label of the buspatch cable | |
77 | TString fTranslatorLabel; ///< label of the translator board | |
78 | Int_t fFrtId; ///< FRT Ids connected to this bus patch | |
79 | ||
80 | ClassDef(AliMpBusPatch,3) // The class collectiong electronics properties of DDL | |
b4daf0b2 | 81 | }; |
82 | ||
83 | // inline functions | |
2a7ea2e6 | 84 | |
b4daf0b2 | 85 | /// Return the unique Id |
86 | inline Int_t AliMpBusPatch::GetId() const | |
87 | { return fId; } | |
88 | ||
89 | /// Return the Detection element Id | |
90 | inline Int_t AliMpBusPatch::GetDEId() const | |
91 | { return fDEId; } | |
92 | ||
59754717 | 93 | /// Return the Ddl Id |
b4daf0b2 | 94 | inline Int_t AliMpBusPatch::GetDdlId() const |
95 | { return fDdlId; } | |
96 | ||
59754717 | 97 | /// Return the FRT Id |
98 | inline Int_t AliMpBusPatch::GetFrtId() const | |
99 | { return fFrtId; } | |
100 | ||
bf4bf8d2 | 101 | /// Return length of buspatch |
102 | inline Float_t AliMpBusPatch::GetCableLength() const | |
103 | { return fCableLength; } | |
104 | ||
59754717 | 105 | /// Set FRT id for buspatch |
106 | inline void AliMpBusPatch::SetFrtId(Int_t id) | |
107 | { fFrtId = id; } | |
108 | ||
bf4bf8d2 | 109 | /// Set length of buspatch |
110 | inline void AliMpBusPatch::SetCableLength(Float_t length) | |
111 | { fCableLength = length; } | |
112 | ||
59754717 | 113 | /// Return label of buspatch |
114 | inline TString AliMpBusPatch::GetCableLabel() const | |
115 | { return fCableLabel; } | |
116 | ||
117 | /// Set label of buspatch | |
118 | inline void AliMpBusPatch::SetCableLabel(TString label) | |
119 | { fCableLabel = label; } | |
120 | ||
121 | /// Return label of translator | |
122 | inline TString AliMpBusPatch::GetTranslatorLabel() const | |
123 | { return fCableLabel; } | |
124 | ||
125 | /// Set label of translator | |
126 | inline void AliMpBusPatch::SetTranslatorLabel(TString label) | |
127 | { fTranslatorLabel = label; } | |
128 | ||
129 | ||
b4daf0b2 | 130 | #endif //ALI_BUS_PATCH_H |
528df1a6 | 131 | |
1e738c3c | 132 | |
1e738c3c | 133 | |
1e738c3c | 134 | |
1e738c3c | 135 | |
1e738c3c | 136 | |
1e738c3c | 137 | |
d2892ef5 | 138 | |
1e738c3c | 139 | |
5826f1df | 140 | |
5826f1df | 141 | |
1e738c3c | 142 | |
1e738c3c | 143 | |
144 |