ROOT logo
AliRoot » STEER » ESD » AliESDEvent

class AliESDEvent: public AliVEvent

           Implementation of the AliESDEvent class
   This is the class to deal with during the physics analysis of data.
   It also ensures the backward compatibility with the old ESD format.

   AliESDEvent *ev= new AliESDEvent();
   ev->ReadFromTree(esdTree);
   ...
    for (Int_t i=0; i<nev; i++) {
      esdTree->GetEntry(i);
      if(ev->GetAliESDOld())ev->CopyFromOldESD();

   The AliESDInputHandler does this automatically for you

 Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch

Function Members (Methods)

public:
AliESDEvent()
virtual~AliESDEvent()
voidTObject::AbstractMethod(const char* method) const
Int_tAddCaloCluster(const AliESDCaloCluster* c)
voidAddCascade(const AliESDcascade* c)
voidAddCosmicTrack(const AliESDCosmicTrack* t)
voidAddHLTConfMapTrack(const AliESDHLTtrack*)
voidAddHLTHoughTrack(const AliESDHLTtrack*)
Int_tAddKink(const AliESDkink* c)
virtual voidAddObject(TObject* obj)
Char_tAddPileupVertexSPD(const AliESDVertex* vtx)
Char_tAddPileupVertexTracks(const AliESDVertex* vtx)
voidAddPmdTrack(const AliESDPmdTrack* t)
voidAddRawDataErrorLog(const AliRawDataErrorLog* log) const
Int_tAddTrack(const AliESDtrack* t)
voidAddTrdTrack(const AliESDTrdTrack* t)
voidAddTrdTracklet(const AliESDTrdTracklet* trkl)
voidAddTrdTracklet(UInt_t trackletWord, Short_t hcid, Int_t label = -1)
Int_tAddV0(const AliESDv0* v)
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tAreTracksConnected() const
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
Bool_tClean(Float_t* cleanPars)
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
voidCompleteStdContent()
virtual voidConnectTracks()
virtual voidCopy(TObject& obj) const
voidCopyFromOldESD()
virtual voidCreateStdContent()
voidCreateStdContent(Bool_t bUseThisList)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
voidEstimateMultiplicity(Int_t& tracklets, Int_t& trITSTPC, Int_t& trITSSApure, Double_t eta = 1., Bool_t useDCAFlag = kTRUE, Bool_t useV0Flag = kTRUE) const
virtual Int_tEventIndex(Int_t) const
virtual Int_tEventIndexForCaloCluster(Int_t) const
virtual Int_tEventIndexForEMCALCell(Int_t) const
virtual Int_tEventIndexForPHOSCell(Int_t) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual AliESDfriend*FindFriend() const
virtual TObject*FindListObject(const char* name) const
AliESDMuonCluster*FindMuonCluster(UInt_t clusterId)
AliESDMuonPad*FindMuonPad(UInt_t padId)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
AliESDACORDE*GetACORDEData() const
AliESDAD*GetADData() const
AliESD*GetAliESDOld()
Float_tGetBeamEnergy() const
Int_tGetBeamParticle(Int_t ibeam) const
Int_tGetBeamParticleA(Int_t ibeam) const
Int_tGetBeamParticleZ(Int_t ibeam) const
const char*GetBeamType() const
virtual UShort_tGetBunchCrossNumber() const
virtual AliESDCaloCluster*GetCaloCluster(Int_t i) const
virtual AliESDCaloTrigger*GetCaloTrigger(TString calo) const
Int_t*GetCaloTriggerType() const
AliESDcascade*GetCascade(Int_t i) const
virtual AliCentrality*GetCentrality()
AliESDCosmicTrack*GetCosmicTrack(Int_t i) const
const TClonesArray*GetCosmicTracks() const
Float_tGetCurrentDip() const
Float_tGetCurrentL3() const
UInt_tGetDAQAttributes() const
UInt_tGetDAQDetectorPattern() const
virtual AliVEvent::EDataLayoutTypeGetDataLayoutType() const
ULong_tGetDetectorStatus() const
virtual voidGetDiamondCovXY(Float_t* cov) const
virtual Double_tGetDiamondX() const
virtual Double_tGetDiamondY() const
Double_tGetDiamondZ() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual AliESDCaloCells*GetEMCALCells() const
virtual Int_tGetEMCALClusters(TRefArray* clusters) const
const TGeoHMatrix*GetEMCALMatrix(Int_t i) const
AliRawDataErrorLog*GetErrorLog(Int_t i) const
voidGetESDfriend(AliESDfriend* f) const
const AliESDRun*GetESDRun() const
TClonesArray*GetESDTOFClusters() const
TClonesArray*GetESDTOFHits() const
TClonesArray*GetESDTOFMatches() const
const AliESDTZERO*GetESDTZERO() const
AliESDZDC*GetESDZDC() const
virtual Int_tGetEventNumberInFile() const
virtual AliEventplane*GetEventplane()
virtual UInt_tGetEventSpecie() const
virtual Float_tGetEventTimeSpread() const
virtual UInt_tGetEventType() const
virtual TStringGetFiredTriggerClasses() const
AliESDFMD*GetFMDData() const
virtual AliESDHeader*GetHeader() const
AliESDHLTtrack*GetHLTConfMapTrack(Int_t) const
AliESDHLTtrack*GetHLTHoughTrack(Int_t) const
TObject*GetHLTTriggerDecision() const
TStringGetHLTTriggerDescription() const
virtual const char*TObject::GetIconName() const
virtual AliESDkink*GetKink(Int_t i) const
virtual TList*GetList() const
virtual Double_tGetMagneticField() const
virtual AliMultiplicity*GetMultiplicity() const
AliESDMuonCluster*GetMuonCluster(Int_t i)
AliESDMuonGlobalTrack*GetMuonGlobalTrack(Int_t i)
AliESDMuonPad*GetMuonPad(Int_t i)
AliESDMuonTrack*GetMuonTrack(Int_t i)
virtual const char*TObject::GetName() const
Int_tGetNTOFclusters() const
virtual Int_tGetNumberOfCaloClusters() const
virtual Int_tGetNumberOfCascades() const
Int_tGetNumberOfCosmicTracks() const
Int_tGetNumberOfErrorLogs() const
virtual Int_tGetNumberOfESDTracks() const
Int_tGetNumberOfHLTConfMapTracks() const
Int_tGetNumberOfHLTHoughTracks() const
virtual Int_tGetNumberOfITSClusters(Int_t lr) const
virtual Int_tGetNumberOfKinks() const
Int_tGetNumberOfMuonClusters()
Int_tGetNumberOfMuonGlobalTracks() const
Int_tGetNumberOfMuonPads()
Int_tGetNumberOfMuonTracks() const
Int_tGetNumberOfPileupVerticesSPD() const
Int_tGetNumberOfPileupVerticesTracks() const
Int_tGetNumberOfPmdTracks() const
virtual Int_tGetNumberOfTracks() const
Int_tGetNumberOfTrdTracklets() const
virtual Int_tGetNumberOfTrdTracks() const
virtual Int_tGetNumberOfV0s() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual UInt_tGetOrbitNumber() const
virtual UInt_tGetPeriodNumber() const
virtual AliESDCaloCells*GetPHOSCells() const
virtual Int_tGetPHOSClusters(TRefArray* clusters) const
const TGeoHMatrix*GetPHOSMatrix(Int_t i) const
const AliESDVertex*GetPileupVertexSPD(Int_t i) const
const AliESDVertex*GetPileupVertexTracks(Int_t i) const
TClonesArray*GetPileupVerticesSPD() const
TClonesArray*GetPileupVerticesTracks() const
AliESDPmdTrack*GetPmdTrack(Int_t i) const
virtual const AliESDVertex*GetPrimaryVertex() const
virtual Int_tGetPrimaryVertex(AliESDVertex& v) const
const AliESDVertex*GetPrimaryVertexSPD() const
virtual Int_tGetPrimaryVertexSPD(AliESDVertex& v) const
const AliESDVertex*GetPrimaryVertexTPC() const
virtual Int_tGetPrimaryVertexTPC(AliESDVertex& v) const
const AliESDVertex*GetPrimaryVertexTracks() const
virtual Int_tGetPrimaryVertexTracks(AliESDVertex& v) const
virtual Int_tGetRunNumber() const
Double_tGetSigma2DiamondX() const
Double_tGetSigma2DiamondY() const
Double_tGetSigma2DiamondZ() const
virtual voidGetStdContent()
Double32_tGetT0() const
const Double32_t*GetT0amplitude() const
Double32_tGetT0clock() const
virtual Float_tGetT0spread(Int_t i) const
const Double32_t*GetT0time() const
virtual const Double32_t*GetT0TOF() const
virtual Double32_tGetT0TOF(Int_t icase) const
Int_tGetT0Trig() const
Double32_tGetT0zVertex() const
virtual UInt_tGetTimeStamp() const
virtual const char*TObject::GetTitle() const
virtual AliTOFHeader*GetTOFHeader() const
virtual Float_tGetTOFTimeResolution() const
virtual AliESDtrack*GetTrack(Int_t i) const
virtual AliESDTrdTrack*GetTrdTrack(Int_t i) const
AliESDTrdTracklet*GetTrdTracklet(Int_t idx) const
AliESDTrdTrigger*GetTrdTrigger() const
virtual UChar_tGetTriggerCluster() const
virtual ULong64_tGetTriggerMask() const
ULong64_tGetTriggerMaskNext50() const
virtual UInt_tTObject::GetUniqueID() const
Bool_tGetUseOwnList() const
AliESDv0*GetV0(Int_t i) const
virtual Int_tGetV0(AliESDv0& v0dum, Int_t i) const
const AliESDVertex*GetVertex() const
virtual AliESDtrack*GetVTrack(Int_t i) const
virtual AliESDVZERO*GetVZEROData() const
virtual const Float_t*GetVZEROEqFactors() const
virtual Float_tGetVZEROEqMultiplicity(Int_t i) const
virtual AliESDZDC*GetZDCData() const
virtual Double_tGetZDCEMEnergy(Int_t i = 0) const
virtual Double_tGetZDCN1Energy() const
virtual Double_tGetZDCN2Energy() const
virtual Double_tGetZDCP1Energy() const
virtual Double_tGetZDCP2Energy() const
Int_tGetZDCParticipants() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual Bool_tInitMagneticField() const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tIsDetectorInTriggerCluster(TString detector, AliTriggerConfiguration* trigConf) const
Bool_tIsDetectorOn(ULong_t detMask) const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tIsEventSelected(const char* trigExpr) const
virtual Bool_tTObject::IsFolder() const
Bool_tIsHLTTriggerFired(const char* name = NULL) const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsPileupFromSPD(Int_t minContributors = 3, Double_t minZdist = 0.8, Double_t nSigmaZdist = 3., Double_t nSigmaDiamXY = 2., Double_t nSigmaDiamZ = 5.) const
virtual Bool_tIsPileupFromSPDInMultBins() const
virtual Bool_tTObject::IsSortable() const
Bool_tIsTriggerClassFired(const char* name) const
Bool_tIsUniformBMap() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
Bool_tMoveMuonObjects()
AliESDMuonCluster*NewMuonCluster()
AliESDMuonGlobalTrack*NewMuonGlobalTrack()
AliESDMuonPad*NewMuonPad()
AliESDMuonTrack*NewMuonTrack()
AliESDtrack*NewTrack()
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliESDEvent&operator=(const AliESDEvent& source)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
AliESDVertex*PrimaryVertexTracksUnconstrained() const
virtual voidPrint(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidReadFromTree(TTree* tree, Option_t* opt = "")
virtual voidTObject::RecursiveRemove(TObject* obj)
Bool_tRemoveKink(Int_t i) const
Bool_tRemoveTrack(Int_t i) const
Bool_tRemoveV0(Int_t i) const
virtual voidReset()
voidTObject::ResetBit(UInt_t f)
voidResetCascades()
voidResetDetectorStatus(ULong_t detMask)
voidResetStdContent()
voidResetV0s()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidSetACORDEData(AliESDACORDE* obj)
voidSetADData(AliESDAD* obj)
voidSetBeamEnergy(Float_t be) const
voidSetBeamParticle(Int_t az, Int_t ibeam)
voidSetBeamType(const char* bt) const
voidSetBInfoStored(Bool_t val = kTRUE) const
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetBunchCrossNumber(UShort_t n)
voidSetCaloTriggerType(const Int_t* type)
voidSetCurrentDip(Float_t cur) const
voidSetCurrentL3(Float_t cur) const
voidSetDAQAttributes(UInt_t attributes)
voidSetDAQDetectorPattern(UInt_t pattern)
voidSetDetectorStatus(ULong_t detMask)
voidSetDiamond(const AliESDVertex* vertex)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEMCALMatrix(TGeoHMatrix* matrix, Int_t i)
voidSetESDfriend(const AliESDfriend* f) const
voidSetEventNumberInFile(Int_t n)
voidSetEventSpecie(UInt_t eventSpecie)
virtual voidSetEventType(UInt_t eventType)
voidSetFMDData(AliESDFMD* obj)
virtual voidSetMagneticField(Double_t mf)
voidSetMultiplicity(const AliMultiplicity* mul)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidSetOrbitNumber(UInt_t n)
virtual voidSetPeriodNumber(UInt_t n)
voidSetPHOSMatrix(TGeoHMatrix* matrix, Int_t i)
voidSetPrimaryVertexSPD(const AliESDVertex* vertex)
voidSetPrimaryVertexTPC(const AliESDVertex* vertex)
voidSetPrimaryVertexTracks(const AliESDVertex* vertex)
virtual voidSetRunNumber(Int_t n)
virtual voidSetStdNames()
voidSetT0(Double32_t timeStart)
voidSetT0amplitude(Double32_t* amp)
voidSetT0clock(Double32_t timeStart)
voidSetT0spread(Float_t* t) const
voidSetT0time(Double32_t* time)
voidSetT0TOF(Int_t icase, Double32_t timeStart)
voidSetT0Trig(Int_t tvdc)
voidSetT0zVertex(Double32_t z)
voidSetTimeStamp(UInt_t timeStamp)
voidSetTOFcluster(Int_t ntofclusters, AliESDTOFCluster* cluster, Int_t* mapping = NULL)
voidSetTOFcluster(Int_t ntofclusters, AliESDTOFCluster** cluster, Int_t* mapping = NULL)
voidSetTOFHeader(const AliTOFHeader* tofEventTime)
voidSetTrdTrigger(const AliESDTrdTrigger* t)
voidSetTriggerClass(const char* name, Int_t index)
virtual voidSetTriggerCluster(UChar_t n)
virtual voidSetTriggerMask(ULong64_t n)
voidSetTriggerMaskNext50(ULong64_t n)
voidSetTZEROData(const AliESDTZERO* obj)
voidSetUniformBMap(Bool_t val = kTRUE) const
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUseOwnList(Bool_t b)
voidSetVZEROData(const AliESDVZERO* obj)
virtual voidSetVZEROEqFactors(Float_t* factors) const
voidSetZDC(Float_t n1Energy, Float_t p1Energy, Float_t em1Energy, Float_t em2Energy, Float_t n2Energy, Float_t p2Energy, Int_t participants, Int_t nPartA, Int_t nPartC, Double_t b, Double_t bA, Double_t bC, UInt_t recoflag)
voidSetZDCData(const AliESDZDC* obj)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
const char*AliVEvent::Whoami()
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual voidWriteToTree(TTree* tree) const
protected:
AliESDEvent(const AliESDEvent&)
voidAddMuonGlobalTrack(const AliESDMuonGlobalTrack* t)
voidAddMuonTrack(const AliESDMuonTrack* t)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
static Bool_tResetWithPlacementNew(TObject* pObject)

Data Members

public:
enum ESDListIndex { kESDRun
kHeader
kESDZDC
kESDFMD
kESDVZERO
kESDTZERO
kTPCVertex
kSPDVertex
kPrimaryVertex
kSPDMult
kPHOSTrigger
kEMCALTrigger
kSPDPileupVertices
kTrkPileupVertices
kTracks
kMuonTracks
kMuonClusters
kMuonPads
kMuonGlobalTracks
kPmdTracks
kTrdTrigger
kTrdTracks
kTrdTracklets
kV0s
kCascades
kKinks
kCaloClusters
kEMCALCells
kPHOSCells
kErrorLogs
kESDACORDE
kESDAD
kTOFHeader
kCosmicTracks
kTOFclusters
kTOFhit
kTOFmatch
kESDListN
};
enum AliVEvent::EDataLayoutType { kESD
kMC
kAOD
kMixed
kFlat
};
enum AliVEvent::EOfflineTriggerTypes { kMB
kINT7
kMUON
kHighMult
kEMC1
kCINT5
kCMUS5
kMUSPB
kMUSH7
kMUSHPB
kMUL7
kMuonLikePB
kMUU7
kMuonUnlikePB
kEMC7
kEMC8
kMUS7
kPHI1
kPHI7
kPHI8
kPHOSPb
kEMCEJE
kEMCEGA
kCentral
kSemiCentral
kDG5
kZED
kSPI7
kSPI
kINT8
kMuonSingleLowPt8
kMuonSingleHighPt8
kMuonLikeLowPt8
kMuonUnlikeLowPt8
kMuonUnlikeLowPt0
kUserDefined
kTRD
kFastOnly
kAny
kAnyINT
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TClonesArray*fCaloClusters! Calorimeter clusters for PHOS/EMCAL
TClonesArray*fCascades! Cascade vertices
AliCentrality*fCentrality! Centrality for AA collision
Bool_tfConnected! flag if leaves are alreday connected
TClonesArray*fCosmicTracks! Tracks created by cosmics finder
UInt_tfDAQAttributesThird word of attributes from DAQ: bit 7 corresponds to HLT decision
UInt_tfDAQDetectorPatternDetector pattern from DAQ: bit 0 is SPD, bit 4 is TPC, etc. See event.h
ULong64_tfDetectorStatusset detector event status bit for good event selection
AliESDCaloCells*fEMCALCells! EMCAL cell info
AliESDCaloTrigger*fEMCALTrigger! PHOS Trigger information
AliESDACORDE*fESDACORDE! ACORDE ESD object caontaining bit pattern
AliESDAD*fESDAD! AD ESD object caontaining bit pattern
AliESDFMD*fESDFMD! FMD object containing rough multiplicity
AliESDfriend*fESDFriendOld! Old friend esd Structure
TList*fESDObjectsList of esd Objects
AliESD*fESDOld! Old esd Structure
AliESDRun*fESDRun! Run information tmp put in the Userdata
TClonesArray*fESDTOFClusters! TOF clusters
TClonesArray*fESDTOFHits! TOF hits (used for clusters)
TClonesArray*fESDTOFMatches! TOF matching info (with the reference to tracks)
AliESDTZERO*fESDTZERO! TZEROObject
AliESDVZERO*fESDVZERO! VZERO object containing rough multiplicity
AliESDZDC*fESDZDC! ZDC information
TClonesArray*fErrorLogs! Raw-data reading error messages
AliEventplane*fEventplane! Event plane for AA collision
AliESDHeader*fHeader! ESD Event Header
TClonesArray*fKinks! Kinks
TClonesArray*fMuonClusters! MUON ESD clusters
TClonesArray*fMuonGlobalTracks! MUON+MFT ESD tracks // AU
TClonesArray*fMuonPads! MUON ESD pads
TClonesArray*fMuonTracks! MUON ESD tracks
Bool_tfOldMuonStructure! Flag if reading ESD with old MUON structure
AliESDCaloCells*fPHOSCells! PHOS cell info
AliESDCaloTrigger*fPHOSTrigger! PHOS Trigger information
TClonesArray*fPmdTracks! PMD ESD tracks
AliESDVertex*fPrimaryVertex! Primary vertex estimated using ESD tracks
AliMultiplicity*fSPDMult! SPD tracklet multiplicity
TClonesArray*fSPDPileupVertices! Pileup primary vertices reconstructed by SPD
AliESDVertex*fSPDVertex! Primary vertex estimated by the SPD
AliTOFHeader*fTOFHeader! event times (and sigmas) as estimated by TOF
AliESDVertex*fTPCVertex! Primary vertex estimated by the TPC
TClonesArray*fTracks! ESD tracks
Bool_tfTracksConnected! flag if tracks have already pointer to event set
TClonesArray*fTrdTracklets! TRD tracklets (for trigger)
TClonesArray*fTrdTracks! TRD ESD tracks (triggered)
AliESDTrdTrigger*fTrdTrigger! TRD trigger information
TClonesArray*fTrkPileupVertices! Pileup primary vertices reconstructed using the tracks
Bool_tfUseOwnList! Do not use the list from the esdTree but use the one created by this class
TClonesArray*fV0s! V0 vertices
static const char*fgkESDListName[37]!

Class Charts

Inheritance Chart:
TObject
AliVEvent
AliESDEvent
AliESDEventMFT

Function documentation

AliESDEvent()
AliESDEvent(const AliESDEvent& )
AliESDEvent & operator=(const AliESDEvent& source)
~AliESDEvent()
 Standard destructor

void Copy(TObject& obj) const
void Reset()
Bool_t ResetWithPlacementNew(TObject* pObject)
 funtion to reset using the already allocated space

void ResetStdContent()
 Reset the standard contents
Int_t AddV0(const AliESDv0* v)
 Add V0

Bool_t IsDetectorInTriggerCluster(TString detector, AliTriggerConfiguration* trigConf) const
 Check if a given detector was read-out in the analyzed event
void Print(Option_t* option = "") const
 Print header information of the event

void SetESDfriend(const AliESDfriend* f) const
 Attaches the complementary info to the ESD

Bool_t RemoveKink(Int_t i) const
 Remove a kink candidate and references to it from ESD,
 if this candidate does not come from a reconstructed decay
 Not yet implemented...

Bool_t RemoveV0(Int_t i) const
 Remove a V0 candidate and references to it from ESD,
 if this candidate does not come from a reconstructed decay

Bool_t RemoveTrack(Int_t i) const
 Remove a track and references to it from ESD,
 if this track does not come from a reconstructed decay

Bool_t Clean(Float_t* cleanPars)
 Remove the data which are not needed for the physics analysis.

 1) Cleaning the V0 candidates

    If the cosine of the V0 pointing angle "csp" and
    the DCA between the daughter tracks "dca" does not satisfy
    the conditions

     csp > cleanPars[1] + dca/cleanPars[0]*(1.- cleanPars[1])

    an attempt to remove this V0 candidate from ESD is made.

    The V0 candidate gets removed if it does not belong to any
    recosntructed cascade decay

    12.11.2007, optimal values: cleanPars[0]=0.5, cleanPars[1]=0.999

 2) Cleaning the tracks

    If track's transverse parameter is larger than cleanPars[2]
                       OR
    track's longitudinal parameter is larger than cleanPars[3]
    an attempt to remove this track from ESD is made.

    The track gets removed if it does not come
    from a reconstructed decay

Char_t AddPileupVertexSPD(const AliESDVertex* vtx)
 Add a pileup primary vertex reconstructed with SPD
Char_t AddPileupVertexTracks(const AliESDVertex* vtx)
 Add a pileup primary vertex reconstructed with SPD
Int_t AddTrack(const AliESDtrack* t)
 Add track
AliESDtrack* NewTrack()
 Add a new track
Bool_t MoveMuonObjects()
 move MUON clusters and pads to the new ESD structure in needed.
 to ensure backward compatibility
AliESDMuonTrack* GetMuonTrack(Int_t i)
 get the MUON track at the position i in the internal array of track
AliESDMuonGlobalTrack* GetMuonGlobalTrack(Int_t i)
 get the MUON+MFT track at the position i in the internal array of track
void AddMuonTrack(const AliESDMuonTrack* t)
 add a MUON track
void AddMuonGlobalTrack(const AliESDMuonGlobalTrack* t)
 add a MUON+MFT track
AliESDMuonTrack* NewMuonTrack()
 create a new MUON track at the end of the internal array of track
AliESDMuonGlobalTrack* NewMuonGlobalTrack()
 create a new MUON+MFT track at the end of the internal array of track
Int_t GetNumberOfMuonClusters()
 get the number of MUON clusters
AliESDMuonCluster* GetMuonCluster(Int_t i)
 get the MUON cluster at the position i in the internal array of cluster
AliESDMuonCluster* FindMuonCluster(UInt_t clusterId)
 find the MUON cluster with this Id in the internal array of cluster
AliESDMuonCluster* NewMuonCluster()
 create a new MUON cluster at the end of the internal array of cluster
Int_t GetNumberOfMuonPads()
 get the number of MUON pads
AliESDMuonPad* GetMuonPad(Int_t i)
 get the MUON pad at the position i in the internal array of pad
AliESDMuonPad* FindMuonPad(UInt_t padId)
 find the MUON pad with this Id in the internal array of pad
AliESDMuonPad* NewMuonPad()
 create a new MUON pad at the end of the internal array of pad
void AddPmdTrack(const AliESDPmdTrack* t)
void SetTrdTrigger(const AliESDTrdTrigger* t)
void AddTrdTrack(const AliESDTrdTrack* t)
void AddTrdTracklet(const AliESDTrdTracklet* trkl)
void AddTrdTracklet(UInt_t trackletWord, Short_t hcid, Int_t label = -1)
Int_t AddKink(const AliESDkink* c)
 Add kink
void AddCascade(const AliESDcascade* c)
void AddCosmicTrack(const AliESDCosmicTrack* t)
Int_t AddCaloCluster(const AliESDCaloCluster* c)
 Add calocluster
void AddRawDataErrorLog(const AliRawDataErrorLog* log) const
void SetZDCData(const AliESDZDC* obj)
 use already allocated space
void SetPrimaryVertexTPC(const AliESDVertex* vertex)
 Set the TPC vertex
 use already allocated space
void SetPrimaryVertexSPD(const AliESDVertex* vertex)
 Set the SPD vertex
 use already allocated space
void SetPrimaryVertexTracks(const AliESDVertex* vertex)
 Set the primary vertex reconstructed using he ESD tracks.
 use already allocated space
const AliESDVertex * GetPrimaryVertex() const
 Get the "best" available reconstructed primary vertex.

AliESDVertex * PrimaryVertexTracksUnconstrained() const
 Removes diamond constraint from fPrimaryVertex (reconstructed with tracks)
 Returns a AliESDVertex which has to be deleted by the user

void SetMultiplicity(const AliMultiplicity* mul)
 Set the SPD Multiplicity
void SetFMDData(AliESDFMD* obj)
 use already allocated space
void SetVZEROData(const AliESDVZERO* obj)
 use already allocated space
void SetTZEROData(const AliESDTZERO* obj)
 use already allocated space
void SetACORDEData(AliESDACORDE* obj)
void SetADData(AliESDAD* obj)
void GetESDfriend(AliESDfriend* f) const
 Extracts the complementary info from the ESD

void AddObject(TObject* obj)
 Add an object to the list of object.
 Please be aware that in order to increase performance you should
 refrain from using TObjArrays (if possible). Use TClonesArrays, instead.
void GetStdContent()
 set pointers for standard content
 get by name much safer and not a big overhead since not called very often
void SetStdNames()
 Set the names of the standard contents

void CreateStdContent(Bool_t bUseThisList)
void CreateStdContent()
 create the standard AOD content and set pointers
void CompleteStdContent()
 Create missing standard objects and add them to the TList of objects

 Add cosmic tracks for cases where esd files were created
 before adding them to the std content
TObject* FindListObject(const char* name) const
 Find object with name "name" in the list of branches

Int_t GetPHOSClusters(TRefArray* clusters) const
 fills the provided TRefArray with all found phos clusters
Int_t GetEMCALClusters(TRefArray* clusters) const
 fills the provided TRefArray with all found emcal clusters
void WriteToTree(TTree* tree) const
 Book the branches as in TTree::Branch(TCollection*)
 but add a "." at the end of top level branches which are
 not a TClonesArray
void ReadFromTree(TTree* tree, Option_t* opt = "")
 Connect the ESDEvent to a tree

void CopyFromOldESD()
 Method which copies over everthing from the old esd structure to the
 new
Bool_t IsEventSelected(const char* trigExpr) const
 Check if the event satisfies the trigger
 selection expression trigExpr.
 trigExpr can be any logical expression
 of the trigger classes defined in AliESDRun
 In case of wrong syntax return kTRUE.
 Modified by rl for 100 classes - to be tested
TObject* GetHLTTriggerDecision() const
 get the HLT trigger decission object
TString GetHLTTriggerDescription() const
 get the HLT trigger decission description
Bool_t IsHLTTriggerFired(const char* name = NULL) const
 get the HLT trigger decission description
Bool_t IsPileupFromSPD(Int_t minContributors = 3, Double_t minZdist = 0.8, Double_t nSigmaZdist = 3., Double_t nSigmaDiamXY = 2., Double_t nSigmaDiamZ = 5.) const
 This function checks if there was a pile up
 reconstructed with SPD

void EstimateMultiplicity(Int_t& tracklets, Int_t& trITSTPC, Int_t& trITSSApure, Double_t eta = 1., Bool_t useDCAFlag = kTRUE, Bool_t useV0Flag = kTRUE) const
 calculates 3 estimators for the multiplicity in the -eta:eta range
 tracklets   : using SPD tracklets only
 trITSTPC    : using TPC/ITS + complementary ITS SA tracks + tracklets from clusters not used by tracks
 trITSSApure : using ITS standalone tracks + tracklets from clusters not used by tracks
 if useDCAFlag is true: account for the ESDtrack flag marking the tracks with large DCA
 if useV0Flag  is true: account for the ESDtrack flag marking conversion and K0's V0s
Bool_t IsPileupFromSPDInMultBins() const
void SetTOFHeader(const AliTOFHeader* tofEventTime)
 Set the TOF event_time

AliCentrality* GetCentrality()
AliEventplane* GetEventplane()
Float_t GetVZEROEqMultiplicity(Int_t i) const
 Get VZERO Multiplicity for channel i
 Themethod uses the equalization factors
 stored in the ESD-run object in order to
 get equal multiplicities within a VZERO rins (1/8 of VZERO)
void SetTOFcluster(Int_t ntofclusters, AliESDTOFCluster* cluster, Int_t* mapping = NULL)
 Reset TClonesArray of TOF clusters
void SetTOFcluster(Int_t ntofclusters, AliESDTOFCluster* cluster, Int_t* mapping = NULL)
 Reset TClonesArray of TOF clusters
void ConnectTracks()
 Connect tracks to this event
AliESDfriend* FindFriend() const
AliVEvent::EDataLayoutType GetDataLayoutType() const
{return AliVEvent::kESD;}
const AliESDRun* GetESDRun() const
 RUN
 move this to the UserData!!!
{return fESDRun;}
void SetRunNumber(Int_t n)
 Delegated methods for fESDRun
Int_t GetRunNumber() const
{return fESDRun?fESDRun->GetRunNumber():-1;}
void SetPeriodNumber(UInt_t n)
UInt_t GetPeriodNumber() const
void SetMagneticField(Double_t mf)
Double_t GetMagneticField() const
void SetDiamond(const AliESDVertex* vertex)
{ if(fESDRun) fESDRun->SetDiamond(vertex);}
Double_t GetDiamondX() const
{return fESDRun?fESDRun->GetDiamondX():0;}
Double_t GetDiamondY() const
{return fESDRun?fESDRun->GetDiamondY():0;}
Double_t GetDiamondZ() const
{return fESDRun?fESDRun->GetDiamondZ():0;}
Double_t GetSigma2DiamondX() const
Double_t GetSigma2DiamondY() const
Double_t GetSigma2DiamondZ() const
void GetDiamondCovXY(Float_t* cov) const
void SetTriggerClass(const char* name, Int_t index)
{if(fESDRun) fESDRun->SetTriggerClass(name,index);}
void SetPHOSMatrix(TGeoHMatrix* matrix, Int_t i)
{if(fESDRun) fESDRun->SetPHOSMatrix(matrix,i);}
const TGeoHMatrix* GetPHOSMatrix(Int_t i) const
{return fESDRun?fESDRun->GetPHOSMatrix(i):0x0;}
void SetEMCALMatrix(TGeoHMatrix* matrix, Int_t i)
{if(fESDRun) fESDRun->SetEMCALMatrix(matrix,i);}
const TGeoHMatrix* GetEMCALMatrix(Int_t i) const
{return fESDRun?fESDRun->GetEMCALMatrix(i):0x0;}
void SetCaloTriggerType(const Int_t* type)
Int_t* GetCaloTriggerType() const
const Float_t* GetVZEROEqFactors() const
void SetCurrentL3(Float_t cur) const
void SetCurrentDip(Float_t cur) const
void SetBeamEnergy(Float_t be) const
void SetBeamType(const char* bt) const
void SetBeamParticle(Int_t az, Int_t ibeam)
{if(fESDRun) fESDRun->SetBeamParticle(az,ibeam);}
void SetUniformBMap(Bool_t val = kTRUE) const
void SetBInfoStored(Bool_t val = kTRUE) const
Float_t GetCurrentL3() const
Float_t GetCurrentDip() const
Float_t GetBeamEnergy() const
const char* GetBeamType() const
{return fESDRun?fESDRun->GetBeamType():0;}
Int_t GetBeamParticle(Int_t ibeam) const
{return fESDRun?fESDRun->GetBeamParticle(ibeam):0;}
Int_t GetBeamParticleA(Int_t ibeam) const
{return fESDRun?fESDRun->GetBeamParticleA(ibeam):0;}
Int_t GetBeamParticleZ(Int_t ibeam) const
{return fESDRun?fESDRun->GetBeamParticleZ(ibeam):0;}
Bool_t IsUniformBMap() const
Bool_t InitMagneticField() const
void SetT0spread(Float_t* t) const
Float_t GetT0spread(Int_t i) const
{return fESDRun?fESDRun->GetT0spread(i):0;}
void SetVZEROEqFactors(Float_t* factors) const
 HEADER
AliESDHeader* GetHeader() const
{return fHeader;}
void SetTriggerMask(ULong64_t n)
 Delegated methods for fHeader
void SetTriggerMaskNext50(ULong64_t n)
void SetOrbitNumber(UInt_t n)
void SetTimeStamp(UInt_t timeStamp)
{if(fHeader) fHeader->SetTimeStamp(timeStamp);}
void SetEventType(UInt_t eventType)
{if(fHeader) fHeader->SetEventType(eventType);}
void SetEventSpecie(UInt_t eventSpecie)
{if(fHeader) fHeader->SetEventSpecie(eventSpecie);}
void SetEventNumberInFile(Int_t n)
  void     SetRunNumber(Int_t n) {if(fHeader) fHeader->SetRunNumber(n);}
void SetBunchCrossNumber(UShort_t n)
void SetTriggerCluster(UChar_t n)
ULong64_t GetTriggerMask() const
ULong64_t GetTriggerMaskNext50() const
TString GetFiredTriggerClasses() const
Bool_t IsTriggerClassFired(const char* name) const
UInt_t GetOrbitNumber() const
UInt_t GetTimeStamp() const
{ return fHeader?fHeader->GetTimeStamp():0;}
UInt_t GetEventType() const
{ return fHeader?fHeader->GetEventType():0;}
UInt_t GetEventSpecie() const
Int_t GetEventNumberInFile() const
UShort_t GetBunchCrossNumber() const
UChar_t GetTriggerCluster() const
AliESDZDC* GetESDZDC() const
 ZDC CKB: put this in the header?
{return fESDZDC;}
AliESDZDC* GetZDCData() const
{return fESDZDC;}
Double_t GetZDCN1Energy() const
 Delegated methods for fESDZDC
Double_t GetZDCP1Energy() const
Double_t GetZDCN2Energy() const
Double_t GetZDCP2Energy() const
Double_t GetZDCEMEnergy(Int_t i = 0) const
Int_t GetZDCParticipants() const
void SetZDC(Float_t n1Energy, Float_t p1Energy, Float_t em1Energy, Float_t em2Energy, Float_t n2Energy, Float_t p2Energy, Int_t participants, Int_t nPartA, Int_t nPartC, Double_t b, Double_t bA, Double_t bC, UInt_t recoflag)
AliESDFMD * GetFMDData() const
{ return fESDFMD; }
const AliESDTZERO* GetESDTZERO() const
 TZERO CKB: put this in the header?
{return fESDTZERO;}
Double32_t GetT0zVertex() const
 delegetated methods for fESDTZERO
void SetT0zVertex(Double32_t z)
Double32_t GetT0() const
{return fESDTZERO?fESDTZERO->GetT0():0;}
void SetT0(Double32_t timeStart)
{if(fESDTZERO) fESDTZERO->SetT0(timeStart);}
Double32_t GetT0clock() const
void SetT0clock(Double32_t timeStart)
{if(fESDTZERO) fESDTZERO->SetT0clock(timeStart);}
Double32_t GetT0TOF(Int_t icase) const
{return fESDTZERO?fESDTZERO->GetT0TOF(icase):0;}
const Double32_t * GetT0TOF() const
{return fESDTZERO?fESDTZERO->GetT0TOF():0x0;}
void SetT0TOF(Int_t icase, Double32_t timeStart)
{if(fESDTZERO) fESDTZERO->SetT0TOF(icase,timeStart);}
const Double32_t * GetT0time() const
{return fESDTZERO?fESDTZERO->GetT0time():0x0;}
void SetT0time(Double32_t* time)
const Double32_t * GetT0amplitude() const
void SetT0amplitude(Double32_t* amp)
Int_t GetT0Trig() const
{ return fESDTZERO?fESDTZERO->GetT0Trig():0;}
void SetT0Trig(Int_t tvdc)
AliESDVZERO * GetVZEROData() const
 VZERO
{ return fESDVZERO; }
AliESDACORDE * GetACORDEData() const
 ACORDE
{ return fESDACORDE;}
AliESDAD * GetADData() const
 AD
{ return fESDAD;}
const AliESDVertex * GetPrimaryVertexTPC() const
{return fTPCVertex;}
const AliESDVertex * GetPrimaryVertexSPD() const
{return fSPDVertex;}
const AliESDVertex * GetVertex() const
For the backward compatibily only
return GetPrimaryVertexSPD()
const AliESDVertex * GetPrimaryVertexTracks() const
{return fPrimaryVertex;}
const AliESDVertex * GetPrimaryVertex() const
Int_t GetPrimaryVertexTPC(AliESDVertex& v) const
Int_t GetPrimaryVertexTracks(AliESDVertex& v) const
AliTOFHeader * GetTOFHeader() const
{return fTOFHeader;}
Float_t GetEventTimeSpread() const
{if (fTOFHeader) return fTOFHeader->GetT0spread(); else return 0.;}
Float_t GetTOFTimeResolution() const
{if (fTOFHeader) return fTOFHeader->GetTOFResolution(); else return 0.;}
TClonesArray * GetESDTOFClusters() const
{return fESDTOFClusters;}
TClonesArray * GetESDTOFHits() const
{return fESDTOFHits;}
TClonesArray * GetESDTOFMatches() const
{return fESDTOFMatches;}
Int_t GetNTOFclusters() const
{return fESDTOFClusters ? fESDTOFClusters->GetEntriesFast() : 0;}
Int_t GetNumberOfITSClusters(Int_t lr) const
AliMultiplicity * GetMultiplicity() const
{return fSPDMult;}
const AliESDVertex * GetPileupVertexSPD(Int_t i) const
const AliESDVertex * GetPileupVertexTracks(Int_t i) const
TClonesArray* GetPileupVerticesTracks() const
{return (TClonesArray*)fTrkPileupVertices;}
TClonesArray* GetPileupVerticesSPD() const
{return (TClonesArray*)fSPDPileupVertices;}
Bool_t AreTracksConnected() const
AliESDtrack * GetTrack(Int_t i) const
{return (fTracks)?(AliESDtrack*)fTracks->At(i) : 0;}
AliESDtrack * GetVTrack(Int_t i) const
{return GetTrack(i);}
AliESDHLTtrack * GetHLTConfMapTrack(Int_t ) const
    return (AliESDHLTtrack *)fHLTConfMapTracks->At(i);
void AddHLTConfMapTrack(const AliESDHLTtrack* )
AliESDHLTtrack * GetHLTHoughTrack(Int_t ) const
    return (AliESDHLTtrack *)fHLTHoughTracks->At(i);
void AddHLTHoughTrack(const AliESDHLTtrack* )
AliESDPmdTrack * GetPmdTrack(Int_t i) const
AliESDTrdTrack * GetTrdTrack(Int_t i) const
AliESDTrdTrigger* GetTrdTrigger() const
AliESDTrdTracklet* GetTrdTracklet(Int_t idx) const
AliESDv0 * GetV0(Int_t i) const
Int_t GetV0(AliESDv0& v0dum, Int_t i) const
AliESDcascade * GetCascade(Int_t i) const
AliESDkink * GetKink(Int_t i) const
AliESDCaloCluster * GetCaloCluster(Int_t i) const
AliESDCaloCells * GetEMCALCells() const
{return fEMCALCells; }
AliESDCaloCells * GetPHOSCells() const
{return fPHOSCells; }
AliESDCaloTrigger* GetCaloTrigger(TString calo) const
AliESDCosmicTrack * GetCosmicTrack(Int_t i) const
const TClonesArray * GetCosmicTracks() const
{ return fCosmicTracks;}
AliRawDataErrorLog * GetErrorLog(Int_t i) const
Int_t GetNumberOfErrorLogs() const
{return fErrorLogs?fErrorLogs->GetEntriesFast():0;}
Int_t GetNumberOfPileupVerticesSPD() const
Int_t GetNumberOfPileupVerticesTracks() const
Int_t GetNumberOfTracks() const
{return fTracks?fTracks->GetEntriesFast():0;}
Int_t GetNumberOfESDTracks() const
{ return GetNumberOfTracks(); }
Int_t GetNumberOfHLTConfMapTracks() const
 fHLTConfMapTracks->GetEntriesFast();}
{return 0;}
Int_t GetNumberOfHLTHoughTracks() const
  fHLTHoughTracks->GetEntriesFast();  }
{return 0; }
Int_t GetNumberOfMuonTracks() const
{return fMuonTracks?fMuonTracks->GetEntriesFast():0;}
Int_t GetNumberOfMuonGlobalTracks() const
{return fMuonGlobalTracks?fMuonGlobalTracks->GetEntriesFast():0;}
Int_t GetNumberOfPmdTracks() const
{return fPmdTracks?fPmdTracks->GetEntriesFast():0;}
Int_t GetNumberOfTrdTracks() const
{return fTrdTracks?fTrdTracks->GetEntriesFast():0;}
Int_t GetNumberOfTrdTracklets() const
{return fTrdTracklets?fTrdTracklets->GetEntriesFast():0;}
Int_t GetNumberOfV0s() const
{return fV0s?fV0s->GetEntriesFast():0;}
Int_t GetNumberOfCascades() const
{return fCascades?fCascades->GetEntriesFast():0;}
Int_t GetNumberOfKinks() const
{return fKinks?fKinks->GetEntriesFast():0;}
Int_t GetNumberOfCosmicTracks() const
{return fCosmicTracks ? fCosmicTracks->GetEntriesFast():0;}
Int_t GetNumberOfCaloClusters() const
{return fCaloClusters?fCaloClusters->GetEntriesFast():0;}
void SetUseOwnList(Bool_t b)
Bool_t GetUseOwnList() const
{return fUseOwnList;}
void ResetV0s()
{ if(fV0s) fV0s->Clear(); }
void ResetCascades()
AliESD * GetAliESDOld()
{return fESDOld;}
TList* GetList() const
{return fESDObjects;}
Int_t EventIndex(Int_t ) const
Following needed only for mixed event
{return 0;}
Int_t EventIndexForCaloCluster(Int_t ) const
{return 0;}
Int_t EventIndexForPHOSCell(Int_t ) const
{return 0;}
Int_t EventIndexForEMCALCell(Int_t ) const
{return 0;}
void SetDetectorStatus(ULong_t detMask)
{fDetectorStatus|=detMask;}
void ResetDetectorStatus(ULong_t detMask)
{fDetectorStatus&=~detMask;}
ULong_t GetDetectorStatus() const
{return fDetectorStatus;}
Bool_t IsDetectorOn(ULong_t detMask) const
{return (fDetectorStatus&detMask)>0;}
void SetDAQDetectorPattern(UInt_t pattern)
{fDAQDetectorPattern = pattern;}
void SetDAQAttributes(UInt_t attributes)
{fDAQAttributes = attributes;}
UInt_t GetDAQDetectorPattern() const
UInt_t GetDAQAttributes() const
{return fDAQAttributes;}