Added explicit base class declaration
[u/mrichter/AliRoot.git] / EMCAL / AliEMCAL.h
CommitLineData
2012850d 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
05a92d59 13#include <stdlib.h>
2012850d 14
15// --- ROOT system ---
05a92d59 16
2012850d 17class TString ;
05a92d59 18class TTask ;
19class TFolder ;
2012850d 20
21// --- AliRoot header files ---
05a92d59 22
2012850d 23#include "AliDetector.h"
39200c71 24//class AliDetector;
2012850d 25class AliEMCALGeometry ;
05a92d59 26//class AliEMCALQAChecker ;
2012850d 27
28class AliEMCAL : public AliDetector {
29
30 public:
31
b13bbe81 32 AliEMCAL();
2012850d 33 AliEMCAL(const char* name, const char* title="");
39200c71 34 AliEMCAL(const AliEMCAL& emcal) : AliDetector(emcal) {
2012850d 35 // cpy ctor: no implementation yet
36 // requested by the Coding Convention
9859bfc0 37 Fatal("cpy ctor", "not implemented") ;
2012850d 38 }
39 virtual ~AliEMCAL() ;
b13bbe81 40 virtual void AddHit(Int_t, Int_t*, Float_t *) {
41 // do not use this definition but the one below
9859bfc0 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
b13bbe81 45 }
05a92d59 46 virtual void AddHit( Int_t shunt, Int_t primary, Int_t track,
b13bbe81 47 Int_t id, Float_t *hits ) = 0 ;
05a92d59 48 virtual void CreateMaterials() ;
49 virtual void FinishRun() {WriteQA();}
50 virtual AliEMCALGeometry * GetGeometry() const ;
51 virtual Int_t IsVersion(void) const = 0 ;
52 //AliEMCALQAChecker * QAChecker() const {return fQATask;}
53 virtual void SetTreeAddress() ;
54 virtual TTree * TreeQA() const {return fTreeQA; }
55 virtual const TString Version() const {return TString(" ") ; }
56 virtual void WriteQA() ;
2012850d 57 AliEMCAL & operator = (const AliEMCAL & rvalue) {
58 // assignement operator requested by coding convention
59 // but not needed
9859bfc0 60 Fatal("operator =", "not implemented") ;
2012850d 61 return *this ;
62 }
63
88cb7938 64 virtual AliLoader* MakeLoader(const char* topfoldername);
65
2012850d 66protected:
67
05a92d59 68 //AliEMCALQAChecker * fQATask ; //! PHOS checkers container
69 TTree * fTreeQA ; // the QA tree that contains the alarms
1d7b3dd6 70 AliEMCALGeometry * fGeom ; // the geometry object
2012850d 71
39200c71 72 ClassDef(AliEMCAL,4) // Electromagnetic calorimeter (base class)
2012850d 73
74} ;
75
76#endif // ALIEMCAL_H