Correct use of ROOT_INCLUDE_DIR
[u/mrichter/AliRoot.git] / MUON / MUONmapping / AliMpTriggerSegmentation.h
CommitLineData
ff7d3d1a 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: AliMpTriggerSegmentation.h,v 1.8 2006/05/24 13:58:27 ivana Exp $
ff7d3d1a 6
cffcff29 7/// \ingroup mptrigger
ff7d3d1a 8/// \class AliMpTriggerSegmentation
9/// \brief Implementation of AliMpVSegmentation for trigger slats.
13985652 10///
11// Author: Laurent Aphecetche
ff7d3d1a 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
28class AliMpMotifPosition;
29class AliMpPCB;
30class AliMpTrigger;
31
32class AliMpTriggerSegmentation : public AliMpVSegmentation
33{
34public:
35 AliMpTriggerSegmentation();
c5b874d0 36 AliMpTriggerSegmentation(const AliMpTrigger* slat, Bool_t own = false);
ff7d3d1a 37 virtual ~AliMpTriggerSegmentation();
38
39 virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
264a9c47 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;
ff7d3d1a 44 const char* GetName() const;
45
026b7442 46 Int_t MaxPadIndexX() const;
47 Int_t MaxPadIndexY() const;
efb408b3 48 Int_t NofPads() const { return fNofStrips; }
ff7d3d1a 49
168e9c4d 50 virtual AliMpPad PadByLocation(Int_t manuId, Int_t manuChannel,
ff7d3d1a 51 Bool_t warning) const;
52
168e9c4d 53 virtual AliMpPad PadByIndices(Int_t ix, Int_t iy,
ff7d3d1a 54 Bool_t warning) const;
55
6e97fbb8 56 virtual AliMpPad PadByPosition(Double_t x, Double_t y,
ff7d3d1a 57 Bool_t warning) const;
58
59 const AliMpTrigger* Slat() const;
60
63bcb3c3 61 virtual void GetAllElectronicCardIDs(TArrayI& ecn) const;
62
f3ed9a44 63 virtual AliMp::PlaneType PlaneType() const;
64
65 virtual AliMp::StationType StationType() const;
66
6e97fbb8 67 virtual Double_t GetDimensionX() const;
68 virtual Double_t GetDimensionY() const;
63bcb3c3 69
3635f34f 70 virtual Int_t GetNofElectronicCards() const;
71
6e97fbb8 72 virtual Double_t GetPositionX() const;
73 virtual Double_t GetPositionY() const;
3635f34f 74
75 virtual Bool_t HasMotifPosition(Int_t manuId) const;
76
77 virtual AliMpMotifPosition* MotifPosition(Int_t manuId) const;
78
13e7956b 79private:
71a2d3aa 80 /// Not implemented
884a73f1 81 AliMpTriggerSegmentation(const AliMpTriggerSegmentation& right);
71a2d3aa 82 /// Not implemented
884a73f1 83 AliMpTriggerSegmentation& operator = (const AliMpTriggerSegmentation& right);
f3ed9a44 84
c5b874d0 85 const AliMpTrigger* fkSlat; ///< Slat
86 Bool_t fIsOwner;///< Trigger slat ownership
829425a5 87 Int_t fNofStrips; ///< Number of strips in this slat
88
c5b874d0 89 ClassDef(AliMpTriggerSegmentation,3) // Segmentation for slat trigger stations
ff7d3d1a 90};
91
f3ed9a44 92/// Return station type
93inline AliMp::StationType AliMpTriggerSegmentation::StationType() const
94{ return AliMp::kStationTrigger; }
95
96
ff7d3d1a 97#endif