X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=STEER%2FAliESD.h;h=79eb40f250dee847a29d4d15a9fe7faec97493a1;hp=e722c6ef6ebbcc7c7253d0aa20f07287c249be7d;hb=ae982df3e3b23bbc486c5de907906956cf6ddf5b;hpb=8a8d023f951db8ada0207c8c0e117d2b76ccedc2 diff --git a/STEER/AliESD.h b/STEER/AliESD.h index e722c6ef6eb..79eb40f250d 100644 --- a/STEER/AliESD.h +++ b/STEER/AliESD.h @@ -1,145 +1,58 @@ -#ifndef ALIESD_H -#define ALIESD_H +#ifndef ALIESDEVENT_H +#define ALIESDEVENT_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ -/* $Id$ */ +//------------------------------------------------------------------------- +// Class AliESD +// This is the class to deal with during the physical analysis of data +// +// Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch +//------------------------------------------------------------------------- -/////////////////////////////////////////////////////////////////////////////// -// // -// Alice ESD object // -// // -/////////////////////////////////////////////////////////////////////////////// +#include "TObject.h" +#include "TClonesArray.h" +#include "AliESDtrack.h" -#include "TObjArray.h" -#include "TArrayI.h" -#include "TArrayF.h" -#include "TArrayD.h" - -class AliESDTrack -{ +class AliESD : public TObject { public: - AliESDTrack(); - virtual ~AliESDTrack() {} - -protected: - Int_t fTrackID; // Track number - - // Track parameters at Vertex - TArrayD fPVertex; // (5) Track parameters - TArrayD fPEVertex; // (15) Track parameter errors - - // Track parameters at first measured point - TArrayD fPFMeasPoint; // (6) Track parameters - TArrayD fPFMeasPointErr; // (15) Track parameter error - - // Track parameters at last measured point - TArrayD fPLMeasPoint; // (6) Track parameters - TArrayD fPLMeasPointErr; // (15) Track parameter error - - Float_t fTrackLength; // Track length - Float_t fTrackLengthErr; // Track length error - Int_t fStopVertex; // Index of stop vertex - - Int_t fNPointsITS; // Number of points in ITS - Int_t fNPointsTPC; // Number of points in TPC - Int_t fNPointsTRD; // Number of points in TRD - Float_t fMeanResITS; // Mean residual in ITS - Float_t fMeanResTPC; // Mean residual in TPC - Float_t fMeanResTRD; // Mean residual in TRD - Float_t fGlobalChi2; // Global chi square - Int_t fParticleType; // PDG code - - Float_t fPIDprobPi; // PID probability for pi - Float_t fPIDprobK; // PID probability for K - Float_t fPIDprobP; // PID probability for p - Float_t fPIDprobE; // PID probability for e - -private: - AliESDTrack(const AliESDTrack &) {} - AliESDTrack & operator=(const AliESDTrack &) {return (*this);} - - ClassDef(AliESDTrack,1) //ESDTrack -}; - + AliESD(); + virtual ~AliESD() { + fTracks.Delete(); + //fV0s.Delete(); + //fCascades.Delete(); + } -class AliESDVertex -{ -public: - AliESDVertex(); - virtual ~AliESDVertex() {} - -protected: - Int_t fNPrimary; // Number of primary tracks - TArrayF fCoordinates; // (3) Vertex coordinates - TArrayF fErrorMatrix; // (6) Error Matrix - TObjArray fPrimaryTracks; // List of primary tracks - Float_t fEffectiveMass; // Effective Mass - Float_t fEffectiveMassError; // Effective Mass Error -private: - AliESDVertex(const AliESDVertex &) {} - AliESDVertex & operator=(const AliESDVertex &) {return (*this);} - - ClassDef(AliESDVertex,1) //ESDVertex -}; + void SetEventNumber(Int_t n) {fEventNumber=n;} -class AliESD -{ -public: - AliESD(); - virtual ~AliESD() {} + AliESDtrack *GetTrack(Int_t i) { + return (AliESDtrack *)fTracks.UncheckedAt(i); + } + void AddTrack(const AliESDtrack *t) { + new(fTracks[fTracks.GetEntriesFast()]) AliESDtrack(*t); + } - Int_t EventNumber() const {return fEventNumber;} - Int_t RunNumber() const {return fRunNumber;} - Long_t Trigger() const {return fTrigger;} - - Int_t BitDDL() const {return fBitDDL;} - Int_t NSecVertex() const {return fNSecVertex;} - Float_t NParticipants() const {return fNParticipants;} + Int_t GetEventNumber() const {return fEventNumber;} + Int_t GetRunNumber() const {return fRunNumber;} + Long_t GetTrigger() const {return fTrigger;} + Int_t GetNumberOfTracks() const {return fTracks.GetEntriesFast();} + //Int_t GetNumberOfV0s() const {return fV0s.GetEntriesFast();} + //Int_t GetNumberOfCascades() const {return fCascades.GetEntriesFast();} protected: // Event Identification - Int_t fEventNumber; // Event Number - Int_t fRunNumber; // Run Number - Long_t fTrigger; // Trigger Type (cfg Transverse Energy&Max trans ch mom) - Int_t fRecoVersion; // Version of reconstruction - - // Summary Information - Int_t fBitDDL; // Bitmap of active DDL - Int_t fNSecVertex; // Number of Secondary Vertexes - Float_t fNParticipants; // Estimated Number of participants - Float_t fNPartError; // N of participant error - Int_t fNElectron; // N of electrons - Int_t fNMuons; // N of muons - Int_t fNPions; // N of pions - Int_t fNKaons; // N of kaons - Int_t fNProtons; // N of protons - Int_t fNPHOSPhotons; // N of photons in PHOS - Int_t fNPHOSNeutrons; // N of neutrons in PHOS - Int_t fNPHOSCCluster; // N of charged clusters in PHOS - Int_t fNEMCALCluster; // N of clusters in EMCAL - Int_t fNPMDCluster; // N of clusters in PMD - Float_t fTMaxClusterEnergy; // Transverse energy of biggest cluster - Float_t fTMaxPCharged; // Biggest transverse momentum of charged particles - TArrayI fNCharged; // Charged Multiplicity - Float_t fTotTranEnergy; // Total transverse energy - - // Primary Vertex Object - AliESDVertex fESDVertex; // Primary Vertex Object - TObjArray fSecVertex; // List secondary vertexes - TObjArray fNonAssTrack; // List of non assigned tracks - TObjArray fPhoton; // List of photons - TObjArray fNeutron; // List of neutrons - TObjArray fEMCALCluster; // List of EMCAL clusters - TObjArray fPMDCluster; // List of PMD clusters + Int_t fEventNumber; // Event Number + Int_t fRunNumber; // Run Number + Long_t fTrigger; // Trigger Type + Int_t fRecoVersion; // Version of reconstruction -private: - AliESD(const AliESD &) {} - AliESD & operator=(const AliESD &) {return (*this);} + TClonesArray fTracks; // ESD tracks + //TClonesArray fV0s; // V0 vertices + //TClonesArray fCascades; // Cascade vertices - ClassDef(AliESD,1) //ESD + ClassDef(AliESD,1) //ESD class }; #endif