#include "AliMCEvent.h"
#include "AliVParticle.h"
#include "AliAODMCHeader.h"
-#include "AliEventplane.h"
#include "TFormula.h"
#include "AliAnalysisManager.h"
ClassImp(AliAnalyseLeadingTrackUE)
-//____________________________________________________________________
+//-------------------------------------------------------------------
AliAnalyseLeadingTrackUE::AliAnalyseLeadingTrackUE() :
TObject(),
fDebug(0),
fCheckMotherPDG(kTRUE),
fTrackEtaCut(0.8),
fTrackEtaCutMin(-1.),
- fTrackPhiCutEvPlMin(0),
- fTrackPhiCutEvPlMax(0),
+ fTrackPhiCutEvPlMin(0.),
+ fTrackPhiCutEvPlMax(0.),
fTrackPtMin(0),
fEventSelection(AliVEvent::kMB|AliVEvent::kUserDefined),
fDCAXYCut(0),
// constructor
}
-//____________________________________________________________________
+
+//-------------------------------------------------------------------
AliAnalyseLeadingTrackUE & AliAnalyseLeadingTrackUE::operator = (const AliAnalyseLeadingTrackUE & /*source*/)
{
// assignment operator
return *this;
}
-//____________________________________________________________________
+
+//-------------------------------------------------------------------
AliAnalyseLeadingTrackUE::~AliAnalyseLeadingTrackUE()
{
}
+
//____________________________________________________________________
Bool_t AliAnalyseLeadingTrackUE::ApplyCuts(TObject* track)
{
return kTRUE;
}
+
//____________________________________________________________________
-void AliAnalyseLeadingTrackUE::DefineESDCuts(Int_t filterbit)
-{
+void AliAnalyseLeadingTrackUE::DefineESDCuts(Int_t filterbit) {
// Reproduces the cuts of the corresponding bit in the ESD->AOD filtering
// (see $ALICE_ROOT/ANALYSIS/macros/AddTaskESDFilter.C)
return tracks;
}
-//____________________________________________________________________
+
void AliAnalyseLeadingTrackUE::RemoveInjectedSignals(TObjArray* tracks, TObject* mcObj, Int_t maxLabel)
{
// remove injected signals (primaries above <maxLabel>)
AliInfo(Form("Reduced from %d to %d", before, tracks->GetEntriesFast()));
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
void AliAnalyseLeadingTrackUE::RemoveWeakDecays(TObjArray* tracks, TObject* mcObj)
{
// remove particles from weak decays
AliInfo(Form("Reduced from %d to %d", before, tracks->GetEntriesFast()));
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
TObjArray* AliAnalyseLeadingTrackUE::GetAcceptedParticles(TObject* obj, TObject* arrayMC, Bool_t onlyprimaries, Int_t particleSpecies, Bool_t useEtaPtCuts, Bool_t speciesOnTracks, Double_t evtPlane)
{
// Returns an array of particles that pass the cuts, if arrayMC is given each reconstructed particle is replaced by its corresponding MC particles, depending on the parameter onlyprimaries only for primaries
return tracks;
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
TObjArray* AliAnalyseLeadingTrackUE::GetFakeParticles(TObject* obj, TObject* arrayMC, Bool_t onlyprimaries, Int_t particleSpecies, Bool_t useEtaPtCuts)
{
// particleSpecies: -1 all particles are returned
return pairs;
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
TObjArray* AliAnalyseLeadingTrackUE::GetMinMaxRegion(TList *transv1, TList *transv2)
{
return regionParticles;
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
Int_t AliAnalyseLeadingTrackUE::NParticles(TObject* obj)
{
nTracks = array->GetEntriesFast();
}else if (obj->InheritsFrom("AliAODEvent")){ // RECO AOD tracks
AliAODEvent *aodEvent = static_cast<AliAODEvent*>(obj);
- nTracks = aodEvent->GetNTracks();
+ nTracks = aodEvent->GetNumberOfTracks();
}else if (obj->InheritsFrom("AliESDEvent")){ // RECO ESD tracks
AliESDEvent *esdEvent = static_cast<AliESDEvent*>(obj);
nTracks = esdEvent->GetNumberOfTracks();
return nTracks;
}
-//____________________________________________________________________
+//-------------------------------------------------------------------
AliVParticle* AliAnalyseLeadingTrackUE::ParticleWithCuts(TObject* obj, Int_t ipart, Bool_t onlyprimaries, Int_t particleSpecies)
{
// Returns track or MC particle at position "ipart" if passes selection criteria
Double_t pos[2];
Double_t covar[3];
AliAODTrack* clone = (AliAODTrack*) part->Clone();
- Bool_t success = clone->PropagateToDCA(vertex, aodEvent->GetHeader()->GetMagneticField(), 3, pos, covar);
+ Bool_t success = clone->PropagateToDCA(vertex, ((AliVAODHeader*)aodEvent->GetHeader())->GetMagneticField(), 3, pos, covar);
delete clone;
if (!success)
return 0;
return part;
}
-//____________________________________________________________________
+
+//-------------------------------------------------------------------
void AliAnalyseLeadingTrackUE::QSortTracks(TObjArray &a, Int_t first, Int_t last)
{
// Sort array of TObjArray of tracks by Pt using a quicksort algorithm.
}
+
//____________________________________________________________________
Bool_t AliAnalyseLeadingTrackUE::TriggerSelection(const TObject* obj)
{
}
//____________________________________________________________________
+
Bool_t AliAnalyseLeadingTrackUE::CheckTrack(AliVParticle * part)
{
// check if the track status flags are set