fAODtracksWrite(0),
fAnalyseJets(0),
fRefArr (NULL),
- fNJets(-9999),
- fNPart(-9999),
+ fNJets(0),
+ fNPart(0),
fRadius(0.7),
fMinJetParticles(1),
fJetPtCut(0.),
//______________________________________________________________________________
AliCdfJetFinder::~AliCdfJetFinder()
{
+ Clean();
// destructor
}
InitData();
-if (!fNPart) { if (fDebug) {cout << "entries = 0 ; Event empty !!!" << endl ;} return; } // if event empty then exit
-
-FindCones();
-
-ComputeConesWeight();
-
-if (fAODwrite) {
- if(fDebug)cout << "Writing AOD" << endl ;
- WriteJets();
+ if (!fNPart) {
+ if (fDebug) {
+ cout << "entries = 0 ; Event empty !!!" << endl ;
+ }
+ // no need to call clean, InitData does not
+ // create pointers if npart == 0
+ return;
+ } // if event empty then exit
+
+ FindCones();
+
+ ComputeConesWeight();
+
+ if (fAODwrite) {
+ if(fDebug)cout << "Writing AOD" << endl ;
+ WriteJets();
}
-
-if (fAnalyseJets) AnalizeJets();
-
-Clean();
+
+ if (fAnalyseJets) AnalizeJets();
+
+ Clean();
}
}
// tracks REFs written in AOD
AddJet(jet);
+
}
//jets vector parsed and written to AOD
}
}
}
+ delete [] dphipartljet;
+ delete [] zpartljet;
+ delete [] idxpartLJ;
}
void AliCdfJetFinder::Clean()
{
// CLEANING SECTION
- delete [] fVectParticle;
- delete [] fVectJet;
- delete [] fPtArray;
- delete [] fIdxArray;
+ for ( Int_t i = 0 ; i < fNPart ; i++ ){
+ delete fVectParticle[i];
+ fVectParticle[i] = 0;
+ }
+ delete [] fVectParticle;fVectParticle = 0;
+
+ for ( Int_t i = 0 ; i < fNJets ; i++ ){
+ delete fVectJet[i];
+ fVectJet[i] = 0;
+ }
+ delete [] fVectJet;fVectJet = 0;
+
+ delete [] fPtArray;fPtArray = 0;
+ delete [] fIdxArray;fIdxArray = 0;
Reset();
}