LCOV - code coverage report
Current view: top level - STEER/STEERBase - AliVCaloCells.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 6 50.0 %
Date: 2016-06-14 17:26:59 Functions: 4 12 33.3 %

          Line data    Source code
       1             : #ifndef ALIVCALOCELLS_H
       2             : #define ALIVCALOCELLS_H
       3             : /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : //-------------------------------------------------------------------------
       7             : /// \class AliVCaloCells
       8             : /// \brief Virtual class for calorimeter cell data handling
       9             : ///
      10             : ///  Virtual class to access calorimeter (PHOS,EMCal) cell data
      11             : ///
      12             : ///  \author Gustavo Conesa Balbastre, <Gustavo.Conesa.Balbastre@cern.ch>, LPSC-Grenoble
      13             : //
      14             : //-------------------------------------------------------------------------
      15             : 
      16             : #include <TNamed.h>
      17             : #include <TMath.h>
      18             : 
      19             : class AliVCaloCells : public TNamed
      20             : {
      21             :  public:
      22             : 
      23             :   enum VCells_t {kUndef = -1, 
      24             :                  kPHOSCell, 
      25             :                  kEMCALCell};
      26             : 
      27          80 :   AliVCaloCells() : TNamed()  {;}
      28           0 :   AliVCaloCells(const char* name, const char* title) : TNamed(name, title) {;}
      29           0 :   AliVCaloCells(const AliVCaloCells& cells) : TNamed(cells.GetName(), cells.GetTitle()) {;}
      30             :   AliVCaloCells & operator=(const AliVCaloCells& cells ) ;
      31          40 :   virtual ~AliVCaloCells()    {;}
      32           0 :   void Clear(const Option_t*) {;}
      33             :   
      34             :   virtual Bool_t   IsEMCAL() const         = 0;
      35             :   virtual Bool_t   IsPHOS()  const         = 0;
      36             :   virtual Char_t   GetType() const         = 0;
      37             :   virtual void     SetType(Char_t ttype)   = 0;
      38             : 
      39             :   virtual void     CreateContainer(Short_t nCells) = 0;
      40             :   virtual void     DeleteContainer()               = 0;
      41             :   virtual void     Sort()                          = 0;
      42             :   
      43             :   virtual Bool_t   GetCell(Short_t pos, Short_t &cellNumber, Double_t &amplitude, Double_t &time, Int_t &mclabel,    Double_t  &efrac) const = 0;
      44             :   virtual Bool_t   SetCell(Short_t pos, Short_t  cellNumber, Double_t  amplitude, Double_t  time, Int_t  mclabel=-1, Double_t   efrac=0, Bool_t isHG=kTRUE)     = 0;
      45             :   
      46             :   virtual Short_t  GetNumberOfCells() const              = 0;
      47             :   virtual void     SetNumberOfCells(Int_t n)             = 0;
      48             :   
      49             :   virtual Double_t GetCellAmplitude(Short_t cellNumber)  = 0;
      50             :   virtual Bool_t   GetCellHighGain(Short_t cellNumber)   = 0;
      51             :   virtual Double_t GetCellTime(Short_t cellNumber)       = 0;
      52             :   virtual Short_t  GetCellPosition(Short_t cellNumber)   = 0;
      53             :     
      54             :   virtual Double_t GetAmplitude(Short_t pos)  const      = 0;
      55             :   virtual Bool_t   GetHighGain(Short_t pos)   const      = 0;
      56             :   virtual Double_t GetTime(Short_t pos)       const      = 0;
      57             :   virtual Short_t  GetCellNumber(Short_t pos) const      = 0;
      58             : 
      59             :   virtual void           Copy(TObject &obj)        const = 0;
      60             :   virtual AliVCaloCells* CopyCaloCells(Bool_t all) const = 0;
      61             : 
      62             :   // MC & embedding
      63             :   virtual Int_t    GetCellMCLabel(Short_t cellNumber)    = 0;
      64             :   virtual Int_t    GetMCLabel(Short_t pos) const         = 0;
      65             : 
      66             :   virtual Double_t GetCellEFraction(Short_t cellNumber)  = 0;
      67             :   virtual Double_t GetEFraction(Short_t pos) const       = 0;
      68             : 
      69             :   virtual void     SetCellEFraction(Short_t cellNumber, Double_t efrac) = 0;
      70             :   virtual void     SetEFraction    (Short_t pos,        Double_t efrac) = 0;
      71             :   
      72             :   /// \cond CLASSIMP
      73         196 :   ClassDef(AliVCaloCells, 0) ;
      74             :   /// \endcond
      75             : 
      76             : };
      77             : 
      78             : #endif

Generated by: LCOV version 1.11