LCOV - code coverage report
Current view: top level - HLT/CALO - AliHLTCaloMapper.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 2 50.0 %
Date: 2016-06-14 17:26:59 Functions: 1 9 11.1 %

          Line data    Source code
       1             : //-*- Mode: C++ -*-
       2             : // $Id: AliHLTCALOMapper.h 34264 2009-08-14 18:29:23Z odjuvsla $
       3             : 
       4             : #ifndef ALIHLTCALOMAPPER_H
       5             : #define ALIHLTCALOMAPPER_H
       6             : 
       7             : 
       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             : 
      26             : 
      27             : #include "AliHLTCaloConstants.h"
      28             : #include "Rtypes.h"
      29             : #include "AliHLTLogging.h"
      30             : #include "AliHLTCaloConstantsHandler.h"
      31             : 
      32             : #define FILEPATHMAXLENGTH 1024
      33             : 
      34             : class AliHLTCaloCoordinate;
      35             : 
      36             : class AliHLTCaloMapper : public AliHLTCaloConstantsHandler, public AliHLTLogging
      37             : {
      38             : public:
      39             : 
      40             :   AliHLTCaloMapper(const unsigned long specification, TString det);
      41             :   virtual ~AliHLTCaloMapper();
      42             :   virtual Bool_t InitAltroMapping( const unsigned long specification ) = 0; 
      43             :   virtual void InitDDLSpecificationMapping() = 0;
      44             :   bool GetIsInitializedMapping();
      45             :   virtual char* GetFilePath();
      46             :  
      47           0 :   virtual void FixCoordinate(AliHLTCaloCoordinate &input) {} // Needed in case of EMCAL to fix channel online - offline mapping in DCAL supermodules
      48             :   virtual int  GetChannelID(const AliHLTUInt32_t spec, const Int_t hadd);
      49             :   static void GetChannelCoord(const UShort_t channelId, UShort_t* channelCoord);
      50             :   static void ChannelId2Coordinate(const int channelId,    AliHLTCaloCoordinate &channelCoord);
      51             :   virtual void GetLocalCoord(const int channelId, Float_t* localCoord) const; 
      52             :   virtual int GetDDLFromSpec( const AliHLTUInt32_t spec );
      53             :   virtual int GetModuleFromSpec(UInt_t specification);
      54             :   static unsigned long GetSpecFromDDLIndex( const int ddlindex );
      55             :   
      56             : 
      57             :  struct fAltromap{ 
      58             :     char fZRow; // Coordinate in Z direction (beam direction) relatve to one Module
      59             :     char fXCol; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve to one Module
      60             :     char fGain; // Gain (high gain = 1, low gain = 0)
      61             :   };
      62             :   struct fDDLSpecificationMap{ 
      63             :     UInt_t fRcuX; // Coordinate in Z direction (beam direction) relatve too one RCU
      64             :     UInt_t fRcuZ; // Coordinate in X direction (perpendicular too beam direction an parallell to ground) relatve too one RCU
      65             :     UInt_t fRcuXOffset;
      66             :     UInt_t fRcuZOffset;
      67             :     int fModId; 
      68             :   };
      69             :   
      70             : //   struct fDDLSpecificationMap{ 
      71             : //     char fModId; 
      72             : //   };
      73             :   
      74             : 
      75             :   fAltromap *fHw2geomapPtr; //pointer to structure holding information about geometrical address 
      76             : 
      77             :   char fFilepath[FILEPATHMAXLENGTH];
      78             : 
      79             : protected:
      80             :   float fCellSize;
      81             :   int fSpecification;
      82             :   bool fIsInitializedMapping;
      83             :   fDDLSpecificationMap* fSpecificationMapPtr;
      84             :   TString fCaloDet;
      85             :   
      86             :  private:
      87             :   AliHLTCaloMapper();
      88             :   AliHLTCaloMapper(const AliHLTCaloMapper & );
      89             :   AliHLTCaloMapper & operator = (const AliHLTCaloMapper &);
      90             :   
      91             : 
      92           6 :   ClassDef(AliHLTCaloMapper, 1);
      93             : 
      94             : };
      95             : 
      96             : #endif

Generated by: LCOV version 1.11