AliRoot Core  da88d91 (da88d91)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpTriggerSegmentation.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: AliMpTriggerSegmentation.h,v 1.8 2006/05/24 13:58:27 ivana Exp $
6 
11 // Author: Laurent Aphecetche
12 
13 #ifndef ALI_MP_TRIGGER_SEGMENTATION_H
14 #define ALI_MP_TRIGGER_SEGMENTATION_H
15 
16 #ifndef ROOT_TString
17 #include "TString.h"
18 #endif
19 
20 #ifndef ALI_MP_V_SEGMENTATION_H
21 #include "AliMpVSegmentation.h"
22 #endif
23 
24 #ifndef ALI_MP_PAD_H
25 #include "AliMpPad.h"
26 #endif
27 
28 class AliMpMotifPosition;
29 class AliMpPCB;
30 class AliMpTrigger;
31 
33 {
34 public:
36  AliMpTriggerSegmentation(const AliMpTrigger* slat, Bool_t own = false);
37  virtual ~AliMpTriggerSegmentation();
38 
39  virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
40  virtual AliMpVPadIterator* CreateIterator() const;
41  virtual Int_t GetNeighbours(const AliMpPad& pad, TObjArray& neighbours,
42  Bool_t includeSelf=kFALSE,
43  Bool_t includeVoid=kFALSE) const;
44  const char* GetName() const;
45 
46  Int_t MaxPadIndexX() const;
47  Int_t MaxPadIndexY() const;
48  Int_t NofPads() const { return fNofStrips; }
49 
50  virtual AliMpPad PadByLocation(Int_t manuId, Int_t manuChannel,
51  Bool_t warning) const;
52 
53  virtual AliMpPad PadByIndices(Int_t ix, Int_t iy,
54  Bool_t warning) const;
55 
56  virtual AliMpPad PadByPosition(Double_t x, Double_t y,
57  Bool_t warning) const;
58 
59  const AliMpTrigger* Slat() const;
60 
61  virtual void GetAllElectronicCardIDs(TArrayI& ecn) const;
62 
63  virtual AliMp::PlaneType PlaneType() const;
64 
65  virtual AliMp::StationType StationType() const;
66 
67  virtual Double_t GetDimensionX() const;
68  virtual Double_t GetDimensionY() const;
69 
70  virtual Int_t GetNofElectronicCards() const;
71 
72  virtual Double_t GetPositionX() const;
73  virtual Double_t GetPositionY() const;
74 
75  virtual Bool_t HasMotifPosition(Int_t manuId) const;
76 
77  virtual AliMpMotifPosition* MotifPosition(Int_t manuId) const;
78 
79 private:
84 
86  Bool_t fIsOwner;
87  Int_t fNofStrips;
88 
89  ClassDef(AliMpTriggerSegmentation,3) // Segmentation for slat trigger stations
90 };
91 
94 { return AliMp::kStationTrigger; }
95 
96 
97 #endif
virtual AliMpPad PadByLocation(Int_t manuId, Int_t manuChannel, Bool_t warning) const
Find pad by location.
virtual Double_t GetPositionY() const
Return the y position of the origin of the detection element.
Int_t MaxPadIndexX() const
Return maximum pad index in X direction.
#define TObjArray
A PCB for station 3,4 or 5.
Definition: AliMpPCB.h:46
A rectangle area positioned in plane..
Definition: AliMpArea.h:20
const AliMpTrigger * fkSlat
Slat.
virtual Double_t GetDimensionY() const
Return the y half-sizes of the detection element.
const AliMpTrigger * Slat() const
virtual void GetAllElectronicCardIDs(TArrayI &ecn) const
Fill the given array with the electronic card IDs.
virtual Double_t GetDimensionX() const
Return the x half-sizes of the detection element.
Bool_t fIsOwner
Trigger slat ownership.
A trigger slat.
Definition: AliMpTrigger.h:37
A placed motif.
virtual AliMpVPadIterator * CreateIterator() const
Create a pad iterator over the whole area.
Implementation of AliMpVSegmentation for trigger slats.
An interface for an iterator over pads.
virtual AliMpMotifPosition * MotifPosition(Int_t manuId) const
Return the position of a given manu (aka motifPosition)
virtual Bool_t HasMotifPosition(Int_t manuId) const
Whether or not we have a given manu.
AliMpTriggerSegmentation & operator=(const AliMpTriggerSegmentation &right)
Not implemented.
virtual AliMpPad PadByIndices(Int_t ix, Int_t iy, Bool_t warning) const
Find pad by indices.
Int_t MaxPadIndexY() const
Return maximum pad index in Y direction.
Int_t fNofStrips
Number of strips in this slat.
Int_t NofPads() const
Return the number of pads in the detection element.
virtual Int_t GetNeighbours(const AliMpPad &pad, TObjArray &neighbours, Bool_t includeSelf=kFALSE, Bool_t includeVoid=kFALSE) const
The abstract base class for the segmentation.
trigger stations (slats)
virtual AliMp::StationType StationType() const
Return station type.
Class which encapsuate all information about a pad.
Definition: AliMpPad.h:22
virtual Double_t GetPositionX() const
Return the x position of the origin of the detection element.
virtual Int_t GetNofElectronicCards() const
Get the number of electronic card IDs.
virtual AliMpPad PadByPosition(Double_t x, Double_t y, Bool_t warning) const
Find pad by position.
virtual AliMp::PlaneType PlaneType() const
Return the plane type.