]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/CALO/AliHLTPHOSGeometry.h
FIT geometry with thin boxes 59x59mm; radiator 53x53mm
[u/mrichter/AliRoot.git] / HLT / CALO / AliHLTPHOSGeometry.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Authors: Oystein Djuvsland <oysteind@ift.uib.no>                       *
5  *                                                                        *
6  * Permission to use, copy, modify and distribute this software and its   *
7  * documentation strictly for non-commercial purposes is hereby granted   *
8  * without fee, provided that the above copyright notice appears in all   *
9  * copies and that both the copyright notice and this permission notice   *
10  * appear in the supporting documentation. The authors make no claims     *
11  * about the suitability of this software for any purpose. It is          *
12  * provided "as is" without express or implied warranty.                  *
13  **************************************************************************
14 */
15
16 #ifndef ALIHLTPHOSGEOMETRY_H
17 #define ALIHLTPHOSGEOMETRY_H
18
19 #include "AliHLTCaloGeometry.h"
20 #include "AliHLTLogging.h"
21 #include "TClass.h"
22
23 class AliPHOSGeoUtils;
24
25 class AliHLTPHOSGeometry : public AliHLTCaloGeometry
26   {
27      public:
28
29       /** Default constructor */
30       AliHLTPHOSGeometry ();   //COMMENT
31     
32       /** Destructor */
33       virtual ~AliHLTPHOSGeometry ();       //COMMENT
34       
35       /** Get the ALICE global coordinates for a rec point */
36       virtual void GetGlobalCoordinates ( AliHLTCaloRecPointDataStruct& recPoint,  AliHLTCaloGlobalCoordinate& globalCoord, Int_t iParticle ); //COMMENT
37
38       /** See base class for class documentation */
39       virtual void GetCellAbsId(UInt_t module, UInt_t x, UInt_t z, Int_t& AbsId);
40     
41       /** Intialise the geometry from the HCDB/OCDB */
42       virtual Int_t InitialiseGeometry() { return GetGeometryFromCDB(); }
43       
44       /** Convert rec point coordinates */
45       virtual void ConvertRecPointCoordinates(Float_t &x, Float_t &z) const;
46     
47       /** Convert absolute ID to local coordinates */
48       virtual void GetLocalCoordinatesFromAbsId(Int_t absId, Int_t& module, Int_t& x, Int_t& z);      
49       
50      protected:
51         
52         Int_t GetGeometryFromCDB();
53     
54      private:
55         
56         /** Geometry class from offline code */
57         AliPHOSGeoUtils *fGeoUtils;  //! transient
58         
59       /** Copy constructor, not implemented */
60       AliHLTPHOSGeometry (const AliHLTPHOSGeometry&); //COMMENT
61     
62         /** Assignment operator, not implemented */
63       AliHLTPHOSGeometry & operator = (const AliHLTPHOSGeometry&); //COMMENT
64       
65   };
66
67 #endif // ALIHLTPHOSGEOMETRY_H