]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/EMCAL/AliHLTEMCALGeometry.h
Federico: AliHLTEMCALGeometry handles transformation from local to global coordinates
[u/mrichter/AliRoot.git] / HLT / EMCAL / AliHLTEMCALGeometry.h
1 #ifndef ALIHLTEMCALGEOMETRY_H
2 #define ALIHLTEMCALGEOMETRY_H
3 /**************************************************************************
4  * This file is property of and copyright by the Experimental Nuclear     *
5  * Physics Group, Dep. of Physics                                         *
6  * University of Oslo, Norway, 2007                                       *
7  *                                                                        *
8  * Author: Federico Ronchetti for the ALICE HLT Project.*
9  *                                                                        *
10  * Permission to use, copy, modify and distribute this software and its   *
11  * documentation strictly for non-commercial purposes is hereby granted   *
12  * without fee, provided that the above copyright notice appears in all   *
13  * copies and that both the copyright notice and this permission notice   *
14  * appear in the supporting documentation. The authors make no claims     *
15  * about the suitability of this software for any purpose. It is          *
16  * provided "as is" without express or implied warranty.                  *
17  **************************************************************************/
18
19 #include "AliHLTCaloGeometry.h"
20 #include "AliHLTEMCALSharedMemoryInterface.h" 
21 #include "AliEMCALGeoUtils.h"
22 #include "AliEMCALGeometry.h"
23 #include "TGeoManager.h"
24 #include "AliCDBEntry.h"
25 #include "AliCDBManager.h"
26 #include "AliCDBPath.h"
27 #include "AliHLTEMCALRecPointDataStruct.h"
28
29 class AliEMCALGeoUtils;
30
31 class  AliHLTEMCALGeometry : public AliHLTCaloGeometry, public AliHLTLogging
32 {
33  public:
34         AliHLTEMCALGeometry();
35         virtual ~AliHLTEMCALGeometry();
36         void GetGlobalCoordinates(AliHLTEMCALRecPointDataStruct &recPoint, AliHLTCaloGlobalCoordinate &globalCoord );
37         void GetCellAbsId(UInt_t module, UInt_t x, UInt_t z, Int_t& AbsId);
38         virtual void ConvertRecPointCoordinates(Double_t &x, Double_t &y, Double_t &z) const;
39         virtual Int_t InitialiseGeometry() {return 0; }
40
41 protected:
42         int GetGeometryFromCDB();
43 private:
44         //AliHLTEMCALGeometry();
45         void GetGlobalCoordinates(AliHLTCaloRecPointDataStruct &, AliHLTCaloGlobalCoordinate &) {}
46
47         AliHLTEMCALSharedMemoryInterface* fShmPtr;  
48         //AliEMCALGeometry *fGeo;
49         AliEMCALGeoUtils *fGeo;
50         /** The EMCAL geometry */
51         AliEMCALGeoUtils *fEMCALGeometry;                  //!transient
52         AliHLTEMCALGeometry(const AliHLTEMCALGeometry & );
53         AliHLTEMCALGeometry & operator = (const AliHLTEMCALGeometry &);
54         //      static TGeoManager *fgGeoManager;
55
56
57 };
58 #endif