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 **************************************************************************/
18 Revision 1.4 2006/04/05 08:35:38 hristov
19 Coding conventions (S.Arcelli, C.Zampolli)
21 Revision 1.3 2006/03/28 14:57:13 arcelli
22 updates to handle new V5 geometry & some re-arrangements
24 Revision 1.2 2006/02/13 17:22:26 arcelli
27 Revision 1.1 2006/02/13 16:10:48 arcelli
28 Add classes for TOF Calibration (C.Zampolli)
30 author: Chiara Zampolli, zampolli@bo.infn.it
33 ///////////////////////////////////////////////////////////////////////////////
35 // class for TOF calibration //
37 ///////////////////////////////////////////////////////////////////////////////
39 #include "AliTOFcalibESD.h"
43 ClassImp(AliTOFcalibESD)
45 //________________________________________________________________
46 AliTOFcalibESD::AliTOFcalibESD():
54 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = 0;
56 //________________________________________________________________
58 AliTOFcalibESD::AliTOFcalibESD(const AliTOFcalibESD& UnCalib):
60 fCombID(UnCalib.fCombID),
61 fTOFCalCh(UnCalib.fTOFCalCh),
63 fIntLen(UnCalib.fIntLen),
64 fTOFtime(UnCalib.fTOFtime),
66 fTOFsignalND(UnCalib.fTOFsignalND)
68 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = UnCalib.fTrTime[i];
69 for (Int_t i = 0;i<15;i++) fExtCov[i] = UnCalib.fExtCov[i];
71 //________________________________________________________________
73 AliTOFcalibESD::~AliTOFcalibESD()
76 //________________________________________________________________
78 void AliTOFcalibESD::SetIntegratedTime(const Double_t *tracktime){
79 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = tracktime[i];
81 //________________________________________________________________
83 void AliTOFcalibESD::CopyFromAliESD(const AliESDtrack* track){
86 fTOFtime = track->GetTOFsignal();
87 fToT = track->GetTOFsignalToT();
88 fTOFCalCh = track->GetTOFCalChannel();
89 fIntLen = track->GetIntegratedLength();
91 track->GetIntegratedTimes(exptime);
92 for (Int_t i=0;i<AliPID::kSPECIES;i++) {
93 fTrTime[i] = exptime[i];
96 track->GetExternalCovariance(c);
97 for (Int_t i = 0;i<15;i++){
101 //______________________________________________________________________
103 void AliTOFcalibESD::GetExternalCovariance(Double_t cov[15]) const {
104 for (Int_t i=0; i<15; i++) cov[i]=fExtCov[i];
106 //______________________________________________________________________
108 void AliTOFcalibESD::GetIntegratedTimes(Double_t exp[AliPID::kSPECIES]) const {
109 for (Int_t i=0; i<AliPID::kSPECIES; i++) exp[i]=fTrTime[i];
111 //______________________________________________________________________
113 Int_t AliTOFcalibESD::Compare(const TObject* uncobj) const{
114 //To order in momentum
116 this->GetExternalCovariance(c1);
118 ((AliTOFcalibESD*)uncobj)->GetExternalCovariance(c2);
119 if (c1[0]*c1[2] <c2[0]*c2[2]) return -1;
120 if (c1[0]*c1[2]>c2[0]*c2[2]) return 1;