]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpTrigger.h
Adding option for ownership of objects in the map
[u/mrichter/AliRoot.git] / MUON / mapping / 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
7/// \ingroup trigger
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
28#ifndef ROOT_TVector2
29# include "TVector2.h"
30#endif
31
32#ifndef ALI_MP_PLANE_TYPE
33# include "AliMpPlaneType.h"
34#endif
35
36class AliMpPCB;
37class AliMpSlat;
38class TArrayI;
39
40class AliMpTrigger : public TObject
41{
42public:
43 AliMpTrigger();
44 AliMpTrigger(const char* slatType, AliMpPlaneType bendingOrNonBending);
45 virtual ~AliMpTrigger();
46
47 Bool_t AdoptLayer(AliMpSlat* slat);
48
49 void GetAllLocalBoardNumbers(TArrayI& lbn) const;
50
51 const char* GetID() const;
52
53 const char* GetName() const;
54
55 Double_t DX() const;
56 Double_t DY() const;
57
58 TVector2 Position() const;
59
60 AliMpSlat* GetLayer(int layer) const;
61
62 Int_t GetNofPadsX() const;
63
64 Int_t GetMaxNofPadsY() const;
65
66 /// Returns the number of layers.
67 Int_t GetSize() const;
68
69 void Print(Option_t* option="") const;
70
c9da0af9 71 AliMpPlaneType PlaneType() const;
72
73 TVector2 Dimensions() const;
74
c667f499 75private:
76
77 Bool_t IsLayerValid(int layer) const;
78
829425a5 79 TString fId; ///< name of that slat
80 AliMpPlaneType fPlaneType; ///< bending or non-bending
81 TObjArray fSlats; ///< virtual slat composing this trigger slat
82 Int_t fMaxNofPadsY; ///< max number of pads in y direction
83 Double_t fDX; ///< half-size in x (cm)
84 Double_t fDY; ///< half-size in y (cm)
c667f499 85
cfbe938f 86 ClassDef(AliMpTrigger,3) // Slat for trigger
c667f499 87};
88
89#endif