* See cxx source for full Copyright notice */
-/* $Id$ */
+/* $Id: AliESDEvent.h 64008 2013-08-28 13:09:59Z hristov $ */
//-------------------------------------------------------------------------
// Class AliESDEvent
#include <TObject.h>
#include <TTree.h>
#include <TArrayF.h>
+#include <TObjArray.h>
#include "AliVEvent.h"
#include "AliESDTZERO.h"
#include "AliESDZDC.h"
#include "AliESDACORDE.h"
+#include "AliESDAD.h"
+#include "AliMultiplicity.h"
// AliESDtrack has to be included so that the compiler
// knows its inheritance tree (= that it is a AliVParticle).
#include "AliESDCaloCluster.h"
#include "AliESDCaloCells.h"
-#include "AliTOFHeader.h"
-
#include "AliESDVZERO.h"
-#ifdef MFT_UPGRADE
-//#include "AliESDMFT.h"
-#endif
+#include "AliESDTrdTrack.h"
+#include "AliESDTOFCluster.h"
+#include "AliESDTOFHit.h"
+#include "AliESDTOFMatch.h"
+#include "AliESDv0.h"
+#include "AliESDkink.h"
+#include "AliESDfriend.h"
-class AliESDfriend;
class AliESDHLTtrack;
class AliESDVertex;
class AliESDPmdTrack;
class AliESDFMD;
-class AliESDkink;
-class AliESDv0;
-class AliMultiplicity;
class AliRawDataErrorLog;
class AliESDRun;
class AliESDTrdTrigger;
-class AliESDTrdTrack;
class AliESDTrdTracklet;
class AliESDMuonTrack;
+class AliESDMuonCluster;
+class AliESDMuonPad;
+class AliESDMuonGlobalTrack; // AU
class AliESD;
class AliESDcascade;
class AliCentrality;
class AliEventplane;
class TRefArray;
class AliESDACORDE;
+class AliESDAD;
class AliESDHLTDecision;
+class AliESDCosmicTrack;
class TList;
class TString;
kTrkPileupVertices,
kTracks,
kMuonTracks,
+ kMuonClusters,
+ kMuonPads,
+ kMuonGlobalTracks, // AU
kPmdTracks,
kTrdTrigger,
kTrdTracks,
kPHOSCells,
kErrorLogs,
kESDACORDE,
+ kESDAD,
kTOFHeader,
+ kCosmicTracks,
+ kTOFclusters,
+ kTOFhit,
+ kTOFmatch,
kESDListN
- #ifdef MFT_UPGRADE
- // , kESDMFT
- #endif
};
AliESDEvent();
const TGeoHMatrix* GetEMCALMatrix(Int_t i) const {return fESDRun?fESDRun->GetEMCALMatrix(i):0x0;}
void SetCaloTriggerType(const Int_t* type) {if (fESDRun) fESDRun->SetCaloTriggerType(type);}
Int_t* GetCaloTriggerType() const {return fESDRun?fESDRun->GetCaloTriggerType():0x0;}
- const Float_t* GetVZEROEqFactors() const {return fESDRun?fESDRun->GetVZEROEqFactors():0x0;}
- Float_t GetVZEROEqMultiplicity(Int_t i) const;
+ virtual const Float_t* GetVZEROEqFactors() const {return fESDRun?fESDRun->GetVZEROEqFactors():0x0;}
+ virtual Float_t GetVZEROEqMultiplicity(Int_t i) const;
//
void SetCurrentL3(Float_t cur) const {if(fESDRun) fESDRun->SetCurrentL3(cur);}
void SetCurrentDip(Float_t cur) const {if(fESDRun) fESDRun->SetCurrentDip(cur);}
void SetBeamEnergy(Float_t be) const {if(fESDRun) fESDRun->SetBeamEnergy(be);}
void SetBeamType(const char* bt) const {if(fESDRun) fESDRun->SetBeamType(bt);}
+ void SetBeamParticle(Int_t az, Int_t ibeam) {if(fESDRun) fESDRun->SetBeamParticle(az,ibeam);}
void SetUniformBMap(Bool_t val=kTRUE) const {if(fESDRun) fESDRun->SetBit(AliESDRun::kUniformBMap,val);}
void SetBInfoStored(Bool_t val=kTRUE) const {if(fESDRun) fESDRun->SetBit(AliESDRun::kBInfoStored,val);}
//
Float_t GetCurrentDip() const {return fESDRun?fESDRun->GetCurrentDip():0;}
Float_t GetBeamEnergy() const {return fESDRun?fESDRun->GetBeamEnergy():0;}
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 {return fESDRun?fESDRun->TestBit(AliESDRun::kUniformBMap):kFALSE;}
//
- Bool_t InitMagneticField() const {return fESDRun?fESDRun->InitMagneticField():kFALSE;}
- void SetT0spread(Float_t *t) const {if(fESDRun) fESDRun->SetT0spread(t);}
- void SetVZEROEqFactors(Float_t factors[64]) const {if(fESDRun) fESDRun->SetVZEROEqFactors(factors);}
+ virtual Bool_t InitMagneticField() const {return fESDRun?fESDRun->InitMagneticField():kFALSE;}
+ void SetT0spread(Float_t *t) const {if(fESDRun) fESDRun->SetT0spread(t);}
+ Float_t GetT0spread(Int_t i) const {return fESDRun?fESDRun->GetT0spread(i):0;}
+ virtual void SetVZEROEqFactors(Float_t factors[64]) const {if(fESDRun) fESDRun->SetVZEROEqFactors(factors);}
// HEADER
AliESDHeader* GetHeader() const {return fHeader;}
// Delegated methods for fHeader
void SetTriggerMask(ULong64_t n) {if(fHeader) fHeader->SetTriggerMask(n);}
+ void SetTriggerMaskNext50(ULong64_t n) {if(fHeader) fHeader->SetTriggerMaskNext50(n);}
void SetOrbitNumber(UInt_t n) {if(fHeader) fHeader->SetOrbitNumber(n);}
void SetTimeStamp(UInt_t timeStamp){if(fHeader) fHeader->SetTimeStamp(timeStamp);}
void SetEventType(UInt_t eventType){if(fHeader) fHeader->SetEventType(eventType);}
void SetTriggerCluster(UChar_t n) {if(fHeader) fHeader->SetTriggerCluster(n);}
ULong64_t GetTriggerMask() const {return fHeader?fHeader->GetTriggerMask():0;}
- TString GetFiredTriggerClasses() const {return (fESDRun&&fHeader)?fESDRun->GetFiredTriggerClasses(fHeader->GetTriggerMask()):"";}
- Bool_t IsTriggerClassFired(const char *name) const {return (fESDRun&&fHeader)?fESDRun->IsTriggerClassFired(fHeader->GetTriggerMask(),name):kFALSE;}
+ ULong64_t GetTriggerMaskNext50() const {return fHeader?fHeader->GetTriggerMaskNext50():0;}
+ //TString GetFiredTriggerClasses() const {return (fESDRun&&fHeader)?fESDRun->GetFiredTriggerClasses(fHeader->GetTriggerMask()):"";}
+ TString GetFiredTriggerClasses() const {return (fESDRun&&fHeader)?fESDRun->GetFiredTriggerClasses(fHeader->GetTriggerMask(),fHeader->GetTriggerMaskNext50()):"";}
+ //Bool_t IsTriggerClassFired(const char *name) const {return (fESDRun&&fHeader)?fESDRun->IsTriggerClassFired(fHeader->GetTriggerMask(),name):kFALSE;}
+ Bool_t IsTriggerClassFired(const char *name) const {return (fESDRun&&fHeader)?fESDRun->IsTriggerClassFired(fHeader->GetTriggerMask(),fHeader->GetTriggerMaskNext50(),name):kFALSE;}
Bool_t IsEventSelected(const char *trigExpr) const;
TObject* GetHLTTriggerDecision() const;
TString GetHLTTriggerDescription() const;
Int_t GetEventNumberInFile() const {return fHeader?fHeader->GetEventNumberInFile():-1;}
UShort_t GetBunchCrossNumber() const {return fHeader?fHeader->GetBunchCrossNumber():0;}
UChar_t GetTriggerCluster() const {return fHeader?fHeader->GetTriggerCluster():0;}
-
+ Bool_t IsDetectorInTriggerCluster(TString detector, AliTriggerConfiguration* trigConf) const;
// ZDC CKB: put this in the header?
AliESDZDC* GetESDZDC() const {return fESDZDC;}
AliESDZDC* GetZDCData() const {return fESDZDC;}
- void SetZDCData(AliESDZDC * obj);
+ void SetZDCData(const AliESDZDC * obj);
// Delegated methods for fESDZDC
Double_t GetZDCN1Energy() const {return fESDZDC?fESDZDC->GetZDCN1Energy():0;}
// TZERO CKB: put this in the header?
const AliESDTZERO* GetESDTZERO() const {return fESDTZERO;}
- void SetTZEROData(AliESDTZERO * obj);
+ void SetTZEROData(const AliESDTZERO * obj);
// delegetated methods for fESDTZERO
Double32_t GetT0zVertex() const {return fESDTZERO?fESDTZERO->GetT0zVertex():0;}
// VZERO
AliESDVZERO *GetVZEROData() const { return fESDVZERO; }
- void SetVZEROData(AliESDVZERO * obj);
-
- #ifdef MFT_UPGRADE
- // MFT
-// AliESDMFT *GetMFTData() const { return fESDMFT; }
-// void SetMFTData(AliESDMFT * obj);
- #endif
+ void SetVZEROData(const AliESDVZERO * obj);
// ACORDE
AliESDACORDE *GetACORDEData() const { return fESDACORDE;}
void SetACORDEData(AliESDACORDE * obj);
- void SetESDfriend(const AliESDfriend *f) const;
- void GetESDfriend(AliESDfriend *f) const;
+ // AD
+ AliESDAD *GetADData() const { return fESDAD;}
+ void SetADData(AliESDAD * obj);
+
+ void SetESDfriend(const AliESDfriend *f) const;
+ void GetESDfriend(AliESDfriend *f) const;
+ virtual AliESDfriend* FindFriend() const;
+
void SetPrimaryVertexTPC(const AliESDVertex *vertex);
const AliESDVertex *GetPrimaryVertexTPC() const {return fTPCVertex;}
const AliESDVertex *GetPrimaryVertex() const;
+ //getters for calibration
+ Int_t GetPrimaryVertex (AliESDVertex &v) const {
+ if(!GetPrimaryVertex()) return -1;
+ v=*GetPrimaryVertex();
+ return 0;
+ }
+
+ Int_t GetPrimaryVertexTPC (AliESDVertex &v) const {
+ if(!GetPrimaryVertexTPC()) return -1;
+ v=*GetPrimaryVertexTPC();
+ return 0;
+ }
+
+ Int_t GetPrimaryVertexSPD (AliESDVertex &v) const {
+ if(!GetPrimaryVertexSPD()) return -1;
+ v=*GetPrimaryVertexSPD();
+ return 0;
+ }
+
+ Int_t GetPrimaryVertexTracks (AliESDVertex &v) const {
+ if(!GetPrimaryVertexTracks()) return -1;
+ v=*GetPrimaryVertexTracks();
+ return 0;
+ }
void SetTOFHeader(const AliTOFHeader * tofEventTime);
- const AliTOFHeader *GetTOFHeader() const {return fTOFHeader;}
+ 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;}
+
+ void SetTOFcluster(Int_t ntofclusters,AliESDTOFCluster *cluster,Int_t *mapping=NULL);
+ void SetTOFcluster(Int_t ntofclusters,AliESDTOFCluster *cluster[],Int_t *mapping=NULL);
+ Int_t GetNTOFclusters() const {return fESDTOFClusters ? fESDTOFClusters->GetEntriesFast() : 0;}
+ Int_t GetNumberOfITSClusters(Int_t lr) const {return fSPDMult ? fSPDMult->GetNumberOfITSClusters(lr) : 0;}
void SetMultiplicity(const AliMultiplicity *mul);
- const AliMultiplicity *GetMultiplicity() const {return fSPDMult;}
+ AliMultiplicity *GetMultiplicity() const {return fSPDMult;}
void EstimateMultiplicity(Int_t &tracklets,Int_t &trITSTPC,Int_t &trITSSApure,
Double_t eta=1.,Bool_t useDCAFlag=kTRUE,Bool_t useV0Flag=kTRUE) const;
Bool_t RemoveTrack(Int_t i) const;
const AliESDVertex *GetPileupVertexSPD(Int_t i) const {
- return (const AliESDVertex *)(fSPDPileupVertices?fSPDPileupVertices->UncheckedAt(i):0x0);
+ return (const AliESDVertex *)(fSPDPileupVertices?fSPDPileupVertices->At(i):0x0);
}
Char_t AddPileupVertexSPD(const AliESDVertex *vtx);
const AliESDVertex *GetPileupVertexTracks(Int_t i) const {
- return (const AliESDVertex *)(fTrkPileupVertices?fTrkPileupVertices->UncheckedAt(i):0x0);
+ return (const AliESDVertex *)(fTrkPileupVertices?fTrkPileupVertices->At(i):0x0);
}
Char_t AddPileupVertexTracks(const AliESDVertex *vtx);
TClonesArray* GetPileupVerticesTracks() const {return (TClonesArray*)fTrkPileupVertices;}
virtual Bool_t IsPileupFromSPDInMultBins() const;
- AliESDtrack *GetTrack(Int_t i) const {
- return (AliESDtrack *)(fTracks?fTracks->UncheckedAt(i):0x0);
- }
+ void ConnectTracks();
+ Bool_t AreTracksConnected() const {return fTracksConnected;}
+
+ AliESDtrack *GetTrack(Int_t i) const {return (fTracks)?(AliESDtrack*)fTracks->At(i) : 0;}
Int_t AddTrack(const AliESDtrack *t);
/// add new track at the end of tracks array and return instance
AliESDtrack* NewTrack();
AliESDHLTtrack *GetHLTConfMapTrack(Int_t /*i*/) const {
- // return (AliESDHLTtrack *)fHLTConfMapTracks->UncheckedAt(i);
+ // return (AliESDHLTtrack *)fHLTConfMapTracks->At(i);
return 0;
}
void AddHLTConfMapTrack(const AliESDHLTtrack */*t*/) {
AliESDHLTtrack *GetHLTHoughTrack(Int_t /*i*/) const {
- // return (AliESDHLTtrack *)fHLTHoughTracks->UncheckedAt(i);
+ // return (AliESDHLTtrack *)fHLTHoughTracks->At(i);
return 0;
}
void AddHLTHoughTrack(const AliESDHLTtrack */*t*/) {
// new(fhlt[fHLTHoughTracks->GetEntriesFast()]) AliESDHLTtrack(*t);
}
- AliESDMuonTrack *GetMuonTrack(Int_t i) const {
- return (AliESDMuonTrack *)(fMuonTracks?fMuonTracks->UncheckedAt(i):0x0);
- }
-
- void AddMuonTrack(const AliESDMuonTrack *t);
-
+ Bool_t MoveMuonObjects();
+
+ AliESDMuonTrack* GetMuonTrack(Int_t i);
+ AliESDMuonTrack* NewMuonTrack();
+
+ AliESDMuonCluster* GetMuonCluster(Int_t i);
+ AliESDMuonCluster* FindMuonCluster(UInt_t clusterId);
+ AliESDMuonCluster* NewMuonCluster();
+
+ AliESDMuonPad* GetMuonPad(Int_t i);
+ AliESDMuonPad* FindMuonPad(UInt_t padId);
+ AliESDMuonPad* NewMuonPad();
+
+ AliESDMuonGlobalTrack* GetMuonGlobalTrack(Int_t i); // AU
+ AliESDMuonGlobalTrack* NewMuonGlobalTrack(); // AU
+
AliESDPmdTrack *GetPmdTrack(Int_t i) const {
- return (AliESDPmdTrack *)(fPmdTracks?fPmdTracks->UncheckedAt(i):0x0);
+ return (AliESDPmdTrack *)(fPmdTracks?fPmdTracks->At(i):0x0);
}
void AddPmdTrack(const AliESDPmdTrack *t);
AliESDTrdTrack *GetTrdTrack(Int_t i) const {
- return (AliESDTrdTrack *)(fTrdTracks?fTrdTracks->UncheckedAt(i):0x0);
+ return (AliESDTrdTrack *)(fTrdTracks?fTrdTracks->At(i):0x0);
}
void AddTrdTrack(const AliESDTrdTrack *t);
AliESDTrdTracklet* GetTrdTracklet(Int_t idx) const {
- return (AliESDTrdTracklet*)(fTrdTracklets?fTrdTracklets->UncheckedAt(idx):0x0);
+ return (AliESDTrdTracklet*)(fTrdTracklets?fTrdTracklets->At(idx):0x0);
}
void AddTrdTracklet(const AliESDTrdTracklet *trkl);
+ void AddTrdTracklet(UInt_t trackletWord, Short_t hcid, Int_t label = -1);
+ using AliVEvent::GetV0;
AliESDv0 *GetV0(Int_t i) const {
- return (AliESDv0*)(fV0s?fV0s->UncheckedAt(i):0x0);
+ return (AliESDv0*)(fV0s?fV0s->At(i):0x0);
}
Int_t AddV0(const AliESDv0 *v);
AliESDcascade *GetCascade(Int_t i) const {
- return (AliESDcascade *)(fCascades?fCascades->UncheckedAt(i):0x0);
+ return (AliESDcascade *)(fCascades?fCascades->At(i):0x0);
}
void AddCascade(const AliESDcascade *c);
AliESDkink *GetKink(Int_t i) const {
- return (AliESDkink *)(fKinks?fKinks->UncheckedAt(i):0x0);
+ return (AliESDkink *)(fKinks?fKinks->At(i):0x0);
}
Int_t AddKink(const AliESDkink *c);
AliESDCaloCluster *GetCaloCluster(Int_t i) const {
- return (AliESDCaloCluster *)(fCaloClusters?fCaloClusters->UncheckedAt(i):0x0);
+ return (AliESDCaloCluster *)(fCaloClusters?fCaloClusters->At(i):0x0);
}
Int_t AddCaloCluster(const AliESDCaloCluster *c);
else
return fPHOSTrigger;
}
+
+ AliESDCosmicTrack *GetCosmicTrack(Int_t i) const {
+ return fCosmicTracks ? (AliESDCosmicTrack*) fCosmicTracks->At(i) : 0;
+ }
+ const TClonesArray * GetCosmicTracks() const{ return fCosmicTracks;}
+
+ void AddCosmicTrack(const AliESDCosmicTrack *t);
AliRawDataErrorLog *GetErrorLog(Int_t i) const {
- return (AliRawDataErrorLog *)(fErrorLogs?fErrorLogs->UncheckedAt(i):0x0);
+ return (AliRawDataErrorLog *)(fErrorLogs?fErrorLogs->At(i):0x0);
}
void AddRawDataErrorLog(const AliRawDataErrorLog *log) const;
return (fTrkPileupVertices?fTrkPileupVertices->GetEntriesFast():0);
}
Int_t GetNumberOfTracks() const {return fTracks?fTracks->GetEntriesFast():0;}
+ Int_t GetNumberOfESDTracks() const { return GetNumberOfTracks(); }
Int_t GetNumberOfHLTConfMapTracks() const {return 0;}
// fHLTConfMapTracks->GetEntriesFast();}
Int_t GetNumberOfHLTHoughTracks() const {return 0; }
// fHLTHoughTracks->GetEntriesFast(); }
Int_t GetNumberOfMuonTracks() const {return fMuonTracks?fMuonTracks->GetEntriesFast():0;}
+ Int_t GetNumberOfMuonClusters();
+ Int_t GetNumberOfMuonPads();
+ Int_t GetNumberOfMuonGlobalTracks() const {return fMuonGlobalTracks?fMuonGlobalTracks->GetEntriesFast():0;} // AU
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 GetEMCALClusters(TRefArray *clusters) const;
Int_t GetPHOSClusters(TRefArray *clusters) const;
Int_t GetNumberOfCaloClusters() const {return fCaloClusters?fCaloClusters->GetEntriesFast():0;}
void ResetStdContent();
void CreateStdContent();
void CreateStdContent(Bool_t bUseThisList);
+ void CompleteStdContent();
void SetStdNames();
void CopyFromOldESD();
TList* GetList() const {return fESDObjects;}
virtual Int_t EventIndexForPHOSCell(Int_t) const {return 0;}
virtual 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 {return fDAQDetectorPattern;}
+ UInt_t GetDAQAttributes() const {return fDAQAttributes;}
+
+ virtual AliVEvent::EDataLayoutType GetDataLayoutType() const;
protected:
AliESDEvent(const AliESDEvent&);
static Bool_t ResetWithPlacementNew(TObject *pObject);
+ void AddMuonTrack(const AliESDMuonTrack *t);
+ void AddMuonGlobalTrack(const AliESDMuonGlobalTrack *t); // AU
+
TList *fESDObjects; // List of esd Objects
AliESDRun *fESDRun; //! Run information tmp put in the Userdata
AliESDCaloTrigger* fPHOSTrigger; //! PHOS Trigger information
AliESDCaloTrigger* fEMCALTrigger; //! PHOS Trigger information
AliESDACORDE *fESDACORDE; //! ACORDE ESD object caontaining bit pattern
+ AliESDAD *fESDAD; //! AD ESD object caontaining bit pattern
AliESDTrdTrigger *fTrdTrigger; //! TRD trigger information
TClonesArray *fSPDPileupVertices;//! Pileup primary vertices reconstructed by SPD
TClonesArray *fTrkPileupVertices;//! Pileup primary vertices reconstructed using the tracks
TClonesArray *fTracks; //! ESD tracks
TClonesArray *fMuonTracks; //! MUON ESD tracks
+ TClonesArray *fMuonClusters; //! MUON ESD clusters
+ TClonesArray *fMuonPads; //! MUON ESD pads
+ TClonesArray *fMuonGlobalTracks; //! MUON+MFT ESD tracks // AU
TClonesArray *fPmdTracks; //! PMD ESD tracks
TClonesArray *fTrdTracks; //! TRD ESD tracks (triggered)
TClonesArray *fTrdTracklets; //! TRD tracklets (for trigger)
TClonesArray *fCaloClusters; //! Calorimeter clusters for PHOS/EMCAL
AliESDCaloCells *fEMCALCells; //! EMCAL cell info
AliESDCaloCells *fPHOSCells; //! PHOS cell info
+ TClonesArray *fCosmicTracks; //! Tracks created by cosmics finder
+ TClonesArray *fESDTOFClusters; //! TOF clusters
+ TClonesArray *fESDTOFHits; //! TOF hits (used for clusters)
+ TClonesArray *fESDTOFMatches; //! TOF matching info (with the reference to tracks)
TClonesArray *fErrorLogs; //! Raw-data reading error messages
-
+ Bool_t fOldMuonStructure; //! Flag if reading ESD with old MUON structure
AliESD *fESDOld; //! Old esd Structure
AliESDfriend *fESDFriendOld; //! Old friend esd Structure
Bool_t fConnected; //! flag if leaves are alreday connected
Bool_t fUseOwnList; //! Do not use the list from the esdTree but use the one created by this class
+ Bool_t fTracksConnected; //! flag if tracks have already pointer to event set
static const char* fgkESDListName[kESDListN]; //!
// and T0spread as written in OCDB
AliCentrality *fCentrality; //! Centrality for AA collision
AliEventplane *fEventplane; //! Event plane for AA collision
- ClassDef(AliESDEvent,15) //ESDEvent class
+
+ ULong64_t fDetectorStatus; // set detector event status bit for good event selection
+ UInt_t fDAQDetectorPattern; // Detector pattern from DAQ: bit 0 is SPD, bit 4 is TPC, etc. See event.h
+ UInt_t fDAQAttributes; // Third word of attributes from DAQ: bit 7 corresponds to HLT decision
+
+ ClassDef(AliESDEvent,23) //ESDEvent class
};
#endif