AliRoot Core  v5-06-30 (35d6c57)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpTrigger.h
Go to the documentation of this file.
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: AliMpTrigger.h,v 1.5 2006/05/24 13:58:27 ivana Exp $
6 
11 // Author: Laurent Aphecetche
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 
28 #ifndef ALI_MP_PLANE_TYPE
29 # include "AliMpPlaneType.h"
30 #endif
31 
32 class AliMpPCB;
33 class AliMpSlat;
34 class AliMpVSegmentation;
35 class TArrayI;
36 
37 class AliMpTrigger : public TObject
38 {
39 public:
40  AliMpTrigger();
41  AliMpTrigger(const char* slatType, AliMp::PlaneType bendingOrNonBending);
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 
56  Double_t GetPositionX() const { return DX(); }
58  Double_t GetPositionY() const { return DY(); }
59 
60  AliMpSlat* GetLayer(int layer) const;
61  AliMpVSegmentation* GetLayerSegmentation(int layer) const;
62 
63  Int_t GetNofPadsX() const;
64 
65  Int_t GetMaxNofPadsY() const;
66 
68  Int_t GetSize() const;
69 
70  void Print(Option_t* option="") const;
71 
73 
75  Double_t GetDimensionX() const { return DX(); }
77  Double_t GetDimensionY() const { return DY(); }
78 
79 private:
80 
81  Bool_t IsLayerValid(int layer) const;
82 
83  TString fId;
87  Int_t fMaxNofPadsY;
88  Double_t fDX;
89  Double_t fDY;
90 
91  ClassDef(AliMpTrigger,4) // Slat for trigger
92 };
93 
94 #endif
Double_t GetPositionX() const
Return x position.
Definition: AliMpTrigger.h:56
Int_t GetNofPadsX() const
Double_t DX() const
#define TObjArray
virtual ~AliMpTrigger()
void Print(Option_t *option="") const
void GetAllLocalBoardNumbers(TArrayI &lbn) const
const char * GetID() const
A PCB for station 3,4 or 5.
Definition: AliMpPCB.h:46
AliMpSlat * GetLayer(int layer) const
Bool_t IsLayerValid(int layer) const
AliMpVSegmentation * GetLayerSegmentation(int layer) const
Double_t fDX
half-size in x (cm)
Definition: AliMpTrigger.h:88
AliMp::PlaneType PlaneType() const
A slat (building block of stations 3, 4 and 5)
Definition: AliMpSlat.h:51
TObjArray fSlats
virtual slat composing this trigger slat
Definition: AliMpTrigger.h:85
A trigger slat.
Definition: AliMpTrigger.h:37
Bool_t AdoptLayer(AliMpSlat *slat)
Double_t fDY
half-size in y (cm)
Definition: AliMpTrigger.h:89
const char * GetName() const
Int_t GetSize() const
Returns the number of layers.
Double_t DY() const
Double_t GetDimensionX() const
Return the x dimension (half-sizes) of that slat (cm)
Definition: AliMpTrigger.h:75
Double_t GetDimensionY() const
Return the y dimension (half-sizes) of that slat (cm)
Definition: AliMpTrigger.h:77
The abstract base class for the segmentation.
Double_t GetPositionY() const
Return y position.
Definition: AliMpTrigger.h:58
AliMp::PlaneType fPlaneType
bending or non-bending
Definition: AliMpTrigger.h:84
Int_t fMaxNofPadsY
max number of pads in y direction
Definition: AliMpTrigger.h:87
TString fId
name of that slat
Definition: AliMpTrigger.h:83
TObjArray fSlatSegmentations
segmentations for virtual slats
Definition: AliMpTrigger.h:86
Int_t GetMaxNofPadsY() const