]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PHOS/AliPHOSv3.h
Coding convention ...
[u/mrichter/AliRoot.git] / PHOS / AliPHOSv3.h
CommitLineData
5f20d3fb 1#ifndef ALIPHOSV3_H
2#define ALIPHOSV3_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6//_________________________________________________________________________
7// Implementation version v1 of PHOS Manager class
8// Layout EMC + PPSD has name GPS2
9// The main goal of this version of AliPHOS is to calculte the
10// induced charged in the PIN diode, taking into account light
11// tracking in the PbWO4 crystal, induced signal in the
12// PIN due to MIPS particle and electronic noise.
13// This is done in the StepManager
14//
15//*-- Author: Odd Harald Oddland & Gines Martinez (SUBATECH)
16
17// --- ROOT system ---
18
19
20// --- AliRoot header files ---
21#include "AliPHOSv1.h"
22
23
24class AliPHOSv3 : public AliPHOSv1 {
3dab1cef 25
26 public:
27
735e58f1 28 AliPHOSv3(void) ;
5f20d3fb 29 AliPHOSv3(const char *name, const char *title="") ;
01ae46a7 30 // AliPHOSv3(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ;
5f20d3fb 31 virtual ~AliPHOSv3(void) {
32 // dtor
33 }
3dab1cef 34
e04976bd 35 virtual Int_t IsVersion(void) const {
36 // Gives the version number
37 return 3 ;
38 }
bd46a237 39 virtual const TString Version(void)const {
e04976bd 40 // returns the version number
41 return TString("v3") ;
42 }
3dab1cef 43 virtual void StepManager(void) ;
5f20d3fb 44
3dab1cef 45 Float_t GetLightYieldMean() const { return fLightYieldMean ;}
46 Float_t GetLightYieldAttenuation() const { return fLightYieldAttenuation ;}
47 Float_t GetRecalibrationFactor() const { return fRecalibrationFactor ;}
48 Float_t GetAPDGain() const { return fAPDGain ;}
49 Float_t GetIntrinsicPINEfficiency() const { return fIntrinsicPINEfficiency ;}
50 Float_t GetElectronsPerGeV() const { return fElectronsPerGeV ;}
51
52 void SetLightYieldMean(Float_t LightYieldMean)
53 {fLightYieldMean = LightYieldMean;}
54 void SetLightYieldAttenuation(Float_t LightYieldAttenuation)
55 {fLightYieldAttenuation = LightYieldAttenuation;}
56 void SetIntrinsicPINEfficiency(Float_t IntrinsicPINEfficiency)
57 {fIntrinsicPINEfficiency = IntrinsicPINEfficiency;}
58 void SetRecalibrationFactor(Float_t RecalibrationFactor)
59 {fRecalibrationFactor = RecalibrationFactor;}
60 void SetElectronsPerGeV(Float_t ElectronsPerGeV)
61 {fElectronsPerGeV = ElectronsPerGeV;}
62 void SetAPDGain(Float_t APDGain)
63 {fAPDGain = APDGain;}
64
65 private:
5f20d3fb 66
67 Float_t fLightYieldMean ; // Mean lightyield in the PbOW4 xtal per GeV (Poisson distribution)
68 Float_t fIntrinsicPINEfficiency ; // Photo efficiency of the PIN diode
69 Float_t fLightYieldAttenuation ; // Attenuation of the light through the crystal
70 Float_t fRecalibrationFactor ; // Recalibration factor
71 Float_t fElectronsPerGeV ; // Number of electrons per GeV created in the PIN by a ionizing particle
3dab1cef 72 Float_t fAPDGain ; // APD Gain
73
5f20d3fb 74 ClassDef(AliPHOSv3,1) // Implementation of PHOS manager class for layout EMC+PPSD with light transport, MIPS in PIN and electronic noise
75
76};
77
78#endif // AliPHOSV3_H