Reordering includes, forward declarations from most specific to more
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpBusPatch.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: AliMpBusPatch.h,v 1.2 2006/03/17 11:35:58 ivana Exp $
6
7 /// \ingroup management
8 /// \class AliMpBusPatch
9 /// \brief Class that manages the maps buspatch<>DDL<>DE 
10 ///
11 /// Calculates also the maximum DSP and buspatch numbers for a given DE
12 ///
13 /// Author: Ch. Finck; Subatech Nantes
14
15 #ifndef ALI_MP_BUSPATCH_H
16 #define ALI_MP_BUSPATCH_H
17
18 #include <TObject.h>
19
20 #include <TExMap.h>
21
22 class TArrayI;
23
24 class AliMpBusPatch : public TObject
25 {
26
27  public:
28
29   AliMpBusPatch();
30   AliMpBusPatch(const AliMpBusPatch& src);
31   virtual ~AliMpBusPatch();
32
33   // operators  
34   AliMpBusPatch& operator = (const AliMpBusPatch& src) ;
35   
36   // methods
37   void ReadBusPatchFile();
38   void GetDspInfo(Int_t iCh, Int_t& iDspMax, Int_t* iBusPerDSP);
39
40   Int_t    GetDEfromBus(Int_t busPatchId);
41   TArrayI* GetBusfromDE(Int_t idDE);
42   Int_t    GetDDLfromBus(Int_t busPatchId);
43
44  private:
45
46   TExMap fDetElemIdToBusPatch;       //! Map from idDE to BusPatch   
47   TExMap fBusPatchToDetElem;         //! Map from BusPatch to idDE
48   TExMap fBusPatchToDDL;             //! Map from BusPatch to iDDL
49
50   Int_t fMaxBusPerCh[10];            //! max buspatch number per chamber
51
52   ClassDef(AliMpBusPatch,1) //utility class for the motif type
53 };
54
55
56 #endif //ALI_MP_BUSPATCH_H