]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/MUONmapping/AliMpTrigger.h
Correct use of ROOT_INCLUDE_DIR
[u/mrichter/AliRoot.git] / MUON / MUONmapping / AliMpTrigger.h
CommitLineData
c667f499 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2* See cxx source for full Copyright notice */
3
4// $Id$
13985652 5// $MpId: AliMpTrigger.h,v 1.5 2006/05/24 13:58:27 ivana Exp $
c667f499 6
cffcff29 7/// \ingroup mptrigger
c667f499 8/// \class AliMpTrigger
9/// \brief A trigger slat
13985652 10///
11// Author: Laurent Aphecetche
c667f499 12
13#ifndef ALI_MP_TRIGGER_H
14#define ALI_MP_TRIGGER_H
15
16#ifndef ROOT_TObject
17# include "TObject.h"
18#endif
19
20#ifndef ROOT_TString
21# include "TString.h"
22#endif
23
24#ifndef ROOT_TObjArray
25# include "TObjArray.h"
26#endif
27
c667f499 28#ifndef ALI_MP_PLANE_TYPE
29# include "AliMpPlaneType.h"
30#endif
31
32class AliMpPCB;
33class AliMpSlat;
1508d0f7 34class AliMpVSegmentation;
c667f499 35class TArrayI;
36
37class AliMpTrigger : public TObject
38{
39public:
40 AliMpTrigger();
cddd101e 41 AliMpTrigger(const char* slatType, AliMp::PlaneType bendingOrNonBending);
c667f499 42 virtual ~AliMpTrigger();
43
44 Bool_t AdoptLayer(AliMpSlat* slat);
45
46 void GetAllLocalBoardNumbers(TArrayI& lbn) const;
47
48 const char* GetID() const;
49
50 const char* GetName() const;
51
52 Double_t DX() const;
53 Double_t DY() const;
54
6e97fbb8 55 /// Return x position
56 Double_t GetPositionX() const { return DX(); }
57 /// Return y position
58 Double_t GetPositionY() const { return DY(); }
c667f499 59
60 AliMpSlat* GetLayer(int layer) const;
1508d0f7 61 AliMpVSegmentation* GetLayerSegmentation(int layer) const;
c667f499 62
63 Int_t GetNofPadsX() const;
64
65 Int_t GetMaxNofPadsY() const;
66
67 /// Returns the number of layers.
68 Int_t GetSize() const;
69
70 void Print(Option_t* option="") const;
71
cddd101e 72 AliMp::PlaneType PlaneType() const;
c9da0af9 73
cddcc1f3 74 /// Return the x dimension (half-sizes) of that slat (cm)
6e97fbb8 75 Double_t GetDimensionX() const { return DX(); }
cddcc1f3 76 /// Return the y dimension (half-sizes) of that slat (cm)
6e97fbb8 77 Double_t GetDimensionY() const { return DY(); }
c9da0af9 78
c667f499 79private:
80
81 Bool_t IsLayerValid(int layer) const;
82
829425a5 83 TString fId; ///< name of that slat
cddd101e 84 AliMp::PlaneType fPlaneType; ///< bending or non-bending
829425a5 85 TObjArray fSlats; ///< virtual slat composing this trigger slat
1508d0f7 86 TObjArray fSlatSegmentations; ///< segmentations for virtual slats
829425a5 87 Int_t fMaxNofPadsY; ///< max number of pads in y direction
88 Double_t fDX; ///< half-size in x (cm)
89 Double_t fDY; ///< half-size in y (cm)
c667f499 90
1508d0f7 91 ClassDef(AliMpTrigger,4) // Slat for trigger
c667f499 92};
93
94#endif