New macro to keep track of timing performances of the segmentation methods (Laurent)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpMotif.h
CommitLineData
dee1d5f1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
5f91c9e8 4// $Id$
13985652 5// $MpId: AliMpMotif.h,v 1.8 2006/05/24 13:58:18 ivana Exp $
dee1d5f1 6
7/// \ingroup motif
8/// \class AliMpMotif
9/// \brief A motif with its unique ID and the motif type.
10///
13985652 11/// \author David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 12
2998a151 13#ifndef ALI_MP_MOTIF_H
14#define ALI_MP_MOTIF_H
5f91c9e8 15
2a7ea2e6 16#include "AliMpVMotif.h"
17
5f91c9e8 18#include <TObject.h>
5f91c9e8 19#include <TVector2.h>
20
2998a151 21class TString;
22
5f91c9e8 23class AliMpMotif : public AliMpVMotif
24{
25 public:
26 AliMpMotif(const TString &id,AliMpMotifType *motifType, const TVector2& padDimension);
27 AliMpMotif();
2998a151 28 virtual ~AliMpMotif();
5f91c9e8 29
30 // Access methods
31 virtual Int_t GetNofPadDimensions() const;
2998a151 32 virtual TVector2 GetPadDimensions(Int_t /*i*/ = 0) const;
5f91c9e8 33 virtual TVector2 GetPadDimensions(const AliMpIntPair& localIndices) const;
34
35 // Geometry
36 virtual TVector2 Dimensions() const;
37
38 // Other methods
39 virtual TVector2 PadPositionLocal(const AliMpIntPair& localIndices) const;
40 virtual AliMpIntPair PadIndicesLocal(const TVector2& localPos) const;
41
42 private:
43 // methods
44
45 // data members
829425a5 46 TVector2 fPadDimensions; ///< pad dimensions (halflength x, y size)
5f91c9e8 47
48 ClassDef(AliMpMotif,1) // A motif with its ID
49};
50
51// inline functions
52
f5671fc3 53 /// Return 1 as the number of pad dimensions
2998a151 54inline Int_t AliMpMotif::GetNofPadDimensions() const
55{ return 1; }
56
f5671fc3 57 /// Return the pad dimensions
2998a151 58inline TVector2 AliMpMotif::GetPadDimensions(Int_t /*i*/) const
59{ return fPadDimensions; }
5f91c9e8 60
2998a151 61#endif //ALI_MP_MOTIF_H