1 #ifndef ALITPCALTROMAPPING_H
2 #define ALITPCALTROMAPPING_H
3 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 //////////////////////////////////////////////////////////
7 // Class used to setup the mapping of hardware adresses //
8 // in ALTRO to pad-rows and pad indeces. //
9 // The mapping is defined in an external mapping files //
10 // separately. The class derives from the base altro //
11 // mapping class defined in the RAW package. //
12 //////////////////////////////////////////////////////////
14 #include "AliAltroMapping.h"
16 class AliTPCAltroMapping: public AliAltroMapping {
18 AliTPCAltroMapping(const char *mappingFile);
19 virtual ~AliTPCAltroMapping();
21 AliTPCAltroMapping(const AliTPCAltroMapping& mapping);
22 AliTPCAltroMapping& operator = (const AliTPCAltroMapping& mapping);
24 virtual Int_t GetHWAddress(Int_t padrow, Int_t pad, Int_t sector) const;
25 virtual Int_t GetPadRow(Int_t hwAddress) const;
26 virtual Int_t GetPad(Int_t hwAddress) const;
27 virtual Int_t GetSector(Int_t hwAddress) const;
30 virtual Bool_t ReadMapping();
31 virtual void DeleteMappingArrays();
33 Int_t fMinPadRow; // Minimum Index of pad-row
34 Int_t fMaxPadRow; // Maximum Index of pad-row
35 Int_t fMaxPad; // Maximum Index of pad inside row
36 Short_t **fMapping; // Array which connects hardware adresses to pad and pad-row indeces
37 Short_t **fInvMapping; // Inverse of fMapping
39 ClassDef(AliTPCAltroMapping,1) // Altro mapping handler class