]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpMotifSpecial.h
In mapping:
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpMotifSpecial.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: AliMpMotifSpecial.h,v 1.11 2006/05/24 13:58:18 ivana Exp $
dee1d5f1 6
7/// \ingroup motif
8/// \class AliMpMotifSpecial
9/// \brief A special motif with varying pad dimensions
10///
13985652 11/// \author David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 12
13#ifndef ALI_MP_MOTIF_SPECIAL_H
14#define ALI_MP_MOTIF_SPECIAL_H
15
2a7ea2e6 16#include "AliMpVMotif.h"
5006ec94 17#include "AliMpExMap.h"
5006ec94 18
5f91c9e8 19#include <TVector2.h>
2a7ea2e6 20#include <TObjArray.h>
5f91c9e8 21
2998a151 22class TString;
23
5f91c9e8 24class AliMpMotifSpecial : public AliMpVMotif
25{
26 public:
27 AliMpMotifSpecial(const TString &id, AliMpMotifType *motifType);
630711ed 28 AliMpMotifSpecial(TRootIOCtor* ioCtor);
2998a151 29 virtual ~AliMpMotifSpecial();
5f91c9e8 30
31 // Access methods
32 virtual TVector2 GetPadDimensions(const AliMpIntPair& localIndices) const;
33 virtual Int_t GetNofPadDimensions() const;
34 virtual TVector2 GetPadDimensions(Int_t i) const;
35
36 // Set methods
37 void SetPadDimensions(const AliMpIntPair& localIndices,
38 const TVector2& dimensions);
39
40 // Geometry
d7885370 41 void CalculateDimensions();
5f91c9e8 42 virtual TVector2 Dimensions() const;
43
44 // Other methods
45 virtual TVector2 PadPositionLocal(const AliMpIntPair& localIndices) const;
46 virtual AliMpIntPair PadIndicesLocal(const TVector2& localPos) const;
47
48 private:
630711ed 49 /// Not implemented
50 AliMpMotifSpecial();
5f91c9e8 51 // methods
52 Int_t VectorIndex(const AliMpIntPair& indices) const;
53
54 // data members
2294822d 55 TVector2 fDimensions; ///< motif dimensions
56 AliMpExMap fPadDimensionsVector; ///< the vector of pad dimensions
57 TObjArray fPadDimensionsVector2; ///< the vector of different pad dimensions
5f91c9e8 58
d7885370 59 ClassDef(AliMpMotifSpecial,2) // A motif with its ID
5f91c9e8 60};
61
62#endif //ALI_MP_MOTIF_SPECIAL_H