]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/ESD/AliESDTZERO.h
test
[u/mrichter/AliRoot.git] / STEER / ESD / AliESDTZERO.h
CommitLineData
b0e13b29 1
d5ebf00e 2// -*- mode: C++ -*-
3#ifndef ALIESDTZERO_H
4#define ALIESDTZERO_H
5
6/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
8
9
10//-------------------------------------------------------------------------
11// Class AliESDTZERO
12// This is a class that summarizes the TZERO data for the ESD
13// Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch
14//-------------------------------------------------------------------------
15
16
17
18#include <TObject.h>
19
20class AliESDTZERO: public TObject {
21public:
22 AliESDTZERO();
23 AliESDTZERO(const AliESDTZERO& tzero);
24 AliESDTZERO& operator=(const AliESDTZERO& tzero);
732a24fe 25 virtual void Copy(TObject &obj) const;
d5ebf00e 26
adf36b9d 27 Double32_t GetT0zVertex() const {return fT0zVertex;}
28 void SetT0zVertex(Double32_t z) {fT0zVertex=z;}
29 Double32_t GetT0() const {return fT0timeStart;}
694aad0c 30 void SetT0(Double_t timeStart) {fT0timeStart = timeStart;}
adf36b9d 31 Float_t GetT0clock() const {return fT0clock;}
571b0564 32 void SetT0clock(Float_t timeStart) {fT0clock = timeStart;}
ce50812a 33 //1st
adf36b9d 34 Double32_t GetT0TOF(Int_t i) const {return fT0TOF[i];}
35 const Double32_t * GetT0TOF() const {return fT0TOF;}
36 void SetT0TOF(Int_t icase, Float_t time) { fT0TOF[icase] = time;}
ce50812a 37 //best
38 Double32_t GetT0TOFbest(Int_t i) const {return fT0TOFbest[i];}
39 const Double32_t * GetT0TOFbest() const {return fT0TOFbest;}
40 void SetT0TOFbest(Int_t icase, Float_t time) { fT0TOFbest[icase] = time;}
41
adf36b9d 42 Int_t GetT0Trig() const {return fT0trig;}
43 void SetT0Trig(Int_t tvdc) {fT0trig = tvdc;}
b0e13b29 44 Bool_t GetT0Trig(Int_t i) {return (fT0trig&(1<<i)) != 0;}
adf36b9d 45 const Double32_t * GetT0time() const {return fT0time;}
46 void SetT0time(Double32_t time[24]) {
b0e13b29 47 for (Int_t i=0; i<24; i++) fT0time[i] = time[i];
d5ebf00e 48 }
adf36b9d 49 const Double32_t * GetT0amplitude() const {return fT0amplitude;}
50 void SetT0amplitude(Double32_t amp[24]) {
d5ebf00e 51 for (Int_t i=0; i<24; i++) fT0amplitude[i] = amp[i];
52 }
ec2a9359 53 Float_t GetTimeFull(Int_t ch, Int_t hit) const {return fTimeFull[ch][hit];}
54 Float_t GetOrA(Int_t hit) const {return fOrA[hit];}
55 Float_t GetOrC(Int_t hit) const {return fOrC[hit];}
56 Float_t GetTVDC(Int_t hit) const {return fTVDC[hit];}
b0e13b29 57
58 void SetTimeFull(Int_t ch, Int_t hit, Float_t time) {fTimeFull[ch][hit] = time;}
59 void SetOrA (Int_t hit, Float_t time) { fOrA[hit] = time ;}
60 void SetOrC (Int_t hit, Float_t time) { fOrC[hit] = time;}
61 void SetTVDC(Int_t hit, Float_t time) { fTVDC[hit] = time;}
62
63 void SetMultC(Float_t mult) {fMultC = mult;}
64 void SetMultA(Float_t mult) {fMultA = mult;}
ec2a9359 65 Float_t GetMultC() const {return fMultC;}
66 Float_t GetMultA() const {return fMultA;}
ea1a8005 67
68 void SetBackgroundFlag(Bool_t back = false) {fBackground = back;}
69 void SetPileupFlag(Bool_t back = false) {fPileup = back;}
70 void SetSatelliteFlag(Bool_t sat = false) { fSattelite = sat;}
71
ec2a9359 72 Bool_t GetBackgroundFlag() const {return fBackground;}
73 Bool_t GetPileupFlag() const {return fPileup;}
74 Bool_t GetSatellite() const {return fSattelite;}
ea1a8005 75
76 void SetPileupTime (Int_t hit, Float_t time) { fPileupTime[hit] = time;}
ec2a9359 77 Float_t GetPileupTime(Int_t hit) const {return fPileupTime[hit];}
ea1a8005 78
79
d5ebf00e 80 void Reset();
81 void Print(const Option_t *opt=0) const;
82
ea1a8005 83
d5ebf00e 84private:
85
adf36b9d 86 Float_t fT0clock; // backward compatibility
ce50812a 87 Double32_t fT0TOF[3]; // interaction time in ps with 1st time( A&C, A, C)
ea1a8005 88 Double32_t fT0zVertex; // vertex z position estimated by the T0, cm
adf36b9d 89 Double32_t fT0timeStart; // interaction time estimated by the T0
90 Int_t fT0trig; // T0 trigger signals
91 Double32_t fT0time[24]; // best TOF on each T0 PMT
92 Double32_t fT0amplitude[24]; // number of particles(MIPs) on each T0 PMT
ea1a8005 93 Float_t fTimeFull[24][5]; // array's TDC no-correction ;centred around 0, ns
94 Float_t fOrA[5]; //hardware OrA centred around 0, ns
95 Float_t fOrC[5]; //hardware OrC centred around 0, ns
96 Float_t fTVDC[5]; //hardware TVDC centred around 0, ns
b0e13b29 97 Bool_t fPileup; // pile-up flag
98 Bool_t fSattelite; //sattelite flag
99 Float_t fMultC; // multiplicity on the C side
100 Float_t fMultA; // multiplicity on the A side
ea1a8005 101 Bool_t fBackground; //sattelite flag
102 Float_t fPileupTime[6];
ce50812a 103 Double32_t fT0TOFbest[3]; // interaction time in ps ( A&C, A, C) with best time
ea1a8005 104
ce50812a 105 ClassDef(AliESDTZERO,7)
d5ebf00e 106};
107
108
109#endif