]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PHOS/AliPHOS.h
ALTRO samples are added to AliPHOSDigit for per-sample event merging.
[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$
a5fa6165 10 * Revision 1.73 2007/08/07 14:12:03 kharlov
11 * Quality assurance added (Yves Schutz)
12 *
ddd1a39c 13 * Revision 1.72 2007/02/13 10:52:08 policheh
14 * Raw2SDigits() implemented
15 *
8130d3a5 16 * Revision 1.71 2007/02/05 10:43:25 hristov
17 * Changes for correct initialization of Geant4 (Mihaela)
18 *
7235aed2 19 * Revision 1.70 2007/01/17 17:28:56 kharlov
20 * Extract ALTRO sample generation to a separate class AliPHOSPulseGenerator
21 *
431a9211 22 * Revision 1.69 2006/11/14 17:11:15 hristov
23 * 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
24 *
e939a978 25 * Revision 1.68 2006/08/11 12:36:25 cvetan
26 * Update of the PHOS code needed in order to read and reconstruct the beam test raw data (i.e. without an existing galice.root)
27 *
52c5f046 28 * Revision 1.67 2006/04/07 08:42:00 hristov
29 * Follow AliAlignObj framework and remove AliPHOSAlignData (Yu.Kharlov)
30 *
85698486 31 * Revision 1.66 2006/03/24 21:39:33 schutz
32 * Modification needed to include PHOS in the global trigger framework
33 *
b4215a15 34 * Revision 1.65 2006/03/07 18:56:25 kharlov
35 * CDB is passed via environment variable
36 *
7b60fe7e 37 * Revision 1.64 2005/11/03 13:09:19 hristov
38 * Removing meaningless const declarations (linuxicc)
39 *
eb0b1051 40 * Revision 1.63 2005/07/26 13:32:39 kharlov
41 * Restoring raw data fit from version of 29-Aug-2004
42 *
45c1ce6f 43 * Revision 1.62 2005/07/06 10:10:32 hristov
44 * Moving the functions used to initialize TF1 and TF2 to the pivate part of the class
45 *
fac5662b 46 * Revision 1.61 2005/05/28 12:10:07 schutz
47 * Copy constructor is corrected (by T.P.)
48 *
ffcecca6 49 */
50
51
b2a60966 52//_________________________________________________________________________
53// Base Class for PHOS
54//
55//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
fe4da5cc 56
fdeead01 57
d15a28e7 58// --- ROOT system ---
0e4b7936 59class TString ;
7b326aac 60class TTask ;
fa7cce36 61class TFolder ;
e957fea8 62class TTree ;
e9a5efdf 63class TRandom ;
fe4da5cc 64
d15a28e7 65// --- AliRoot header files ---
0e4b7936 66#include "AliDetector.h"
351dd634 67#include "AliLog.h"
8367ce9a 68#include "AliPHOSGeometry.h"
b4215a15 69#include "AliPHOSTrigger.h"
5024fc61 70class AliPHOSCalibData ;
fe4da5cc 71
72class AliPHOS : public AliDetector {
73
e9a5efdf 74public:
fe4da5cc 75
6b87d0dd 76 AliPHOS() ;
7b326aac 77 AliPHOS(const char* name, const char* title="") ;
7b326aac 78 virtual ~AliPHOS() ;
0a6d52e3 79 virtual void AddHit(Int_t, Int_t*, Float_t *) {
0e4b7936 80 // do not use this definition but the one below
351dd634 81 AliFatal(Form("do not use")) ;
f1611b7c 82
0a6d52e3 83 }
a532e9d8 84 virtual void AddHit( Int_t shunt, Int_t primary, Int_t track,
85 Int_t id, Float_t *hits ) = 0 ;
487d23e3 86 virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const;
8367ce9a 87 virtual void CreateMaterials() ;
e9a5efdf 88 virtual void Digits2Raw();
c46b6a59 89 virtual Bool_t Raw2SDigits(AliRawReader* rawReader);
184569b0 90 virtual void FinishRun() {;}
8367ce9a 91 virtual AliPHOSGeometry * GetGeometry() const
92 {return AliPHOSGeometry::GetInstance(GetTitle(),"") ; }
b4215a15 93
487d23e3 94 virtual void Hits2SDigits();
fa7cce36 95 virtual Int_t IsVersion(void) const = 0 ;
7235aed2 96 virtual void Init();
b4215a15 97 virtual AliTriggerDetector* CreateTriggerDetector() const
98 { return new AliPHOSTrigger(); }
99
8367ce9a 100 virtual AliLoader* MakeLoader(const char* topfoldername);
7b7c1533 101 virtual void SetTreeAddress();
a532e9d8 102 virtual const TString Version() const {return TString(" ") ; }
88cb7938 103
e939a978 104 private:
105 AliPHOS(AliPHOS & phos);
106 AliPHOS & operator = (const AliPHOS & /*rvalue*/);
107
5024fc61 108 protected:
109 AliPHOSCalibData * fgCalibData ; //! Pointer to Calibration DB
110
52c5f046 111 ClassDef(AliPHOS,6) // Photon Spectrometer Detector (base class)
d15a28e7 112} ;
fe4da5cc 113
d15a28e7 114#endif // ALIPHOS_H