Line data Source code
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: AliMpDDL.h,v 1.6 2006/05/24 13:58:16 ivana Exp $
6 :
7 : /// \ingroup management
8 : /// \class AliMpDDL
9 : /// \brief The class defined electronics properties of DDL
10 : ///
11 : /// \author Ivana Hrivnacova, IPN Orsay
12 :
13 : #ifndef ALI_MP_DDL_H
14 : #define ALI_MP_DDL_H
15 :
16 : #include <TObject.h>
17 :
18 : #include "AliMpArrayI.h"
19 :
20 : class AliMpDDL : public TObject {
21 :
22 : public:
23 : AliMpDDL(Int_t id);
24 : AliMpDDL(TRootIOCtor* /*ioCtor*/);
25 : virtual ~AliMpDDL();
26 :
27 : // methods
28 : Bool_t AddDE(Int_t detElemId);
29 : Bool_t AddFrt(Int_t frtId);
30 : Bool_t AddTriggerCrate(Int_t crateId);
31 :
32 : void FillBusPatchIds();
33 :
34 : // get methods
35 : Int_t GetId() const;
36 :
37 : // DEs
38 : Int_t GetNofDEs() const;
39 : Int_t GetDEId(Int_t index) const;
40 : Bool_t HasDEId(Int_t detElemId) const;
41 :
42 : // FRT Crcous
43 : Int_t GetNofFrts() const;
44 : Int_t GetFrtId(Int_t index) const;
45 : Bool_t HasFrtId(Int_t frtId) const;
46 :
47 : // Bus patches
48 : Int_t GetNofBusPatches() const;
49 : Int_t GetBusPatchId(Int_t index) const;
50 : Bool_t HasBusPatchId(Int_t busPatchId) const;
51 :
52 : // Trigger crates
53 : Int_t GetNofTriggerCrates() const;
54 : Int_t GetTriggerCrateId(Int_t index) const;
55 : Bool_t HasTriggerCrateId(Int_t crateId) const;
56 :
57 : // Dsp info
58 : Int_t GetMaxDsp() const;
59 : void GetBusPerDsp(Int_t* iBusPerDSP) const;
60 :
61 : private:
62 : /// Not implemented
63 : AliMpDDL();
64 : /// Not implemented
65 : AliMpDDL(const AliMpDDL& rhs);
66 : /// Not implemented
67 : AliMpDDL& operator=(const AliMpDDL& rhs);
68 :
69 : // data members
70 : Int_t fId; ///< Identifier (unique)
71 : AliMpArrayI fDEIds; ///< Detection element Ids connected to this DDL
72 : AliMpArrayI fFrtIds; ///< FRT Crocus Ids connected to this DDL
73 : AliMpArrayI fBusPatchIds; ///< Bus patch Ids connected to this DDL
74 : AliMpArrayI fTriggerCrateIds; ///< Trigger crate Ids connected to this DDL
75 :
76 :
77 1386 : ClassDef(AliMpDDL,1) // The class collectiong electronics properties of DDL
78 : };
79 :
80 : // inline functions
81 :
82 : /// Return the unique Id
83 : inline Int_t AliMpDDL::GetId() const
84 5328 : { return fId; }
85 :
86 : #endif //ALI_MP_MANAGER_H
87 :
88 :
89 :
90 :
91 :
92 :
93 :
94 :
95 :
96 :
97 :
98 :
99 :
100 :
101 :
|