]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
AliPIDCombined as transient data member
authorlmilano <lmilano@cern.ch>
Tue, 15 Jul 2014 09:27:11 +0000 (11:27 +0200)
committerlmilano <lmilano@cern.ch>
Tue, 15 Jul 2014 09:27:11 +0000 (11:27 +0200)
PWG/Tools/AliHelperPID.cxx
PWG/Tools/AliHelperPID.h
PWGLF/SPECTRA/PiKaPr/TestAOD/AddTaskSpectraAllChAOD.C
PWGLF/SPECTRA/PiKaPr/TestAOD/AliAnalysisTaskSpectraAllChAOD.cxx

index e91d54c0c05f0a53a20b598e8486ece4fd4865df..1f195b0bc57652910e64bbc6ba5d8ae68399a069 100644 (file)
@@ -44,7 +44,7 @@ const char * kParticleSpeciesName[]={"Pions","Kaons","Protons","Undefined"} ;
 
 ClassImp(AliHelperPID)
 
-AliHelperPID::AliHelperPID() : TNamed("HelperPID", "PID object"),fisMC(0), fPIDType(kNSigmaTPCTOF), fNSigmaPID(3), fBayesCut(0.8), fPIDResponse(0), fPIDCombined(0),fOutputList(0),fRequestTOFPID(1),fRemoveTracksT0Fill(0),fUseExclusiveNSigma(0),fPtTOFPID(.6),fHasTOFPID(0){
+AliHelperPID::AliHelperPID() : TNamed("HelperPID", "PID object"),fisMC(0), fPIDType(kNSigmaTPCTOF), fNSigmaPID(3), fBayesCut(0.8), fPIDResponse(0x0), fPIDCombined(0x0),fOutputList(0x0),fRequestTOFPID(1),fRemoveTracksT0Fill(0),fUseExclusiveNSigma(0),fPtTOFPID(.6),fHasTOFPID(0){
   
   for(Int_t ipart=0;ipart<kNSpecies;ipart++)
     for(Int_t ipid=0;ipid<=kNSigmaPIDType;ipid++)
@@ -142,7 +142,11 @@ AliHelperPID::AliHelperPID() : TNamed("HelperPID", "PID object"),fisMC(0), fPIDT
     fHistoPID->GetYaxis()->SetTitle(Form("%s signal",kDetectorName[idet]));
     fOutputList->Add(fHistoPID);
   }
-  
+
+  // ------- setup PIDCombined
+  fPIDCombined=new AliPIDCombined;
+  fPIDCombined->SetDefaultTPCPriors();
+  fPIDCombined->SetDetectorMask(AliPIDResponse::kDetTPC+AliPIDResponse::kDetTOF);  
 }
 
 //////////////////////////////////////////////////////////////////////////////////////////////////
@@ -177,7 +181,8 @@ Int_t AliHelperPID::GetParticleSpecies(AliVTrack * trk, Bool_t FIllQAHistos){
   if(fPIDType==kBayes){//use bayesianPID
     
     if(!fPIDCombined) {
-      AliFatal("PIDCombined object has to be set in the steering macro");
+      //AliFatal("PIDCombined object has to be set in the steering macro");
+      AliFatal("PIDCombined object not found");
     }
     
     ID = GetIDBayes(trk,FIllQAHistos);
index c54168b275bd5dce04938b012c71ec1a60d5ab57..5d1bb63f0840ccbc08afe9b9ba91550c57a1e819 100644 (file)
@@ -84,7 +84,8 @@ class AliHelperPID : public TNamed
   Double_t GetPtTOFPID(){return   fPtTOFPID;}
   void SetfPtTOFPID(Double_t pttof){fPtTOFPID=pttof;}
   //set PID Combined
-  void SetPIDCombined(AliPIDCombined *obj){fPIDCombined=obj;}
+  //void SetPIDCombined(AliPIDCombined *obj){fPIDCombined=obj;}
+  void SetPIDCombined(AliPIDCombined *obj){Printf("void SetPIDCombined(AliPIDCombined *obj) not implemented");}  //FIXME Left for backward-compatibility, not the PIDCombined onject is created in the constructor as done in /ANALYSIS/AliAnalysisTaskPIDCombined.cxx (Jul 15th 2014)
   AliPIDCombined *GetPIDCombined(){return fPIDCombined;}
   //set cut on beyesian probability
   void SetBayesCut(Double_t cut){fBayesCut=cut;}
@@ -121,7 +122,7 @@ class AliHelperPID : public TNamed
   Double_t fNSigmaPID; // number of sigma for PID cut
   Double_t fBayesCut; // Cut on Bayesian probability
   AliPIDResponse   *fPIDResponse;     // ! PID response object
-  AliPIDCombined   *fPIDCombined;     // PIDCombined
+  AliPIDCombined   *fPIDCombined;     // PIDCombined
   TList     *fOutputList;  // List Histo's
   Double_t fnsigmas[kNSpecies][kNSigmaPIDType+1]; //nsigma values
   Bool_t fHasDoubleCounting[kNSpecies];//array with compatible identities
@@ -134,7 +135,7 @@ class AliHelperPID : public TNamed
   AliHelperPID(const AliHelperPID&);
   AliHelperPID& operator=(const AliHelperPID&);
   
-  ClassDef(AliHelperPID, 6);
+  ClassDef(AliHelperPID, 7);
   
 };
 #endif
index 0766a726de8fd8216d23f6903c9d707fe692990f..6c93db5231de6857a0cbb986f6d2d3dab2b4e152 100644 (file)
@@ -61,7 +61,7 @@ AliAnalysisTaskSpectraAllChAOD* AddTaskSpectraAllChAOD(
   if(PIDtype==3){
     AliPIDCombined *pidc=new AliPIDCombined(Form("PIDCombined%s",opt.Data()),Form("PIDCombined%s",opt.Data()));
     pidc->SetDefaultTPCPriors();
-    pid->SetPIDCombined(pidc);
+    pid->SetPIDCombined(pidc);//not implemented
   }
   
   AliAnalysisTaskSpectraAllChAOD *task = new AliAnalysisTaskSpectraAllChAOD(Form("TaskAODSpectraCent%.0fto%.0f_QVec%.1fto%.1f_Eta%.1fto%.1f_TrBit%d%s",        
index e9b647147bed67932e560f1bbd799b6bef65764c..6e3e26e7da6d846a4e8811cde6f541306100749d 100644 (file)
@@ -101,10 +101,10 @@ void AliAnalysisTaskSpectraAllChAOD::UserCreateOutputObjects()
   
   //dimensions of THnSparse for tracks
   const Int_t nvartrk=8;
-  //                                             pt          cent          Q vec     IDrec      IDgen       isph         y        DCA 
-  Int_t    binsHistRealTrk[nvartrk] = {      nptBins, fnCentBins,     fnQvecBins,        4,        3,         3,        2,     fnDCABins};
-  Double_t xminHistRealTrk[nvartrk] = {         0.,          0.,              0.,       -.5,      -0.5,      0.5,    -0.5,    fDCAmin};
-  Double_t xmaxHistRealTrk[nvartrk] = {       10.,       100.,     fQvecUpperLim,       3.5,      2.5,       3.5,     0.5,      fDCAmax};    
+  //                                             pt          cent          Q vec       IDrec          IDgen        isph         y             DCA 
+  Int_t    binsHistRealTrk[nvartrk] = {      nptBins, fnCentBins,     fnQvecBins,        4,             3,          3,        2,        fnDCABins};
+  Double_t xminHistRealTrk[nvartrk] = {         0.,          0.,              0.,       -.5,          -0.5,        0.5,      -0.5,          fDCAmin};
+  Double_t xmaxHistRealTrk[nvartrk] = {       10.,       100.,     fQvecUpperLim,       3.5,      2.5,        3.5,      0.5,         fDCAmax};    
   THnSparseF* NSparseHistTrk = new THnSparseF("NSparseHistTrk","NSparseHistTrk",nvartrk,binsHistRealTrk,xminHistRealTrk,xmaxHistRealTrk);
   NSparseHistTrk->GetAxis(0)->SetTitle("#it{p}_{T,rec}");
   NSparseHistTrk->GetAxis(0)->SetName("pT_rec");
@@ -188,7 +188,7 @@ void AliAnalysisTaskSpectraAllChAOD::UserExec(Option_t *)
   if(!fEventCuts->IsSelected(fAOD,fTrackCuts))return;//event selection
 
   //Default TPC priors
-  if(fHelperPID->GetPIDType()==kBayes)fHelperPID->GetPIDCombined()->SetDefaultTPCPriors();//FIXME maybe this can go in the UserCreateOutputObject?
+  //if(fHelperPID->GetPIDType()==kBayes)fHelperPID->GetPIDCombined()->SetDefaultTPCPriors();//FIXME maybe this can go in the UserCreateOutputObject?
   
   Double_t Qvec=0.;//in case of MC we save space in the memory
   if(!fIsMC){