1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 // $MpId: AliMpTriggerReader.h,v 1.2 2006/03/02 16:36:26 ivana Exp $
8 /// \class AliMpTriggerReader
9 /// \brief Read trigger slat ASCII files
10 /// \author Laurent Aphecetche
12 #ifndef ALI_MP_TRIGGER_READER_H
13 #define ALI_MP_TRIGGER_READER_H
27 #ifndef ALI_MP_PLANE_TYPE_H
28 # include "AliMpPlaneType.h"
31 #ifndef ALI_MP_STATION_TYPE_H
32 # include "AliMpStationType.h"
40 class AliMpTriggerReader : public TObject
44 virtual ~AliMpTriggerReader();
46 static AliMpTrigger* ReadSlat(const char* slatType, AliMpPlaneType planeType);
48 static AliMpPCB* ReadPCB(const char* pcbType);
54 static AliMpSlat* BuildSlat(const char* slatName,
55 AliMpPlaneType planeType,
56 const TList& descriptionLines,
59 static Int_t DecodeFlipLine(const TString& sline,
61 Bool_t& flipX, Bool_t& flipY);
63 static Int_t DecodeScaleLine(const TString& sline,
64 Double_t& scale, TString& slatType);
66 static void FlipLines(TList& lines, Bool_t flipX, Bool_t flipY,
67 Int_t srcLine, Int_t destLine);
69 static TString GetBoardNameFromPCBLine(const TString& sline);
71 static Int_t GetLine(const TString& slatType);
73 static Int_t IsLayerLine(const TString& sline);
75 static int LocalBoardNumber(const char* localBoardName);
77 static AliMpPCB* PCB(const char* pcbType);
79 static void ReadLines(const char* slatType,
80 AliMpPlaneType planeType,
82 Double_t& scale, Bool_t& flipX, Bool_t& flipY,
83 Int_t& srcLine, Int_t& destLine);
85 static void ReadLocalBoardMapping();
89 static TMap fgPCBMap; //! map of TObjString to AliMpPCB*
91 static TMap fgLocalBoardMap; //! map of TObjString to TObjString
93 static const TString fgkKeywordLayer; //! Keyword: LAYER
94 static const TString fgkKeywordScale; //! Keyword: SCALE
95 static const TString fgkKeywordPcb; //! Keyword : PCB
96 static const TString fgkKeywordFlipX; //! Keyword : FLIPX
97 static const TString fgkKeywordFlipY; //! Keyword : FLIPY
99 ClassDef(AliMpTriggerReader,1) // Reader for trigger slats mapping files