]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/PHOS/AliHLTPHOSMapper.h
- defining the crazyness variable
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSMapper.h
CommitLineData
1b41ab20 1//-*- Mode: C++ -*-
37ff2dd6 2// $Id$
1b41ab20 3
2f09efe8 4#ifndef ALIHLTPHOSMAPPER_H
5#define ALIHLTPHOSMAPPER_H
6
fec21787 7
2f09efe8 8/**************************************************************************
9 * This file is property of and copyright by the Experimental Nuclear *
10 * Physics Group, Dep. of Physics *
11 * University of Oslo, Norway, 2006 *
12 * *
13 * Author: Per Thomas Hille perthi@fys.uio.no for the ALICE DCS Project. *
14 * Contributors are mentioned in the code where appropriate. *
15 * Please report bugs to perthi@fys.uio.no *
16 * *
17 * Permission to use, copy, modify and distribute this software and its *
18 * documentation strictly for non-commercial purposes is hereby granted *
19 * without fee, provided that the above copyright notice appears in all *
20 * copies and that both the copyright notice and this permission notice *
21 * appear in the supporting documentation. The authors make no claims *
22 * about the suitability of this software for any purpose. It is *
23 * provided "as is" without express or implied warranty. *
24 **************************************************************************/
25
7eb756c1 26//#include "AliHLTPHOSBase.h"
af6a2273 27
28//using namespace PhosHLTConst;
94594220 29#include "Rtypes.h"
30#include "AliHLTLogging.h"
87434909 31
32#include "AliPHOSEMCAGeometry.h"
33
37ff2dd6 34class AliHLTPHOSCoordinate;
35
94594220 36class AliHLTPHOSMapper : public AliHLTLogging
37//class AliHLTPHOSMapper
2f09efe8 38{
39 public:
40 AliHLTPHOSMapper();
c37f821f 41 virtual ~AliHLTPHOSMapper();
42 void InitAltroMapping();
94594220 43 void InitDDLSpecificationMapping();
8efbf5fe 44 bool GetIsInitializedMapping();
45 char* GetFilePath();
c37f821f 46
94594220 47 UShort_t GetChannelID(Int_t specification, Int_t hwAddress);
37ff2dd6 48 static void GetChannelCoord(const UShort_t channelId, UShort_t* channelCoord);
49 static void ChannelId2Coordinate(const UShort_t channelId, AliHLTPHOSCoordinate &channelCoord );
50 static void GetLocalCoord(const UShort_t channelId, Float_t* localCoord);
f3df2ba0 51 int GetDDLFromSpec(Int_t specification);
b48632c9 52 int GetModuleFromSpec(Int_t specification);
94594220 53
af6a2273 54 struct fAltromap{
55 int fZRow; // Coordinate in Z direction (beam direction) relatve too one RCU
56 int fXCol; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve too one RCU
57 int fGain; // Gain (high gain = 1, low gain = 0)
c37f821f 58 };
94594220 59
60 struct fDDLSpecificationMap{
61 UInt_t fRcuX; // Coordinate in Z direction (beam direction) relatve too one RCU
62 UInt_t fRcuZ; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve too one RCU
63 UInt_t fRcuXOffset;
64 UInt_t fRcuZOffset;
65 int fModId;
66 };
c37f821f 67
af6a2273 68 fAltromap *fHw2geomapPtr; //pointer to structure holding information about geometrical address
94594220 69
70
8efbf5fe 71 char fFilepath[1024];
c37f821f 72
b444d727 73 private:
8efbf5fe 74 bool fIsInitializedMapping;
b444d727 75 AliHLTPHOSMapper(const AliHLTPHOSMapper & );
76 AliHLTPHOSMapper & operator = (const AliHLTPHOSMapper &);
94594220 77
78 fDDLSpecificationMap* fSpecificationMapPtr;
87434909 79 //AliPHOSEMCAGeometry fPHOSGeometry;
80 static const Float_t fCellStep = 2.2;//2.*fPHOSGeometry.GetAirCellHalfSize()[0];
2f09efe8 81};
82
83#endif