#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).
class AliESDVertex;
class AliESDPmdTrack;
class AliESDFMD;
-class AliMultiplicity;
class AliRawDataErrorLog;
class AliESDRun;
class AliESDTrdTrigger;
void SetESDfriend(const AliESDfriend *f) const;
void GetESDfriend(AliESDfriend *f) const;
- AliESDfriend* FindFriend() const { return static_cast<AliESDfriend*>(FindListObject("AliESDfriend")); }
+ 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);
TClonesArray *GetESDTOFClusters() const {return fESDTOFClusters;}
TClonesArray *GetESDTOFHits() const {return fESDTOFHits;}
- TClonesArray *GetESDTOFMatches() const {return fESDTOFMatchess;}
+ 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;
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->At(i):0x0);
}
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);
TClonesArray *fCosmicTracks; //! Tracks created by cosmics finder
TClonesArray *fESDTOFClusters; //! TOF clusters
TClonesArray *fESDTOFHits; //! TOF hits (used for clusters)
- TClonesArray *fESDTOFMatchess; //! TOF matching info (with the reference to tracks)
+ 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
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,22) //ESDEvent class
+ ClassDef(AliESDEvent,23) //ESDEvent class
};
#endif