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.5 2006/05/24 13:58:27 ivana Exp $
8 /// \class AliMpTriggerReader
9 /// \brief Read trigger slat ASCII files
11 // Author: Laurent Aphecetche
13 #ifndef ALI_MP_TRIGGER_READER_H
14 #define ALI_MP_TRIGGER_READER_H
28 #ifndef ALI_MP_PLANE_TYPE_H
29 # include "AliMpPlaneType.h"
32 class AliMpSlatMotifMap;
39 class AliMpTriggerReader : public TObject
43 virtual ~AliMpTriggerReader();
45 AliMpTrigger* ReadSlat(const char* slatType, AliMp::PlaneType planeType);
47 AliMpPCB* ReadPCB(const char* pcbType);
51 AliMpSlat* BuildSlat(const char* slatName,
52 AliMp::PlaneType planeType,
53 const TList& descriptionLines,
56 Int_t DecodeFlipLine(const TString& sline,
58 Bool_t& flipX, Bool_t& flipY);
60 Int_t DecodeScaleLine(const TString& sline,
61 Double_t& scale, TString& slatType);
63 void FlipLines(TList& lines, Bool_t flipX, Bool_t flipY,
64 Int_t srcLine, Int_t destLine);
66 TString GetBoardNameFromPCBLine(const TString& sline);
68 Int_t GetLine(const TString& slatType);
70 Int_t IsLayerLine(const TString& sline);
72 int LocalBoardNumber(const char* localBoardName);
74 // AliMpPCB* PCB(const char* pcbType);
76 void ReadLines(const char* slatType,
77 AliMp::PlaneType planeType,
79 Double_t& scale, Bool_t& flipX, Bool_t& flipY,
80 Int_t& srcLine, Int_t& destLine);
82 void ReadLocalBoardMapping();
86 AliMpTriggerReader(const AliMpTriggerReader& rhs);
88 AliMpTriggerReader& operator=(const AliMpTriggerReader& rhs);
90 AliMpSlatMotifMap* fMotifMap; //!< storage for motifTypes and motifs...
92 TMap fLocalBoardMap; //!< map of TObjString to TObjString
94 static const TString fgkKeywordLayer; //!< Keyword: LAYER
95 static const TString fgkKeywordScale; //!< Keyword: SCALE
96 static const TString fgkKeywordPcb; //!< Keyword : PCB
97 static const TString fgkKeywordFlipX; //!< Keyword : FLIPX
98 static const TString fgkKeywordFlipY; //!< Keyword : FLIPY
100 ClassDef(AliMpTriggerReader,0) // Reader for trigger slats mapping files