Coverity fixes (Ivana, Markus)
authorsma <sma@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 4 Mar 2011 11:56:19 +0000 (11:56 +0000)
committersma <sma@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 4 Mar 2011 11:56:19 +0000 (11:56 +0000)
PWG3/hfe/AliHFEV0pid.cxx
PWG3/hfe/AliHFEcontainer.cxx
PWG3/hfe/AliHFEefficiency.cxx
PWG3/hfe/AliHFEpidQA.cxx
PWG3/hfe/AliHFEtpcPIDqa.cxx

index 04f232d..66581a7 100644 (file)
@@ -12,9 +12,6 @@
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-
-/* $Id$ */
-
 //
 // Utility class for V0 PID
 // Identifies Electrons, Pions and Protons using gamma conversions and
@@ -249,9 +246,15 @@ Int_t AliHFEV0pid::ProcessV0(TObject *v0){
   // Apply general cut and special cuts for gamma, K0s, Lambda
   //
   if(!v0)  return AliHFEV0cuts::kUndef;
+  // CHECK
+  AliESDv0* esdV0 =  dynamic_cast<AliESDv0 *>(v0);
+  if( ! esdV0 ) {
+    AliError("Unexpected v0 type.");
+    return AliHFEV0cuts::kUndef;
+  }  
   AliVTrack* daughter[2];
-  daughter[0] = dynamic_cast<AliVTrack *>(fInputEvent->GetTrack((static_cast<AliESDv0 *>(v0))->GetPindex()));
-  daughter[1] = dynamic_cast<AliVTrack *>(fInputEvent->GetTrack((static_cast<AliESDv0 *>(v0))->GetNindex()));
+  daughter[0] = dynamic_cast<AliVTrack *>(fInputEvent->GetTrack(esdV0->GetPindex()));
+  daughter[1] = dynamic_cast<AliVTrack *>(fInputEvent->GetTrack(esdV0->GetNindex()));
   if(!daughter[0] || !daughter[1]) return AliHFEV0cuts::kUndef;
 
   if(fMCEvent != NULL) fMCon = kTRUE;
@@ -273,11 +276,12 @@ Int_t AliHFEV0pid::ProcessV0(TObject *v0){
       if(!fV0cuts->TrackCutsCommon(static_cast<AliESDtrack*>(daughter[i]))) return AliHFEV0cuts::kUndef;
     }
     // check commom V0 cuts
-    if(!fV0cuts->V0CutsCommon(dynamic_cast<AliESDv0 *>(v0))) return AliHFEV0cuts::kUndef;
+    // CHECK
+    if(!fV0cuts->V0CutsCommon(esdV0)) return AliHFEV0cuts::kUndef;
   }
 
   // preselect the V0 candidates based on the Armenteros plot
-  Int_t id = PreselectV0((dynamic_cast<AliESDv0 *>(v0)), idMC);
+  Int_t id = PreselectV0(esdV0, idMC);
 
   // store the resutls
   if(AliHFEV0cuts::kRecoGamma == id && IsGammaConv(v0)){
index f7efa74..143dcf1 100644 (file)
@@ -12,9 +12,6 @@
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-
-/* $Id$ */
-
 //
 // HFE correction framework container
 // Contains many single containers
@@ -108,16 +105,16 @@ AliHFEcontainer::AliHFEcontainer(const AliHFEcontainer &ref):
     fVariables = new TObjArray(fNVars);
     AliHFEvarInfo *vtmp = NULL;
     for(UInt_t ivar = 0; ivar < fNVars; ivar++){
-      vtmp = dynamic_cast<AliHFEvarInfo *>(ref.fVariables->UncheckedAt(ivar));
-      if(vtmp) fVariables->AddAt(new AliHFEvarInfo(*vtmp), ivar);
+      vtmp = static_cast<AliHFEvarInfo *>(ref.fVariables->UncheckedAt(ivar));
+      fVariables->AddAt(new AliHFEvarInfo(*vtmp), ivar);
     }
   }
   fContainers = new THashList;
   fContainers->SetOwner();
   AliCFContainer *ctmp = NULL;
   for(Int_t ien = 0; ien < ref.fContainers->GetEntries(); ien++){
-    ctmp = dynamic_cast<AliCFContainer *>(ref.fContainers->At(ien));
-    if(ctmp) CreateContainer(ctmp->GetName(), ctmp->GetTitle(), ctmp->GetNStep());
+    ctmp = static_cast<AliCFContainer *>(ref.fContainers->At(ien));
+    CreateContainer(ctmp->GetName(), ctmp->GetTitle(), ctmp->GetNStep());
   }
   // Copy also correlation matrices
   if(ref.fCorrelationMatrices){
@@ -125,8 +122,8 @@ AliHFEcontainer::AliHFEcontainer(const AliHFEcontainer &ref):
     fCorrelationMatrices = new THashList;
     fCorrelationMatrices->SetOwner();
     for(Int_t ien = 0; ien < ref.fCorrelationMatrices->GetEntries(); ien++){
-      htmp = dynamic_cast<THnSparseF *>(ref.fCorrelationMatrices->At(ien));
-      if(htmp) CreateCorrelationMatrix(htmp->GetName(), htmp->GetTitle());
+      htmp = static_cast<THnSparseF *>(ref.fCorrelationMatrices->At(ien));
+      CreateCorrelationMatrix(htmp->GetName(), htmp->GetTitle());
     }
   }
 }
@@ -146,8 +143,8 @@ AliHFEcontainer &AliHFEcontainer::operator=(const AliHFEcontainer &ref){
     fVariables = new TObjArray(fNVars);
     AliHFEvarInfo *vtmp = NULL;
     for(UInt_t ivar = 0; ivar < fNVars; ivar++){
-      vtmp = dynamic_cast<AliHFEvarInfo *>(ref.fVariables->UncheckedAt(ivar));
-      if(vtmp) fVariables->AddAt(new AliHFEvarInfo(*vtmp), ivar);
+      vtmp = static_cast<AliHFEvarInfo *>(ref.fVariables->UncheckedAt(ivar));
+      fVariables->AddAt(new AliHFEvarInfo(*vtmp), ivar);
     }
   } else {
     // No varible defined, do not try to copy anything
@@ -159,8 +156,8 @@ AliHFEcontainer &AliHFEcontainer::operator=(const AliHFEcontainer &ref){
   fContainers = new THashList();
   AliCFContainer *ctmp = NULL;
   for(Int_t ien = 0; ien < ref.fContainers->GetEntries(); ien++){
-    ctmp = dynamic_cast<AliCFContainer *>(ref.fContainers->At(ien));
-    if(ctmp) fContainers->Add(new AliCFContainer(*ctmp));
+    ctmp = static_cast<AliCFContainer *>(ref.fContainers->At(ien));
+    fContainers->Add(new AliCFContainer(*ctmp));
   }
   // Copy also correlation matrices
   if(ref.fCorrelationMatrices){
@@ -168,8 +165,8 @@ AliHFEcontainer &AliHFEcontainer::operator=(const AliHFEcontainer &ref){
     fCorrelationMatrices = new THashList;
     fCorrelationMatrices->SetOwner();
     for(Int_t ien = 0; ien < ref.fCorrelationMatrices->GetEntries(); ien++){
-      htmp = dynamic_cast<THnSparseF *>(ref.fCorrelationMatrices->At(ien));
-      if(htmp) CreateCorrelationMatrix(htmp->GetName(), htmp->GetTitle());
+      htmp = static_cast<THnSparseF *>(ref.fCorrelationMatrices->At(ien));
+      CreateCorrelationMatrix(htmp->GetName(), htmp->GetTitle());
     }
   }
   return *this;
index becd3d6..30bb40e 100644 (file)
@@ -12,9 +12,6 @@
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-
-/* $Id$ */
-
 //
 // Task for Efficiency studies
 // Used for testing classes AliHFEcontainer and AliHFEfilter
@@ -164,6 +161,10 @@ void AliHFEefficiency::UserExec(Option_t *){
   fFilter->SetRecEvent(fInputEvent);
   if(fMCEvent){
     AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler *>(AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
+   if ( ! mcH ) {
+     AliError("Cannot get MC truth event handler");
+     return;
+    }  
     if(mcH &&(!mcH->InitOk())) return;
     if(mcH &&(!mcH->TreeK())) return;
     if(mcH &&(!mcH->TreeTR())) return;
index b51621d..cc96eaf 100644 (file)
@@ -12,9 +12,6 @@
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-
-/* $Id$ */
-
 //
 // Class for PID QA
 // Several studies done on clean samples of electrons, pions and kaons
@@ -412,7 +409,7 @@ void AliHFEpidQA::FillIllumination(const TObjArray * const tracks, Int_t species
       if(!esdtrack) continue;
     } else if(!TString(o->IsA()->GetName()).CompareTo("AliAODrack")){
       // Bad hack: Fill ESD track with AOD information
-      esdtrack = new AliESDtrack(dynamic_cast<AliAODTrack *>(o));
+      esdtrack = new AliESDtrack(static_cast<AliAODTrack *>(o));
       if(!esdtrack) continue;
     } else {
       // Non usable
index 7d714b1..85fbdd7 100644 (file)
@@ -12,9 +12,6 @@
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-
-/* $Id$ */
-
 //
 // Class AliHFEtpcPIDqa
 // Monitoring TPC PID in the HFE PID montioring framework. The following
@@ -197,12 +194,12 @@ void AliHFEtpcPIDqa::Initialize(){
   Int_t nBinsdEdx[kNdim] = {kPIDbins, kPbins, kDedxbins, kSteps, kCentralityBins};
   Double_t mindEdx[kNdim] =  {kMinPID, kMinP, 0., 0., 0.};
   Double_t maxdEdx[kNdim] =  {kMaxPID, kMaxP, 200, 2., 11.}; 
-  fHistos->CreateTHnSparse("tpcDedx", "TPC signal; species; p [GeV/c]; TPC signal [a.u.]; Centrality; Selection Step", kNdim, nBinsdEdx, mindEdx, maxdEdx);
+  fHistos->CreateTHnSparse("tpcDedx", "TPC signal; species; p [GeV/c]; TPC signal [a.u.]; Selection Step; Centrality", kNdim, nBinsdEdx, mindEdx, maxdEdx);
   // 2nd histogram: TPC sigmas: (species, p nsigma, step)
   Int_t nBinsSigma[kNdim] = {kPIDbins, kPbins, kSigmaBins, kSteps, kCentralityBins};
   Double_t minSigma[kNdim] = {kMinPID, kMinP, -12., 0., 0.};
-  Double_t maxSigma[kNdim] = {kMaxPID, kMaxP, 12., 2., 100.};
-  fHistos->CreateTHnSparse("tpcnSigma", "TPC signal; species; p [GeV/c]; TPC signal [a.u.]; Centrality; Selection Step", kNdim, nBinsSigma, minSigma, maxSigma);
+  Double_t maxSigma[kNdim] = {kMaxPID, kMaxP, 12., 2., 11.};
+  fHistos->CreateTHnSparse("tpcnSigma", "TPC signal; species; p [GeV/c]; TPC signal [a.u.]; Selection Step; Centrality", kNdim, nBinsSigma, minSigma, maxSigma);
 
   // General TPC QA
 }
@@ -238,10 +235,10 @@ Double_t AliHFEtpcPIDqa::GetTPCsignal(const AliVParticle *track, AliHFEpidObject
   //
   Double_t tpcSignal = 0.;
   if(anatype == AliHFEpidObject::kESDanalysis){
-    const AliESDtrack *esdtrack = dynamic_cast<const AliESDtrack *>(track);
+    const AliESDtrack *esdtrack = static_cast<const AliESDtrack *>(track);
     tpcSignal = esdtrack->GetTPCsignal();
   } else {
-    const AliAODTrack *aodtrack = dynamic_cast<const AliAODTrack *>(track);
+    const AliAODTrack *aodtrack = static_cast<const AliAODTrack *>(track);
     tpcSignal = aodtrack->GetDetPid() ? aodtrack->GetDetPid()->GetTPCsignal() : 0.;
   }
   return tpcSignal;