]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpMotifSpecial.h
Removing meaningelss const (warnings on alpha, sun, and with icc)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpMotifSpecial.h
1 // $Id$
2 // Category: motif
3 //
4 // Class AliMpMotifSpecial
5 // -----------------------
6 // Class that defines a motif with its unique ID
7 // and the motif type.
8 //
9 // Authors: David Guez, Ivana Hrivnacova; IPN Orsay
10
11 #ifndef ALI_MP_MOTIF_SPECIAL_H
12 #define ALI_MP_MOTIF_SPECIAL_H
13
14 #include <TVector2.h>
15
16 #include "AliMpMotifTypes.h"
17 #include "AliMpVMotif.h"
18
19 class TString;
20
21 class AliMpMotifSpecial : public AliMpVMotif
22 {
23  public:
24   AliMpMotifSpecial(const TString &id, AliMpMotifType *motifType);
25   AliMpMotifSpecial();
26   virtual ~AliMpMotifSpecial();
27
28   // Access methods
29   virtual TVector2 GetPadDimensions(const AliMpIntPair& localIndices) const;
30   virtual Int_t    GetNofPadDimensions() const;
31   virtual TVector2 GetPadDimensions(Int_t i) const;
32
33   // Set methods
34   void SetPadDimensions(const AliMpIntPair& localIndices,
35                         const TVector2& dimensions);
36   
37   // Geometry
38   virtual TVector2 Dimensions() const;
39
40   // Other methods
41   virtual TVector2     PadPositionLocal(const AliMpIntPair& localIndices) const;
42   virtual AliMpIntPair PadIndicesLocal(const TVector2& localPos) const;
43
44  private:
45  
46   // methods
47   Int_t VectorIndex(const AliMpIntPair& indices) const;
48
49   // data members
50   DimensionsMap fPadDimensionsVector;  // the vector of pad dimensions
51   DimensionsMap fPadDimensionsVector2; // the vector of different pad dimensions
52
53   ClassDef(AliMpMotifSpecial,1) // A motif with its ID
54 };
55
56 #endif //ALI_MP_MOTIF_SPECIAL_H