1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
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 **************************************************************************/
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 //-------------------------------------------------------------------------
24 #include "AliESDTZERO.h"
30 //______________________________________________________________________________
31 AliESDTZERO::AliESDTZERO() :
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;
52 for(int i = 0;i<3;i++) fT0TOF[i]=0;
54 //______________________________________________________________________________
55 AliESDTZERO::AliESDTZERO(const AliESDTZERO &tzero ) :
57 fT0clock(tzero.fT0clock),
58 fT0zVertex(tzero.fT0zVertex),
59 fT0timeStart(tzero.fT0timeStart),
60 fT0trig(tzero.fT0trig),
61 fPileup(tzero.fPileup),
62 fSattelite(tzero.fSattelite),
67 for(int i = 0;i<3;i++) fT0TOF[i] = tzero.fT0TOF[i];
69 for(int i = 0;i<24;i++){
70 fT0time[i] = tzero.fT0time[i];
71 fT0amplitude[i] = tzero.fT0amplitude[i];
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];
80 //______________________________________________________________________________
81 AliESDTZERO& AliESDTZERO::operator=(const AliESDTZERO& tzero){
82 // assigmnent operator
84 TObject::operator=(tzero);
85 fT0clock = tzero.fT0clock;
86 fT0zVertex = tzero.fT0zVertex;
87 fT0timeStart = tzero.fT0timeStart;
88 fPileup = tzero.fPileup;
89 fSattelite = tzero.fSattelite;
90 fMultC = tzero.fMultC;
91 fMultA = tzero.fMultA;
92 fT0trig = tzero.fT0trig;
93 for(int i = 0;i<3;i++) fT0TOF[i] = tzero.fT0TOF[i];
94 for(int i = 0;i<24;i++){
95 fT0time[i] = tzero.fT0time[i];
96 fT0amplitude[i] = tzero.fT0amplitude[i];
97 for(Int_t iHit=0; iHit<5; iHit++) {
98 fTimeFull[i][iHit] = tzero.fTimeFull[i][iHit];
99 fOrA[iHit] = tzero.fOrA[iHit];
100 fOrC[iHit] = tzero.fOrC[iHit];
101 fTVDC[iHit] = tzero.fTVDC[iHit];
107 //______________________________________________________________________________
108 void AliESDTZERO::Copy(TObject &obj) const {
110 // this overwrites the virtual TOBject::Copy()
111 // to allow run time copying without casting
114 if(this==&obj)return;
115 AliESDTZERO *robj = dynamic_cast<AliESDTZERO*>(&obj);
116 if(!robj)return; // not an AliESDTZERO
122 //______________________________________________________________________________
123 void AliESDTZERO::Reset()
129 for(int i = 0;i<24;i++) {
130 fT0time[i] = fT0amplitude[i] = 0;
131 for(Int_t iHit=0; iHit<5; iHit++) fTimeFull[i][iHit] = -10000;
133 for(Int_t iHit=0; iHit<5; iHit++) fOrA[iHit] = fOrC[iHit] = fTVDC[iHit] = -10000;
135 for(int i = 0;i<3;i++) fT0TOF[i] = 0;
138 //______________________________________________________________________________
139 void AliESDTZERO::Print(const Option_t *) const
141 // does noting fornow
142 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]));
145 for (Int_t i=0; i<5; i++) tr[i] = fT0trig & (1<<i);
146 AliInfo(Form("T0 triggers %d %d %d %d %d",tr[0],tr[1],tr[2],tr[3],tr[4]));