void AliAnalysisTaskCreateMixedDimuons::UserExec(Option_t *) {
- if (!fInputAOD) {
- Printf("ERROR: fInputAOD not available\n");
- return;
- }
-
if (!fOutputUserAOD) {
Printf("ERROR: fOutputUserAOD not available\n");
return;
printf("Calling USER EXEC\n\n");
for (Int_t iEv=0; iEv<fBufferSize; iEv++) {
+ if (!fInputAOD[iEv]) {
+ Printf("ERROR: fInputAOD[%d] not available\n",iEv);
+ continue;
+ }
+
for (Int_t jEv=0; jEv<iEv; jEv++) {
+ if (!fInputAOD) {
+ Printf("ERROR: fInputAOD not available\n");
+ return;
+ }
+
Int_t nTracksEv[2] = {0};
Int_t nFWMuonsEv[2] = {0};
AliMCParticle *mcPart = (AliMCParticle*) fMCEvent->GetTrack(ipart);
TParticle *part = mcPart->Particle();
- TParticle *part0 = mcPart->Particle();
- TParticle *part1 = mcPart->Particle();
// Mother kinematics
Double_t e = part->Energy();
// Decays kinematics
Int_t p0 = part->GetDaughter(0);
- part0 = stack->Particle(p0);
+ TParticle *part0 = stack->Particle(p0);
Int_t pdg0 = part0->GetPdgCode();
Int_t p1 = part->GetDaughter(1);
- part1 = stack->Particle(p1);
+ TParticle *part1 = stack->Particle(p1);
Int_t pdg1 = part1->GetPdgCode();
Double_t e0 = part0->Energy();
void SetThetaSingMuLimits (Double_t ThetaSingle[]) {fThetaSingMuCut[0]=ThetaSingle[0];fThetaSingMuCut[1]=ThetaSingle[1];}
void SetZprimVertLimits (Double_t Zprimvtx[]) {fzPrimVertexSPD[0]=Zprimvtx[0];fzPrimVertexSPD[1]=Zprimvtx[1];}
void SetCutonZvtxSPD (Bool_t cut=kFALSE) {fCutOnzVtxSPD=cut;}
- void SetNContributorsLimits (Double_t NContr[]) {fNContributors[0]=NContr[0];fNContributors[1]=NContr[1];}
+ void SetNContributorsLimits (Int_t NContr[]) {fNContributors[0]=NContr[0];fNContributors[1]=NContr[1];}
void SetCutonNContributors (Bool_t cut=kFALSE) {fCutOnNContributors=cut;}
void SetDistinguishTrigClass(Bool_t dist=kFALSE) {fDistinguishTrigClass=dist;}
void SetTrigClassMuonName (TString name = "CMU") {fTrigClassMuon=name;}
#include "TMath.h"
-#include "AliAnalysisTaskMuonAODCreation.h"
#include "AliAnalysisTaskSE.h"
#include "AliAnalysisManager.h"
#include "AliAODEvent.h"
header->SetMuonMagFieldScale(-999.); // FIXME
header->SetCentrality(0); // FIXME
- Int_t nVertices = 0;
const AliAODVertex *vtx = fOrgAOD->GetPrimaryVertex();
- if(vtx)nVertices = 1;
+ if ( !vtx) {
+ // CHECK Gines
+ AliError("Primary vertex is not defined");
+ return;
+ }
Int_t nDimuons=nMuTracks*(nMuTracks-1)/2;
static int ncal=0;
static int numtracks=0;
for (Int_t iTrack=0; iTrack<nMuTracks; iTrack++) {
- AliAODTrack *aodTrack;
- primary->AddDaughter( aodTrack=new(tracks[jTracks++])
+ primary->AddDaughter(new(tracks[jTracks++])
AliAODTrack((*(fOrgAOD->GetTrack(mutrNumb[iTrack])))));
ncal++;
}