]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONTriggerCircuit.h
Always export to FES the regional configuration file
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerCircuit.h
CommitLineData
8ff54bb6 1#ifndef ALIMUONTRIGGERCIRCUIT_H
2#define ALIMUONTRIGGERCIRCUIT_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4* See cxx source for full Copyright notice */
5
6/* $Id$ */
7// Revision of includes 07/05/2004
8//
f3a2eb6b 9/// \ingroup base
8ff54bb6 10/// \class AliMUONTriggerCircuit
11/// \brief MUON Trigger circuit
12///
78649106 13// Author Philippe Crochet (LPCCFd)
8ff54bb6 14
15#include <TObject.h>
7103ac2d 16#include <TArrayF.h>
17
7103ac2d 18class AliMpLocalBoard;
da142235 19class AliMUONGeometryTransformer;
20class AliMpPad;
21class AliMpVSegmentation;
8ff54bb6 22
23class AliMUONTriggerCircuit : public TObject
24{
25public:
7103ac2d 26 AliMUONTriggerCircuit(const AliMUONGeometryTransformer* transformer);
8ff54bb6 27 virtual ~AliMUONTriggerCircuit();
28 // copy constructor
29 AliMUONTriggerCircuit(const AliMUONTriggerCircuit& AliMUONTriggerCircuit);
30 // assignment operator
31 AliMUONTriggerCircuit& operator=(const AliMUONTriggerCircuit& AliMUONTriggerCircuit);
32
8ff54bb6 33 //--- methods which return member data related info
7103ac2d 34 Float_t GetY11Pos(Int_t localBoardId, Int_t istrip) const;
35 Float_t GetY21Pos(Int_t localBoardId, Int_t istrip) const;
36 Float_t GetX11Pos(Int_t localBoardId, Int_t istrip) const;
37
8ff54bb6 38 // void Print(Option_t* opt="") const;
39 // void dump(const char* what, const Float_t* array, Int_t size);
40 // void dump(const char* what, const Int_t* array, Int_t size);
41
71a2d3aa 42 /// Set pointer to transformations
da142235 43 void SetTransformer(const AliMUONGeometryTransformer* transformer) {fkTransformer = transformer;}
745f40c7 44 /// Get pointer to transformations
da142235 45 const AliMUONGeometryTransformer* GetTransformer() const {return fkTransformer;}
afeb2b33 46 Float_t PtCal(Int_t localBoardId, Int_t istripX, Int_t idev, Int_t istripY) const;
47
8ff54bb6 48private:
49
da142235 50 void LoadYPos(AliMpLocalBoard* const localBoard);
51 void LoadXPos(AliMpLocalBoard* const localBoard);
8ff54bb6 52
7103ac2d 53 Int_t FirstStrip(AliMpLocalBoard* localBoard);
54
55 void FillXstrips(const Int_t icol,
8ff54bb6 56 const Int_t iFirstStrip, const Int_t iLastStrip,
7103ac2d 57 Int_t liStripCircuit, TArrayF& ypos);
8ff54bb6 58
7103ac2d 59 void FillYstrips(const Int_t iFirstStrip,
8ff54bb6 60 const Int_t iLastStrip, Int_t liStripCircuit,
61 const Bool_t doubling);
62
7103ac2d 63 void XYGlobal(const AliMpPad& pad,
64 Double_t* xyGlobal);
8ff54bb6 65
66
67private:
7103ac2d 68 TArrayF fXpos11[235]; ///< X position of Y strips in MC11
69 TArrayF fYpos11[235]; ///< Y position of X strips in MC11
70 TArrayF fYpos21[235]; ///< Y position of X strips in MC21
8ff54bb6 71
da142235 72 const AliMUONGeometryTransformer* fkTransformer; //!< pointer to transformation
73 const AliMpVSegmentation* fkCurrentSeg; //!< current segmentation
7103ac2d 74
75 Int_t fCurrentDetElem; //!< current detection elt id
76 Int_t fCurrentLocalBoard; //!< current local board id
8ff54bb6 77
78 ClassDef(AliMUONTriggerCircuit,1) // Trigger Circuit class
79};
80#endif