]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/RESONANCES/AliRsnMonitorTrack.cxx
fix for Coverity (B.Hippolyte)
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnMonitorTrack.cxx
CommitLineData
6aecf4fd 1#include <TParticle.h>
2
3#include "AliLog.h"
4#include "AliStack.h"
5#include "AliESDtrack.h"
6#include "AliTOFT0maker.h"
7
8#include "AliRsnMonitorTrack.h"
9
10ClassImp(AliRsnMonitorTrack)
11
12AliRsnMonitorTrack::AliRsnMonitorTrack() :
2a1c7696 13 fCutsPassed(kFALSE),
14 fPrim(kFALSE),
15 fPDG(0),
16 fPDGM(0),
17 fMother(-1),
18 fStatus(0),
19 fLength(0.0),
20 fCharge(0),
21 fITSsa(kFALSE),
22 fTOFok(kFALSE),
23 fITSchi2(1E10),
24 fITSsignal(0.0),
25 fTPCcount(0),
26 fTPCchi2(1E10),
27 fTPCsignal(1E10),
28 fTOFsignal(0.0)
6aecf4fd 29{
30//
31// Unique constructor
32//
4d921955 33
34 Int_t k;
35
36 for (k = 0; k < 2; k++) fDCA[k] = 0.0;
37 for (k = 0; k < 6; k++) fITSmap[k] = 0;
38 for (k = 0; k < AliPID::kSPECIES; k++) {
39 fITSnsigma[k] = 0.0;
40 fTPCnsigma[k] = 0.0;
41 fTOFref [k] = 0.0;
42 fTOFsigma [k] = 0.0;
43 }
44 for (k = 0; k < 3; k++) {
45 fPsim[k] = 0.0;
46 fPrec[k] = 0.0;
47 fPtpc[k] = 0.0;
48 }
6aecf4fd 49}
50
51AliRsnMonitorTrack::AliRsnMonitorTrack(const AliRsnMonitorTrack& copy) :
2a1c7696 52 TObject(copy),
53 fCutsPassed(copy.fCutsPassed),
54 fPrim(copy.fPrim),
55 fPDG(copy.fPDG),
56 fPDGM(copy.fPDGM),
57 fMother(copy.fMother),
58 fStatus(copy.fStatus),
59 fLength(copy.fLength),
60 fCharge(copy.fCharge),
61 fITSsa(copy.fITSsa),
62 fTOFok(copy.fTOFok),
63 fITSchi2(copy.fITSchi2),
64 fITSsignal(copy.fITSsignal),
65 fTPCcount(copy.fTPCcount),
66 fTPCchi2(copy.fTPCchi2),
67 fTPCsignal(copy.fTPCsignal),
68 fTOFsignal(copy.fTOFsignal)
6aecf4fd 69{
70//
71// Copy constructor
72//
73
2a1c7696 74 Int_t k;
75
76 for (k = 0; k < 2; k++) fDCA[k] = copy.fDCA[k];
77 for (k = 0; k < 6; k++) fITSmap[k] = copy.fITSmap[k];
78 for (k = 0; k < AliPID::kSPECIES; k++) {
79 fITSnsigma[k] = copy.fITSnsigma[k];
80 fTPCnsigma[k] = copy.fTPCnsigma[k];
81 fTOFref [k] = copy.fTOFref [k];
82 fTOFsigma [k] = copy.fTOFsigma [k];
83 }
84 for (k = 0; k < 3; k++) {
85 fPsim[k] = copy.fPsim[k];
86 fPrec[k] = copy.fPrec[k];
87 fPtpc[k] = copy.fPtpc[k];
88 }
6aecf4fd 89}
90
91//_____________________________________________________________________________________________
92void AliRsnMonitorTrack::Reset()
93{
94//
95// Generic reset method, to set all fields to meaningless values
96//
2a1c7696 97
98 Int_t k;
99
100 fCutsPassed = kFALSE;
101 fITSsa = kFALSE;
102 fTOFok = kFALSE;
103 fPrim = kFALSE;
104 fPDG = 0;
105 fMother = -1;
106 fPDGM = 0;
107 fStatus = 0;
108 fLength = 0.0;
109 fCharge = 0;
110
111 for (k = 0; k < 2; k++) fDCA[k] = 1E10;
112
113 for (k = 0; k < 6; k++) fITSmap[k] = kFALSE;
114 fITSchi2 = 1E10;
115 fITSsignal = 0.0;
116
117 fTPCchi2 = 1E10;
118 fTPCsignal = 1E10;
119 fTPCcount = 0;
120
121 fTOFsignal = 1E10;
122
123 for (k = 0; k < AliPID::kSPECIES; k++) {
124 fITSnsigma[k] = 1E10;
125 fTPCnsigma[k] = 1E10;
126 fTOFref [k] = 1E10;
127 fTOFsigma [k] = 1E10;
128 }
129
130 for (k = 0; k < 3; k++) fPsim[k] = fPrec[k] = fPtpc[k] = 0.0;
6aecf4fd 131}
132
133//__________________________________________________________________________________________________
134Bool_t AliRsnMonitorTrack::AdoptMC(Int_t label, AliStack *stack)
135{
136//
137// Get info from MC for a given track in the stack
138//
139
2a1c7696 140 if (!stack) return kFALSE;
141
142 Int_t nPart = stack->GetNtrack();
143 if (label < 0 || label > nPart) {
144 AliError(Form("Label = %d -- MAX = %d", label, nPart));
145 return kFALSE;
146 }
147
148 TParticle *mc = stack->Particle(label);
149 if (!mc) return kFALSE;
150
151 // 'direct' data
152 fPDG = (Int_t)mc->GetPdgCode();
153 fMother = (Int_t)mc->GetFirstMother();
154 fPrim = (Bool_t)stack->IsPhysicalPrimary(label);
155 fPDGM = 0;
156 fPsim[0] = mc->Px();
157 fPsim[1] = mc->Py();
158 fPsim[2] = mc->Pz();
159
160 // assign mother (if any)
161 if (fMother >= 0 && fMother < nPart) {
162 TParticle *m = stack->Particle(fMother);
163 if (m) fPDGM = (Int_t)TMath::Abs(m->GetPdgCode());
164 }
165
166 return kTRUE;
6aecf4fd 167}