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