1 #ifndef ALIEMCALMAPAPD_H
2 #define ALIEMCALMAPAPD_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
12 static const int fgkEmCalRows = 24; // number of rows per module for EMCAL
13 static const int fgkEmCalCols = 48; // number of columns per module for EMCAL
16 Objects of this class read txt file with APD data
17 AliEMCALMapAPD inherits TObject only to use AliLog "functions".
20 class AliEMCALMapAPD : public TObject {
24 void ReadMapAPDInfoStripBasis(Int_t nSM, const TString &txtFileName); // info file is for nSm=1 to 12 SuperModules
25 void ReadMapAPDInfoSingleStripBasis(Int_t iSM, Int_t iStrip, const TString &txtFileName); // info file is for one single SuperModule and StripModule
27 void ReadMapAPDInfo(Int_t nSM, const TString &txtFileName); // info file is for nSm=1 to 12 SuperModules
29 void WriteMapAPDInfo(const TString &txtFileName); // info file is for nSm=1 to 12 SuperModules
31 void GenerateDummyAPDInfo(Int_t nSM, Int_t * iSM); // for debug purposes
33 virtual ~AliEMCALMapAPD();
35 struct AliEMCALSuperModuleMapAPD {
36 Int_t fSuperModuleNum;
37 Int_t fAPDNum[fgkEmCalCols][fgkEmCalRows];
40 // pointer to stored info.
41 Int_t GetNSuperModule() const { return fNSuperModule; };
42 AliEMCALSuperModuleMapAPD * GetSuperModuleData() const { return fSuperModuleData; };
44 // - via the index in the stored array:
45 virtual AliEMCALSuperModuleMapAPD GetSuperModuleMapAPDId(Int_t smIndex) const;
46 // - or via the actual SM number
47 virtual AliEMCALSuperModuleMapAPD GetSuperModuleMapAPDNum(Int_t smNum) const;
51 Int_t fNSuperModule; // Number of supermodules.
52 AliEMCALSuperModuleMapAPD *fSuperModuleData; // SuperModule data
56 AliEMCALMapAPD(const AliEMCALMapAPD &);
57 AliEMCALMapAPD &operator = (const AliEMCALMapAPD &);
59 ClassDef(AliEMCALMapAPD, 1) //MapAPD data reader