]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/AliEMCAL.h
457b17f3612478de00372195c884aa8e458b3a3d
[u/mrichter/AliRoot.git] / EMCAL / AliEMCAL.h
1 #ifndef ALIEMCAL_H
2 #define ALIEMCAL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5
6 /* $Id$ */
7
8 //_________________________________________________________________________
9 //  Base Class for EMCAL     
10 //                  
11 //*-- Author: Yves Schutz (SUBATECH)
12
13 #include <stdlib.h>
14
15 // --- ROOT system ---
16
17 class TString ;
18 class TTask ;
19 class TFolder ;
20
21 // --- AliRoot header files ---
22
23 #include "AliDetector.h"
24 //class AliDetector;
25 class AliEMCALGeometry ; 
26 //class AliEMCALQAChecker ;
27
28 class AliEMCAL : public AliDetector {
29
30  public:
31
32   AliEMCAL(); 
33   AliEMCAL(const char* name, const char* title="");
34   AliEMCAL(const AliEMCAL& emcal) : AliDetector(emcal) {
35     // cpy ctor: no implementation yet
36     // requested by the Coding Convention
37     Fatal("cpy ctor", "not implemented") ;  
38   }
39   virtual ~AliEMCAL() ; 
40   virtual void   AddHit(Int_t, Int_t*, Float_t *) {
41     // do not use this definition but the one below
42     Fatal("AddHit(Int_t, Int_t*, Float_t *", 
43           "not to be used: use AddHit( Int_t shunt, Int_t primary, Int_t track,Int_t id, Float_t *hits )") ;  
44
45   }
46   virtual void  CreateMaterials() ;   
47   virtual void  FinishRun() {WriteQA();}                  
48   virtual AliEMCALGeometry * GetGeometry() const ;   
49   virtual Int_t   IsVersion(void) const = 0 ; 
50   //AliEMCALQAChecker * QAChecker() const {return fQATask;}  
51   virtual void  SetTreeAddress() ;
52   virtual TTree * TreeQA() const {return fTreeQA; }                
53   virtual const TString Version() const {return TString(" ") ; }  
54   virtual void WriteQA() ; 
55   AliEMCAL & operator = (const AliEMCAL & /*rvalue*/)  {
56     // assignement operator requested by coding convention
57     // but not needed
58     Fatal("operator =", "not implemented") ;  
59     return *this ; 
60   }
61  
62   virtual AliLoader* MakeLoader(const char* topfoldername);
63   
64 protected:
65
66   //AliEMCALQAChecker * fQATask ; //! PHOS checkers container
67   TTree * fTreeQA ;            // the QA tree that contains the alarms
68   AliEMCALGeometry * fGeom ;   // the geometry object
69
70   ClassDef(AliEMCAL,4) // Electromagnetic calorimeter (base class)
71
72 } ;
73
74 #endif // ALIEMCAL_H