Module numbering is corrected
[u/mrichter/AliRoot.git] / PHOS / AliPHOS.h
CommitLineData
d15a28e7 1#ifndef ALIPHOS_H
2#define ALIPHOS_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6ad0bfa0 4 * See cxx source for full Copyright notice */
6ad0bfa0 5/* $Id$ */
3da30618 6
ffcecca6 7/* History of cvs commits:
8 *
9 * $Log$
431a9211 10 * Revision 1.69 2006/11/14 17:11:15 hristov
11 * Removing inheritances from TAttLine, TAttMarker and AliRndm in AliModule. The copy constructor and assignment operators are moved to the private part of the class and not implemented. The corresponding changes are propagated to the detectors
12 *
e939a978 13 * Revision 1.68 2006/08/11 12:36:25 cvetan
14 * Update of the PHOS code needed in order to read and reconstruct the beam test raw data (i.e. without an existing galice.root)
15 *
52c5f046 16 * Revision 1.67 2006/04/07 08:42:00 hristov
17 * Follow AliAlignObj framework and remove AliPHOSAlignData (Yu.Kharlov)
18 *
85698486 19 * Revision 1.66 2006/03/24 21:39:33 schutz
20 * Modification needed to include PHOS in the global trigger framework
21 *
b4215a15 22 * Revision 1.65 2006/03/07 18:56:25 kharlov
23 * CDB is passed via environment variable
24 *
7b60fe7e 25 * Revision 1.64 2005/11/03 13:09:19 hristov
26 * Removing meaningless const declarations (linuxicc)
27 *
eb0b1051 28 * Revision 1.63 2005/07/26 13:32:39 kharlov
29 * Restoring raw data fit from version of 29-Aug-2004
30 *
45c1ce6f 31 * Revision 1.62 2005/07/06 10:10:32 hristov
32 * Moving the functions used to initialize TF1 and TF2 to the pivate part of the class
33 *
fac5662b 34 * Revision 1.61 2005/05/28 12:10:07 schutz
35 * Copy constructor is corrected (by T.P.)
36 *
ffcecca6 37 */
38
39
b2a60966 40//_________________________________________________________________________
41// Base Class for PHOS
42//
43//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
fe4da5cc 44
fdeead01 45
d15a28e7 46// --- ROOT system ---
0e4b7936 47class TString ;
7b326aac 48class TTask ;
fa7cce36 49class TFolder ;
e957fea8 50class TTree ;
e9a5efdf 51class TRandom ;
fe4da5cc 52
d15a28e7 53// --- AliRoot header files ---
0e4b7936 54#include "AliDetector.h"
351dd634 55#include "AliLog.h"
8367ce9a 56#include "AliPHOSGeometry.h"
b4215a15 57#include "AliPHOSTrigger.h"
fe4da5cc 58
59class AliPHOS : public AliDetector {
60
e9a5efdf 61public:
fe4da5cc 62
6b87d0dd 63 AliPHOS() ;
7b326aac 64 AliPHOS(const char* name, const char* title="") ;
7b326aac 65 virtual ~AliPHOS() ;
0a6d52e3 66 virtual void AddHit(Int_t, Int_t*, Float_t *) {
0e4b7936 67 // do not use this definition but the one below
351dd634 68 AliFatal(Form("do not use")) ;
f1611b7c 69
0a6d52e3 70 }
a532e9d8 71 virtual void AddHit( Int_t shunt, Int_t primary, Int_t track,
72 Int_t id, Float_t *hits ) = 0 ;
487d23e3 73 virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const;
8367ce9a 74 virtual void CreateMaterials() ;
e9a5efdf 75 virtual void Digits2Raw();
184569b0 76 virtual void FinishRun() {;}
8367ce9a 77 virtual AliPHOSGeometry * GetGeometry() const
78 {return AliPHOSGeometry::GetInstance(GetTitle(),"") ; }
b4215a15 79
487d23e3 80 virtual void Hits2SDigits();
fa7cce36 81 virtual Int_t IsVersion(void) const = 0 ;
b4215a15 82
83 virtual AliTriggerDetector* CreateTriggerDetector() const
84 { return new AliPHOSTrigger(); }
85
8367ce9a 86 virtual AliLoader* MakeLoader(const char* topfoldername);
7b7c1533 87 virtual void SetTreeAddress();
a532e9d8 88 virtual const TString Version() const {return TString(" ") ; }
88cb7938 89
e939a978 90 private:
91 AliPHOS(AliPHOS & phos);
92 AliPHOS & operator = (const AliPHOS & /*rvalue*/);
93
52c5f046 94 ClassDef(AliPHOS,6) // Photon Spectrometer Detector (base class)
d15a28e7 95} ;
fe4da5cc 96
d15a28e7 97#endif // ALIPHOS_H