]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGLF/SPECTRA/PiKaPr/TestAOD/AliAnalysisTaskSpectraAllChAOD.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TestAOD / AliAnalysisTaskSpectraAllChAOD.cxx
index 25810a0001be17b1c973309530e58cc044759fc0..f8898b2acf0abea997fa22731ce62e3b1db996e1 100644 (file)
@@ -57,6 +57,8 @@ AliAnalysisTaskSpectraAllChAOD::AliAnalysisTaskSpectraAllChAOD(const char *name)
   fEventCuts(0x0),\r
   fHelperPID(0x0),\r
   fIsMC(0),\r
+  fCharge(0),\r
+  fVZEROside(0),\r
   fOutput(0x0),\r
   fnCentBins(20),\r
   fnQvecBins(50)\r
@@ -173,7 +175,11 @@ void AliAnalysisTaskSpectraAllChAOD::UserExec(Option_t *)
   if(fHelperPID->GetPIDType()==kBayes)fHelperPID->GetPIDCombined()->SetDefaultTPCPriors();//FIXME maybe this can go in the UserCreateOutputObject?\r
   \r
   Double_t Qvec=0.;//in case of MC we save space in the memory\r
-  if(!fIsMC)Qvec=fEventCuts->GetqV0A();//FIXME we'll have to combine A and C\r
+  if(!fIsMC){\r
+    if(fVZEROside==0)Qvec=fEventCuts->GetqV0A();\r
+    else if (fVZEROside==1)Qvec=fEventCuts->GetqV0C();\r
+  }\r
+\r
   Double_t Cent=fEventCuts->GetCent();\r
     \r
   // First do MC to fill up the MC particle array\r
@@ -189,6 +195,8 @@ void AliAnalysisTaskSpectraAllChAOD::UserExec(Option_t *)
        {\r
          AliAODMCParticle *partMC = (AliAODMCParticle*) arrayMC->At(iMC);\r
          if(!partMC->Charge()) continue;//Skip neutrals\r
+         if(fCharge != 0 && partMC->Charge() != fCharge) continue;//if fCharge != 0 only select fCharge\r
+         \r
          if(partMC->Eta() < fTrackCuts->GetEtaMin() || partMC->Eta() > fTrackCuts->GetEtaMax())continue;//ETA CUT ON GENERATED!!!!!!!!!!!!!!!!!!!!!!!!!!\r
          \r
          //pt     cent    IDgen        isph        y\r
@@ -208,6 +216,7 @@ void AliAnalysisTaskSpectraAllChAOD::UserExec(Option_t *)
   //main loop on tracks\r
   for (Int_t iTracks = 0; iTracks < fAOD->GetNumberOfTracks(); iTracks++) {\r
     AliAODTrack* track = fAOD->GetTrack(iTracks);\r
+    if(fCharge != 0 && track->Charge() != fCharge) continue;//if fCharge != 0 only select fCharge \r
     if (!fTrackCuts->IsSelected(track,kTRUE)) continue; //track selection (rapidity selection NOT in the standard cuts)\r
     Int_t IDrec=fHelperPID->GetParticleSpecies(track,kTRUE);//id from detector\r
     Double_t y= track->Y(fHelperPID->GetMass((AliHelperParticleSpecies_t)IDrec));\r