Update master to aliroot
[u/mrichter/AliRoot.git] / HLT / CALO / AliHLTCaloGeometry.h
1 //-*- Mode: C++ -*-
2 #ifndef ALIHLTCALOGEOMETRY_H
3 #define ALIHLTCALOGEOMETRY_H
4 /* Copyright(c) 1998-2004, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 // Author: Federico Ronchetti 
8
9 #include "Rtypes.h"
10 #include "AliHLTCaloConstants.h"
11 #include "AliHLTLogging.h"
12 #include "AliHLTCaloConstantsHandler.h"
13 #include "AliHLTCaloCoordinate.h"
14 #include "AliHLTCaloGlobalCoordinate.h"
15 #include "AliHLTCaloRecPointDataStruct.h"
16
17 struct AliHLTCaloCoordinate;
18 struct AliHLTCaloGlobalCoordinate;
19
20 class AliHLTCaloGeometry : public AliHLTCaloConstantsHandler, public AliHLTLogging
21 {
22
23  public:
24   AliHLTCaloGeometry (TString det);
25   virtual ~AliHLTCaloGeometry();
26   // Particle: 0=photon, 1=electron, 2=hadron
27   virtual void GetGlobalCoordinates(AliHLTCaloRecPointDataStruct &recPoint, AliHLTCaloGlobalCoordinate &globalCoord, Int_t iParticle ) = 0;
28
29   virtual void GetCellAbsId(UInt_t module, UInt_t x, UInt_t z, Int_t& AbsId) = 0; //COMMENT
30   
31   virtual void GetLocalCoordinatesFromAbsId(Int_t AbsId, Int_t &module, Int_t &x, Int_t &z) = 0; //COMMENT
32   
33   virtual Int_t InitialiseGeometry() = 0;
34
35 protected:
36   Bool_t fIsInitialised;
37
38  private:
39
40   /** Default constructor, not implemented */
41    AliHLTCaloGeometry();   //COMMENT
42
43    ClassDef(AliHLTCaloGeometry, 0);
44    
45 };
46
47 #endif
48