]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/PHOS/AliHLTPHOSMapper.h
- data member was shadowed (fTree)
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSMapper.h
index c8c454f6d3a100cde1205826f0c80a10a0c74be1..a79937281eba4c82a77d7b12e79c3234ec684d86 100644 (file)
@@ -1,3 +1,6 @@
+//-*- Mode: C++ -*-
+// $Id$
+
 #ifndef ALIHLTPHOSMAPPER_H
 #define ALIHLTPHOSMAPPER_H
 
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-#include "AliHLTPHOSBase.h"
+//#include "AliHLTPHOSBase.h"
 
 //using namespace PhosHLTConst;
+#include "Rtypes.h"
+#include "AliHLTLogging.h"
+
+#include "AliPHOSEMCAGeometry.h"
 
-class AliHLTPHOSMapper : public AliHLTPHOSBase
+class AliHLTPHOSCoordinate;
+
+class AliHLTPHOSMapper : public AliHLTLogging
+//class AliHLTPHOSMapper 
 {
  public:
   AliHLTPHOSMapper();
   virtual ~AliHLTPHOSMapper();
   void InitAltroMapping(); 
+  void InitDDLSpecificationMapping();
+  bool GetIsInitializedMapping();
+  char* GetFilePath();
+
+  UShort_t GetChannelID(Int_t specification, Int_t hwAddress);
+  static void GetChannelCoord(const UShort_t channelId, UShort_t* channelCoord);
+  static void ChannelId2Coordinate(const UShort_t channelId, AliHLTPHOSCoordinate &channelCoord );
+  static void GetLocalCoord(const UShort_t channelId, Float_t* localCoord);
+  int GetDDLFromSpec(Int_t specification);
+  int GetModuleFromSpec(Int_t specification);
 
   struct fAltromap{ 
     int fZRow; // Coordinate in Z direction (beam direction) relatve too one RCU
     int fXCol; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve too one RCU
     int fGain; // Gain (high gain = 1, low gain = 0)
   };
+  
+  struct fDDLSpecificationMap{ 
+    UInt_t fRcuX; // Coordinate in Z direction (beam direction) relatve too one RCU
+    UInt_t fRcuZ; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve too one RCU
+    UInt_t fRcuXOffset;
+    UInt_t fRcuZOffset;
+    int fModId; 
+  };
 
   fAltromap *fHw2geomapPtr; //pointer to structure holding information about geometrical address 
 
+
+  char fFilepath[1024];
+
  private:
+  bool fIsInitializedMapping;
   AliHLTPHOSMapper(const AliHLTPHOSMapper & );
   AliHLTPHOSMapper & operator = (const AliHLTPHOSMapper &);
-
+  
+  fDDLSpecificationMap* fSpecificationMapPtr;
+  //AliPHOSEMCAGeometry fPHOSGeometry;
+  static const Float_t fCellStep = 2.2;//2.*fPHOSGeometry.GetAirCellHalfSize()[0];
 };
 
 #endif