]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliESDTZERO.cxx
Initialization of data members
[u/mrichter/AliRoot.git] / STEER / AliESDTZERO.cxx
CommitLineData
d5ebf00e 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16//-------------------------------------------------------------------------
17// Implemenation Class AliESDTZERO
18// This is a class that summarizes the TZERO data for the ESD
19// Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch
20//-------------------------------------------------------------------------
21
22
23
24#include "AliESDTZERO.h"
8f8d0732 25#include "AliLog.h"
d5ebf00e 26
27
28ClassImp(AliESDTZERO)
29
30//______________________________________________________________________________
31AliESDTZERO::AliESDTZERO() :
32 TObject(),
0f0c06de 33 fT0clock(0),
d5ebf00e 34 fT0zVertex(0),
adf36b9d 35 fT0timeStart(0),
b0e13b29 36 fT0trig(0),
37 fPileup(kFALSE),
f6ee5d2d 38 fSattelite(kFALSE),
39 fMultC(0),
40 fMultA(0)
b0e13b29 41
d5ebf00e 42{
b0e13b29 43 for(int i = 0;i<24;i++) {
44 fT0time[i] = fT0amplitude[i] = 0;
45 for(Int_t iHit=0; iHit<5; iHit++) {
46 fTimeFull[i][iHit] = 0;
47 fOrA[iHit] = 0;
48 fOrC[iHit] = 0;
49 fTVDC[iHit] = 0;
50 }
51 }
adf36b9d 52 for(int i = 0;i<3;i++) fT0TOF[i]=0;
d5ebf00e 53}
b0e13b29 54//______________________________________________________________________________
d5ebf00e 55AliESDTZERO::AliESDTZERO(const AliESDTZERO &tzero ) :
56 TObject(tzero),
adf36b9d 57 fT0clock(tzero.fT0clock),
d5ebf00e 58 fT0zVertex(tzero.fT0zVertex),
d999f2e6 59 fT0timeStart(tzero.fT0timeStart),
b0e13b29 60 fT0trig(tzero.fT0trig),
f6ee5d2d 61 fPileup(tzero.fPileup),
62 fSattelite(tzero.fSattelite),
63 fMultC(tzero.fMultC),
64 fMultA(tzero.fMultA)
d5ebf00e 65{
66 // copy constuctor
adf36b9d 67 for(int i = 0;i<3;i++) fT0TOF[i] = tzero.fT0TOF[i];
68
d5ebf00e 69 for(int i = 0;i<24;i++){
70 fT0time[i] = tzero.fT0time[i];
71 fT0amplitude[i] = tzero.fT0amplitude[i];
b0e13b29 72 for(Int_t iHit=0; iHit<5; iHit++) {
73 fTimeFull[i][iHit] = tzero.fTimeFull[i][iHit];
74 fOrA[iHit] = tzero.fOrA[iHit];
75 fOrC[iHit] = tzero.fOrC[iHit];
76 fTVDC[iHit] = tzero.fTVDC[iHit];
77 }
d5ebf00e 78 }
79}
b0e13b29 80//______________________________________________________________________________
d5ebf00e 81AliESDTZERO& AliESDTZERO::operator=(const AliESDTZERO& tzero){
82 // assigmnent operator
83 if(this!=&tzero) {
84 TObject::operator=(tzero);
adf36b9d 85 fT0clock = tzero.fT0clock;
d5ebf00e 86 fT0zVertex = tzero.fT0zVertex;
b0e13b29 87 fT0timeStart = tzero.fT0timeStart;
b0e13b29 88 fMultC = tzero.fMultC;
f6ee5d2d 89 fMultA = tzero.fMultA;
b0e13b29 90 fT0trig = tzero.fT0trig;
adf36b9d 91 for(int i = 0;i<3;i++) fT0TOF[i] = tzero.fT0TOF[i];
d5ebf00e 92 for(int i = 0;i<24;i++){
93 fT0time[i] = tzero.fT0time[i];
94 fT0amplitude[i] = tzero.fT0amplitude[i];
b0e13b29 95 for(Int_t iHit=0; iHit<5; iHit++) {
96 fTimeFull[i][iHit] = tzero.fTimeFull[i][iHit];
97 fOrA[iHit] = tzero.fOrA[iHit];
98 fOrC[iHit] = tzero.fOrC[iHit];
99 fTVDC[iHit] = tzero.fTVDC[iHit];
100 }
101 }
d5ebf00e 102 }
103 return *this;
104}
b0e13b29 105//______________________________________________________________________________
732a24fe 106void AliESDTZERO::Copy(TObject &obj) const {
107
108 // this overwrites the virtual TOBject::Copy()
109 // to allow run time copying without casting
110 // in AliESDEvent
111
112 if(this==&obj)return;
113 AliESDTZERO *robj = dynamic_cast<AliESDTZERO*>(&obj);
114 if(!robj)return; // not an AliESDTZERO
115 *robj = *this;
116
117}
118
119
d5ebf00e 120//______________________________________________________________________________
121void AliESDTZERO::Reset()
122{
123 // reset contents
adf36b9d 124 fT0clock=0;
d5ebf00e 125 fT0zVertex = 0;
126 fT0timeStart = 0;
b0e13b29 127 for(int i = 0;i<24;i++) {
128 fT0time[i] = fT0amplitude[i] = 0;
129 for(Int_t iHit=0; iHit<5; iHit++) fTimeFull[i][iHit] = -10000;
130 }
131 for(Int_t iHit=0; iHit<5; iHit++) fOrA[iHit] = fOrC[iHit] = fTVDC[iHit] = -10000;
132
adf36b9d 133 for(int i = 0;i<3;i++) fT0TOF[i] = 0;
d5ebf00e 134}
135
136//______________________________________________________________________________
137void AliESDTZERO::Print(const Option_t *) const
138{
139 // does noting fornow
8f8d0732 140 AliInfo(Form(" Vertex %f (T0A+T0C)/2 %f #channels T0signal %f ns OrA %f ns OrC %f \n",fT0zVertex, fT0timeStart, fT0TOF[0],fT0TOF[1],fT0TOF[2]));
adf36b9d 141
8f8d0732 142 Bool_t tr[5];
143 for (Int_t i=0; i<5; i++) tr[i] = fT0trig & (1<<i);
144 AliInfo(Form("T0 triggers %d %d %d %d %d",tr[0],tr[1],tr[2],tr[3],tr[4]));
adf36b9d 145
d5ebf00e 146}