1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 // $MpId: AliMpTrigger.h,v 1.5 2006/05/24 13:58:27 ivana Exp $
8 /// \class AliMpTrigger
9 /// \brief A trigger slat
11 // Author: Laurent Aphecetche
13 #ifndef ALI_MP_TRIGGER_H
14 #define ALI_MP_TRIGGER_H
24 #ifndef ROOT_TObjArray
25 # include "TObjArray.h"
29 # include "TVector2.h"
32 #ifndef ALI_MP_PLANE_TYPE
33 # include "AliMpPlaneType.h"
38 class AliMpVSegmentation;
41 class AliMpTrigger : public TObject
45 AliMpTrigger(const char* slatType, AliMpPlaneType bendingOrNonBending);
46 virtual ~AliMpTrigger();
48 Bool_t AdoptLayer(AliMpSlat* slat);
50 void GetAllLocalBoardNumbers(TArrayI& lbn) const;
52 const char* GetID() const;
54 const char* GetName() const;
59 TVector2 Position() const;
61 AliMpSlat* GetLayer(int layer) const;
62 AliMpVSegmentation* GetLayerSegmentation(int layer) const;
64 Int_t GetNofPadsX() const;
66 Int_t GetMaxNofPadsY() const;
68 /// Returns the number of layers.
69 Int_t GetSize() const;
71 void Print(Option_t* option="") const;
73 AliMpPlaneType PlaneType() const;
75 TVector2 Dimensions() const;
79 Bool_t IsLayerValid(int layer) const;
81 TString fId; ///< name of that slat
82 AliMpPlaneType fPlaneType; ///< bending or non-bending
83 TObjArray fSlats; ///< virtual slat composing this trigger slat
84 TObjArray fSlatSegmentations; ///< segmentations for virtual slats
85 Int_t fMaxNofPadsY; ///< max number of pads in y direction
86 Double_t fDX; ///< half-size in x (cm)
87 Double_t fDY; ///< half-size in y (cm)
89 ClassDef(AliMpTrigger,4) // Slat for trigger