]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpConnection.h
Adding new option to get the DE by its name (moreover to get it by its ID).
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpConnection.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: AliMpConnection.h,v 1.9 2006/05/24 13:58:18 ivana Exp $
6
7 /// \ingroup motif
8 /// \class AliMpConnection
9 /// \brief A connection properties.
10 ///
11 /// \author David Guez, Ivana Hrivnacova; IPN Orsay
12
13 #ifndef ALI_MP_CONNECTION_H
14 #define ALI_MP_CONNECTION_H
15
16 #include <TObject.h>
17
18 #include "AliMpMotifType.h"
19 #include "AliMpIntPair.h"
20
21 #include <TString.h>
22
23 class AliMpConnection : public TObject
24 {
25   public:
26     AliMpConnection();
27     AliMpConnection(Int_t padNum,Int_t bergNum,Int_t kaptonNum,Int_t gassiNum);
28     virtual ~AliMpConnection();
29
30     // methods
31
32     //
33     // accessors
34     //
35           /// Return Berg connector number
36     Int_t GetBergNum()   const {return fBergNum;}
37           /// Return kapton connector number
38     Int_t GetKaptonNum() const {return fKaptonNum;}
39           /// Return Gassiplex channel number
40     Int_t GetGassiNum()  const {return fGassiNum;}
41           /// Return pad number
42     Int_t GetPadNum()  const {return fPadNum;}
43           /// Return the motif type which contains this connection
44     AliMpMotifType *GetOwner() const {return fOwner;}
45     
46     AliMpIntPair LocalIndices() const;
47     TString  PadName() const;
48     
49     //
50     // modifiers
51     //
52
53           /// Set Gassiplex channel number
54     void SetGassiNum(Int_t n) { fGassiNum = n; }
55           /// Set the motif type which contains this connection
56     void SetOwner(AliMpMotifType *owner) {fOwner=owner;}
57
58   private:
59     /// Not implemented
60     AliMpConnection(const AliMpConnection& right);
61     /// Not implemented
62     AliMpConnection& operator=(const AliMpConnection& right);
63
64     // data members
65     Int_t fPadNum;    ///< Pad number
66     Int_t fBergNum;   ///< Berg connector number
67     Int_t fKaptonNum; ///< Kapton connector number
68     Int_t fGassiNum;  ///< Gassiplex channel number
69     AliMpMotifType *fOwner; ///< The motif type which contains this connection
70
71   ClassDef(AliMpConnection,1)  // Connection description
72 };
73
74 // inline functions
75
76           /// Return the pad number converted to a name
77 inline TString AliMpConnection::PadName() const 
78 { return fOwner->PadName(fPadNum); }
79
80           /// Return the local indices of this pad in the motif
81 inline AliMpIntPair AliMpConnection::LocalIndices() const
82 { return fOwner->FindLocalIndicesByConnection(this);}
83
84 #endif //ALI_MP_CONNECTION_H