]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALCellInfo.h
Test beam raw data reading
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALCellInfo.h
CommitLineData
46b250ae 1#ifndef ALIEMCALCELLINFO_H
2#define ALIEMCALCELLINFO_H
3/* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8//_________________________________________________________________________
9// This is a table of emcal indexes.
10// Simplify a work with cell indexes
11// Initial version was created with TTable staff
12//
46b250ae 13//*-- Authors: Aleksei Pavlinov (WSU)
14#include <TNamed.h>
15
16// Aug 1, 2007; Corr. Sep 05
b217491f 17// cellInfo -> AliEMCALCellIndexes - Oct 15, 2007
18class AliEMCALCellIndexes : public TObject {
46b250ae 19 // See AliEMCALGeometry
20 // Indexes information
b217491f 21 friend class AliEMCALCellInfo;
22 friend class AliEMCALRecPointsQaESDSelector;
46b250ae 23 public:
b217491f 24 virtual const char* GetName() const {return Form("Ind%5.5i",fAbsId);}
25 AliEMCALCellIndexes();
26 virtual ~AliEMCALCellIndexes() {};
46b250ae 27
b217491f 28 protected:
29 Int_t fAbsId; // abs id of cell as in Geant
46b250ae 30 // Geant numbering tree - see AliEMCALv2
b217491f 31 Int_t fNSupMod; // index of super module (SM)
32 Int_t fNModule; // index of module in SM
33 Int_t fNIphi; // phi index of tower(cell) in module
34 Int_t fNIeta; // eta index of tower(cell) in module
35 // Inside SM - used in cluster finder
36 Int_t fIPhi; // phi index of tower(cell) in SM
37 Int_t fIEta; // eta index of tower(cell) in SM
38 Int_t fIPhim; // phi index of module in SM
39 Int_t fIEtam; // eta index of module in SM
46b250ae 40 // Coordinate information should be include too ??
b217491f 41 ClassDef(AliEMCALCellIndexes,2) // Cell indexes information
46b250ae 42};
43
44class AliEMCALGeometry;
45class TObjArray;
46
47class AliEMCALCellInfo : public TNamed {
48 public:
49 AliEMCALCellInfo(); // default constractor
50 AliEMCALCellInfo(const char* name, const Int_t nrow);
51 virtual ~AliEMCALCellInfo();
52
53 AliEMCALCellInfo & operator = (const AliEMCALCellInfo & /*rvalue*/) {
54 // assignement operator requested by coding convention but not needed
55 Fatal("operator =", "not implemented");
56 return *this;
57 };
58 //
b217491f 59 void AddAt(AliEMCALCellIndexes* r);
60 AliEMCALCellIndexes* GetTable(Int_t i) const;
46b250ae 61
62 void PrintTable(int ind1=-1, int ind2=-1) const; //*MENU*
63
64 static AliEMCALCellInfo *GetTableForGeometry(const char* geoName);
65 static AliEMCALCellInfo *GetTableForGeometry(AliEMCALGeometry *g);
66 //
67 protected:
b217491f 68 TObjArray *fTable; // Array of AliEMCALCellIndexes
69 Int_t fCurrentInd; // Current index
46b250ae 70
71 ClassDef(AliEMCALCellInfo,2) // Table of emcal indexes
72};
73
74#endif // ALIEMCALCELLINFO_H