]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpSlatSegmentation.h
Fixed a would-be-a-bug in PadByIndices where AliMpPad returned would
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpSlatSegmentation.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: AliMpSlatSegmentation.h,v 1.4 2005/09/19 19:01:09 ivana Exp $
6
7 /// \ingroup slat
8 /// \class AliMpSlatSegmentation
9 /// \brief Implementation of AliMpVSegmentation for St345 slats.
10 /// 
11 /// Author: Laurent Aphecetche
12
13 #ifndef ALI_MP_SLAT_SEGMENTATION_H
14 #define ALI_MP_SLAT_SEGMENTATION_H
15
16 #ifndef ROOT_TString
17 #include "TString.h"
18 #endif
19
20 #ifndef ALI_MP_V_SEGMENTATION_H
21 #include "AliMpVSegmentation.h"
22 #endif
23
24 #ifndef ALI_MP_PAD_H
25 #include "AliMpPad.h"
26 #endif
27
28 class AliMpMotifPosition;
29 class AliMpPCB;
30 class AliMpSlat;
31
32 class AliMpSlatSegmentation : public AliMpVSegmentation
33 {
34  public:
35   AliMpSlatSegmentation();
36   AliMpSlatSegmentation(const AliMpSlat* slat);
37   virtual ~AliMpSlatSegmentation();
38
39   virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
40
41   const char* GetName() const;
42   
43   Bool_t HasPad(const AliMpIntPair& indices) const;
44
45   Int_t MaxPadIndexX();
46   Int_t MaxPadIndexY();
47   
48   virtual AliMpPad PadByLocation(const AliMpIntPair& location, 
49                          Bool_t warning) const;
50
51   virtual AliMpPad PadByIndices(const AliMpIntPair& indices,  
52                         Bool_t warning) const;
53
54   virtual AliMpPad PadByPosition(const TVector2& position,
55                          Bool_t warning) const;
56
57   const AliMpSlat* Slat() const;
58   
59  private:
60   const AliMpSlat* fkSlat; // Slat
61
62   ClassDef(AliMpSlatSegmentation,1) // A slat for stations 3,4,5
63 };
64
65 #endif