]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliVCaloCells.h
Leak detected by Coverity fixed
[u/mrichter/AliRoot.git] / STEER / AliVCaloCells.h
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 //
8 //     Virtual class to access calorimeter cell data
9 //     Author: Gustavo Conesa Balbastre INFN-LNF
10 //
11 //-------------------------------------------------------------------------
12
13
14 #include <TNamed.h>
15 #include <TMath.h>
16
17 class AliVCaloCells : public TNamed
18 {
19  public:
20
21   enum VCells_t {kUndef = -1, 
22                    kPHOSCell, 
23                    kEMCALCell};
24
25   AliVCaloCells() : TNamed() {;}
26   AliVCaloCells(const char* name, const char* title) : TNamed(name, title) {;}
27   AliVCaloCells(const AliVCaloCells& cells) : TNamed(cells.GetName(), cells.GetTitle()) {;}
28   virtual ~AliVCaloCells(){;}
29   void Clear(const Option_t*) {;}
30   
31   virtual Bool_t IsEMCAL() const         = 0;
32   virtual Bool_t IsPHOS()  const         = 0;
33   virtual Char_t GetType() const         = 0;
34   virtual void   SetType(Char_t ttype)   = 0;
35
36   virtual void   CreateContainer(Short_t nCells) = 0;
37   virtual void   DeleteContainer()               = 0;
38   virtual void   Sort()                          = 0;
39   
40   virtual Bool_t  SetCell(Short_t pos, Short_t cellNumber, Double_t amplitude, Double_t time) = 0;
41   virtual Short_t GetNumberOfCells() const    = 0;
42   virtual void    SetNumberOfCells(Int_t n)   = 0;
43   
44   virtual Bool_t   GetCell(Short_t pos, Short_t &cellNumber, Double_t &amplitude, Double_t &time) const = 0;
45   virtual Double_t GetCellAmplitude(Short_t cellNumber) = 0;
46   virtual Double_t GetCellTime(Short_t cellNumber)      = 0;
47   virtual Double_t GetAmplitude(Short_t pos)  const     = 0;
48   virtual Double_t GetTime(Short_t pos)       const     = 0;
49   virtual Short_t  GetCellNumber(Short_t pos) const     = 0;
50   
51   virtual void     Copy(TObject &obj)         const     = 0;
52   virtual AliVCaloCells* CopyCaloCells(Bool_t all) const = 0;
53
54   ClassDef(AliVCaloCells, 0);
55 };
56
57 #endif