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.3 2006/03/28 14:57:13 arcelli
19 updates to handle new V5 geometry & some re-arrangements
21 Revision 1.2 2006/02/13 17:22:26 arcelli
24 Revision 1.1 2006/02/13 16:10:48 arcelli
25 Add classes for TOF Calibration (C.Zampolli)
27 author: Chiara Zampolli, zampolli@bo.infn.it
30 ///////////////////////////////////////////////////////////////////////////////
32 // class for TOF calibration //
34 ///////////////////////////////////////////////////////////////////////////////
36 #include "AliTOFcalibESD.h"
39 ClassImp(AliTOFcalibESD)
41 //________________________________________________________________
42 AliTOFcalibESD::AliTOFcalibESD():
50 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = 0;
52 //________________________________________________________________
54 AliTOFcalibESD::AliTOFcalibESD(const AliTOFcalibESD& UnCalib):
56 fCombID(UnCalib.fCombID),
57 fTOFCalCh(UnCalib.fTOFCalCh),
59 fIntLen(UnCalib.fIntLen),
60 fTOFtime(UnCalib.fTOFtime),
62 fTOFsignalND(UnCalib.fTOFsignalND)
64 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = UnCalib.fTrTime[i];
65 for (Int_t i = 0;i<15;i++) fExtCov[i] = UnCalib.fExtCov[i];
67 //________________________________________________________________
69 AliTOFcalibESD::~AliTOFcalibESD()
72 //________________________________________________________________
74 void AliTOFcalibESD::SetIntegratedTime(const Double_t *tracktime){
75 for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrTime[i] = tracktime[i];
77 //________________________________________________________________
79 void AliTOFcalibESD::CopyFromAliESD(const AliESDtrack* track){
82 fTOFtime = track->GetTOFsignal();
83 fToT = track->GetTOFsignalToT();
84 fTOFCalCh = track->GetTOFCalChannel();
85 fIntLen = track->GetIntegratedLength();
87 track->GetIntegratedTimes(exptime);
88 for (Int_t i=0;i<AliPID::kSPECIES;i++) {
89 fTrTime[i] = exptime[i];
92 track->GetExternalCovariance(c);
93 for (Int_t i = 0;i<15;i++){
97 //______________________________________________________________________
99 void AliTOFcalibESD::GetExternalCovariance(Double_t cov[15]) const {
100 for (Int_t i=0; i<15; i++) cov[i]=fExtCov[i];
102 //______________________________________________________________________
104 void AliTOFcalibESD::GetIntegratedTimes(Double_t exp[AliPID::kSPECIES]) const {
105 for (Int_t i=0; i<AliPID::kSPECIES; i++) exp[i]=fTrTime[i];
107 //______________________________________________________________________
109 Int_t AliTOFcalibESD::Compare(const TObject* uncobj) const{
110 //To order in momentum
112 this->GetExternalCovariance(c1);
114 ((AliTOFcalibESD*)uncobj)->GetExternalCovariance(c2);
115 if (c1[0]*c1[2] <c2[0]*c2[2]) return -1;
116 if (c1[0]*c1[2]>c2[0]*c2[2]) return 1;