]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFcalibESD.cxx
Cal Objects for DC06
[u/mrichter/AliRoot.git] / TOF / AliTOFcalibESD.cxx
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 $Log$
18 Revision 1.2  2006/02/13 17:22:26  arcelli
19 just Fixing Log info
20
21 Revision 1.1  2006/02/13 16:10:48  arcelli
22 Add classes for TOF Calibration (C.Zampolli)
23
24 author: Chiara Zampolli, zampolli@bo.infn.it
25 */  
26
27 ///////////////////////////////////////////////////////////////////////////////
28 //                                                                           //
29 // class for TOF calibration                                                 //
30 //                                                                           //
31 ///////////////////////////////////////////////////////////////////////////////
32
33 #include "AliTOFcalibESD.h"
34
35
36 ClassImp(AliTOFcalibESD)
37
38 //________________________________________________________________
39 AliTOFcalibESD::AliTOFcalibESD():
40   fTOFCalChannel(-1),
41   fToT(0),
42   fIntLen(0),
43   fTOFtime(0),
44   fP(0),
45   fTOFsignalND(0)
46 {
47   for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrackTime[i] = 0;
48 }
49 //________________________________________________________________
50
51 AliTOFcalibESD::AliTOFcalibESD(const AliTOFcalibESD& UnCalib):
52   AliESDtrack(UnCalib),
53   fCombID(UnCalib.fCombID),
54   fTOFCalChannel(UnCalib.fTOFCalChannel),
55   fToT(UnCalib.fToT),
56   fIntLen(UnCalib.fIntLen),
57   fTOFtime(UnCalib.fTOFtime),
58   fP(UnCalib.fP),
59   fTOFsignalND(UnCalib.fTOFsignalND)
60 {
61   for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrackTime[i] = UnCalib.fTrackTime[i];
62   for (Int_t i = 0;i<15;i++) fExtCov[i] = UnCalib.fExtCov[i];
63 }
64 //________________________________________________________________
65
66 AliTOFcalibESD::~AliTOFcalibESD()
67 {
68 }
69 //________________________________________________________________
70
71 void AliTOFcalibESD::SetIntegratedTime(const Double_t *tracktime){
72   for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrackTime[i] = tracktime[i];
73 }
74 //________________________________________________________________
75
76 void AliTOFcalibESD::CopyFromAliESD(const AliESDtrack* track)
77 {
78   fP = track->GetP();
79   fTOFtime = track->GetTOFsignal();
80   fToT = track->GetTOFsignalToT();
81   fTOFCalChannel = track->GetTOFCalChannel();
82   fIntLen = track->GetIntegratedLength();
83   Double_t exptime[10]; 
84   track->GetIntegratedTimes(exptime);
85   for (Int_t i=0;i<AliPID::kSPECIES;i++) {
86     fTrackTime[i] = exptime[i];
87   }
88   Double_t c[15];
89   track->GetExternalCovariance(c);
90   for (Int_t i = 0;i<15;i++){
91     fExtCov[i] = c[i];
92   }
93 }
94 //______________________________________________________________________
95
96 void AliTOFcalibESD::GetExternalCovariance(Double_t cov[15]) const {
97   for (Int_t i=0; i<15; i++) cov[i]=fExtCov[i];
98 }
99 //______________________________________________________________________
100
101 void AliTOFcalibESD::GetIntegratedTimes(Double_t exp[AliPID::kSPECIES]) const {
102   for (Int_t i=0; i<AliPID::kSPECIES; i++) exp[i]=fTrackTime[i];
103 }
104 //______________________________________________________________________
105
106 Int_t AliTOFcalibESD::Compare(const TObject* uncobj) const{
107   Double_t c1[15]; 
108   this->GetExternalCovariance(c1);
109   Double_t c2[15]; 
110   ((AliTOFcalibESD*)uncobj)->GetExternalCovariance(c2);
111   if (c1[0]*c1[2] <c2[0]*c2[2]) return -1;
112   if (c1[0]*c1[2]>c2[0]*c2[2]) return 1;
113   return 0;
114 }
115
116