LCOV - code coverage report
Current view: top level - HLT/BASE/util - AliHLTCaloClusterReader.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 2 0.0 %
Date: 2016-06-14 17:26:59 Functions: 0 2 0.0 %

          Line data    Source code
       1             : 
       2             : #ifndef ALIHLTCALOCLUSTERREADER_H
       3             : #define ALIHLTCALOCLUSTERREADER_H
       4             : 
       5             : /**************************************************************************
       6             :  * This file is property of and copyright by the ALICE HLT Project        * 
       7             :  * All rights reserved.                                                   *
       8             :  *                                                                        *
       9             :  * Primary Authors: Oystein Djuvsland                                     *
      10             :  *                                                                        *
      11             :  * Permission to use, copy, modify and distribute this software and its   *
      12             :  * documentation strictly for non-commercial purposes is hereby granted   *
      13             :  * without fee, provided that the above copyright notice appears in all   *
      14             :  * copies and that both the copyright notice and this permission notice   *
      15             :  * appear in the supporting documentation. The authors make no claims     *
      16             :  * about the suitability of this software for any purpose. It is          * 
      17             :  * provided "as is" without express or implied warranty.                  *
      18             :  **************************************************************************/
      19             : 
      20             : #include "Rtypes.h"
      21             : 
      22             : struct AliHLTCaloClusterDataStruct;
      23             : class AliHLTCaloClusterHeaderStruct;
      24             : class AliHLTCaloDigitDataStruct;
      25             : /** 
      26             :  * @class AliHLTCaloClusterReader
      27             :  * Reads clusters from a memory block of AliHLTCaloClusters
      28             :  *
      29             :  * @ingroup alihlt_phos
      30             :  */
      31             : class  AliHLTCaloClusterReader
      32             : {
      33             : public:
      34             :   /** Default constructor */
      35             :   AliHLTCaloClusterReader();
      36             : 
      37             :   /** Destructor */
      38             :   virtual ~AliHLTCaloClusterReader();
      39             : 
      40             :   /** 
      41             :    * Get the next cluster from the memory buffer
      42             :    */
      43             :   AliHLTCaloClusterDataStruct*   NextCluster();
      44             : 
      45             :   
      46             :   /**
      47             :    * Get cell properties from a cluster
      48             :    * @param clusterPtr is a pointer to the cluster
      49             :    * @param cellID is a reference to the variable containing the absolute ID
      50             :    * @param cellAmp is a reference to the variable containing the cell amplitude fraction
      51             :    * @param index is the index of the cell
      52             :    * @return true if the cell exists
      53             :    */
      54             :   bool GetCell(AliHLTCaloClusterDataStruct *clusterPtr, UShort_t &cellID, Double32_t &cellAmp, UInt_t index);
      55             : 
      56             : 
      57             :   /** 
      58             :    * Set the memory buffer containing the clusters
      59             :    * @param clusterHeaderPtr pointer the the first entry in the buffer, the header
      60             :    */
      61             :   void SetMemory(const AliHLTCaloClusterHeaderStruct* clusterHeaderPtr);
      62             : 
      63             :   /**
      64             :    * Reset the memory pointer and number of counts
      65             :    */
      66             :   void Reset();
      67             : 
      68             :   /**
      69             :   * Get the digits shipped with the clusters
      70             :   */
      71           0 :   AliHLTCaloDigitDataStruct* GetDigits() {return fDigitsPointer; } 
      72             :   
      73             :   /** 
      74             :   * Get the number of digits shipped with the clusters
      75             :   */
      76           0 :   Int_t GetNDigits() {return fNDigits; }
      77             :   
      78             :  private:
      79             :   
      80             :   /**
      81             :    * Copy constructor
      82             :    */
      83             :   AliHLTCaloClusterReader(const  AliHLTCaloClusterReader & );
      84             :   
      85             :   /**
      86             :    * Assignment operator
      87             :    */
      88             :   AliHLTCaloClusterReader & operator = (const  AliHLTCaloClusterReader &);
      89             :   
      90             :   /* Pointer to the current cluster to be read */
      91             :   AliHLTCaloClusterDataStruct* fCurrentClusterPtr; // !transient Pointer to the current cluster to be read
      92             : 
      93             :   /* Check if the memory has been set */
      94             :   bool fIsSetMemory; //Check if the memory has been set
      95             : 
      96             :   /* Max number of clusters */
      97             :   int fMaxCnt;  // Max number of clusters
      98             : 
      99             :   /* The current number of clusters */
     100             :   int fCurrentCnt; // The current number of clusters
     101             : 
     102             :   /** Pointer to the digits in the data block */
     103             :   AliHLTCaloDigitDataStruct* fDigitsPointer;    // Pointer to the digits in the data block 
     104             :     
     105             :    /** Number of digits in the data block */
     106             :    Int_t fNDigits; // Number of digits in the data block 
     107             :    
     108             : };
     109             : 
     110             : #endif

Generated by: LCOV version 1.11