X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;ds=sidebyside;f=STEER%2FESD%2FAliESDEvent.h;h=dc8e5e742fc6e31c9aba297f54247a50d541e75a;hb=ea12701f2f35e3e60c95a672542f2de4ada91bc3;hp=d3c756f13868ca5aa742347737c894fcc43ce2e9;hpb=1dc767cff5d8138ee4eb310fbe0368a724ae1b78;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/ESD/AliESDEvent.h b/STEER/ESD/AliESDEvent.h index d3c756f1386..dc8e5e742fc 100644 --- a/STEER/ESD/AliESDEvent.h +++ b/STEER/ESD/AliESDEvent.h @@ -5,7 +5,7 @@ * See cxx source for full Copyright notice */ -/* $Id$ */ +/* $Id: AliESDEvent.h 64008 2013-08-28 13:09:59Z hristov $ */ //------------------------------------------------------------------------- // Class AliESDEvent @@ -19,6 +19,7 @@ #include #include #include +#include #include "AliVEvent.h" @@ -29,6 +30,8 @@ #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). @@ -39,34 +42,36 @@ #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; @@ -92,6 +97,9 @@ public: kTrkPileupVertices, kTracks, kMuonTracks, + kMuonClusters, + kMuonPads, + kMuonGlobalTracks, // AU kPmdTracks, kTrdTrigger, kTrdTracks, @@ -104,11 +112,13 @@ public: kPHOSCells, kErrorLogs, kESDACORDE, + kESDAD, kTOFHeader, + kCosmicTracks, + kTOFclusters, + kTOFhit, + kTOFmatch, kESDListN - #ifdef MFT_UPGRADE - // , kESDMFT - #endif }; AliESDEvent(); @@ -145,14 +155,15 @@ public: 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);} // @@ -160,16 +171,21 @@ public: 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);} @@ -180,8 +196,11 @@ public: 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; @@ -193,12 +212,12 @@ public: 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;} @@ -223,7 +242,7 @@ public: // 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;} @@ -244,23 +263,23 @@ public: // 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;} @@ -277,17 +296,49 @@ public: 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; @@ -297,11 +348,11 @@ public: 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;} @@ -315,16 +366,17 @@ public: 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*/) { @@ -335,7 +387,7 @@ public: AliESDHLTtrack *GetHLTHoughTrack(Int_t /*i*/) const { - // return (AliESDHLTtrack *)fHLTHoughTracks->UncheckedAt(i); + // return (AliESDHLTtrack *)fHLTHoughTracks->At(i); return 0; } void AddHLTHoughTrack(const AliESDHLTtrack */*t*/) { @@ -344,21 +396,31 @@ public: // 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); } @@ -371,29 +433,31 @@ public: 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); @@ -407,9 +471,16 @@ public: 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; @@ -422,19 +493,24 @@ public: 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;} @@ -457,6 +533,7 @@ public: void ResetStdContent(); void CreateStdContent(); void CreateStdContent(Bool_t bUseThisList); + void CompleteStdContent(); void SetStdNames(); void CopyFromOldESD(); TList* GetList() const {return fESDObjects;} @@ -467,11 +544,25 @@ public: 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 @@ -487,12 +578,16 @@ protected: 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) @@ -502,14 +597,19 @@ protected: 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]; //! @@ -519,7 +619,12 @@ protected: // 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