Fixing a backward compatibility issue
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDDL.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: 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   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 {  return fId; }
85
86 #endif //ALI_MP_MANAGER_H
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101