]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITStrackV2.cxx
Fixing FORWARD_NULL defects reported by Coverity
[u/mrichter/AliRoot.git] / ITS / AliITStrackV2.cxx
index 5bf6da1d3f2b7c9d452f0558d55db0410b48a8d6..c4478c5d742a915f60ade0336f518f265d3cf2e0 100644 (file)
@@ -24,7 +24,6 @@
 #include <TMath.h>
 
 #include "AliCluster.h"
-#include "AliESDtrack.h"
 #include "AliESDVertex.h"
 #include "AliITSReconstructor.h"
 #include "AliITStrackV2.h"
@@ -37,6 +36,7 @@ ClassImp(AliITStrackV2)
 
 //____________________________________________________________________________
 AliITStrackV2::AliITStrackV2() : AliKalmanTrack(),
+  fCheckInvariant(kTRUE),
   fdEdx(0),
   fESDtrack(0)
 {
@@ -46,8 +46,9 @@ AliITStrackV2::AliITStrackV2() : AliKalmanTrack(),
 
 
 //____________________________________________________________________________
-AliITStrackV2::AliITStrackV2(AliESDtrack& t,Bool_t c) throw (const Char_t *) :
+AliITStrackV2::AliITStrackV2(AliESDtrack& t,Bool_t c):
   AliKalmanTrack(),
+  fCheckInvariant(kTRUE),
   fdEdx(t.GetITSsignal()),
   fESDtrack(&t)
 {
@@ -58,12 +59,10 @@ AliITStrackV2::AliITStrackV2(AliESDtrack& t,Bool_t c) throw (const Char_t *) :
   const AliExternalTrackParam *par=&t;
   if (c) {
     par=t.GetConstrainedParam();
-    if (!par) throw "AliITStrackV2: conversion failed !\n";
+    if (!par) AliError("AliITStrackV2: conversion failed !\n");
   }
   Set(par->GetX(),par->GetAlpha(),par->GetParameter(),par->GetCovariance());
 
-  //if (!Invariant()) throw "AliITStrackV2: conversion failed !\n";
-
   SetLabel(t.GetLabel());
   SetMass(t.GetMass());
   SetNumberOfClusters(t.GetITSclusters(fIndex));
@@ -105,6 +104,7 @@ void AliITStrackV2::UpdateESDtrack(ULong_t flags) const {
 //____________________________________________________________________________
 AliITStrackV2::AliITStrackV2(const AliITStrackV2& t) : 
   AliKalmanTrack(t),
+  fCheckInvariant(t.fCheckInvariant),
   fdEdx(t.fdEdx),
   fESDtrack(t.fESDtrack) 
 {
@@ -281,6 +281,8 @@ Bool_t AliITStrackV2::Invariant() const {
   //------------------------------------------------------------------
   // This function is for debugging purpose only
   //------------------------------------------------------------------
+  if(!fCheckInvariant) return kTRUE;
+
   Int_t n=GetNumberOfClusters();
 
   // take into account the misalignment error
@@ -391,8 +393,6 @@ Bool_t AliITStrackV2::Improve(Double_t x0,Double_t xyz[3],Double_t ers[3]) {
   //------------------------------------------------------------------
   //Store the initail track parameters
 
-  return kTRUE; //PH temporary switched off
-
   Double_t x = GetX();
   Double_t alpha = GetAlpha();
   Double_t par[] = {GetY(),GetZ(),GetSnp(),GetTgl(),GetSigned1Pt()};