]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliESD.h
Fix for Savannah bug report 59287
[u/mrichter/AliRoot.git] / STEER / AliESD.h
index fb5033684b240badfbd0541e8a1814425e47adc7..255e68d868e5cc4f6bf22e05b27ed33e6b80a720 100644 (file)
 #include "AliESDVZERO.h"
 #include "AliMultiplicity.h"
 #include "AliRawDataErrorLog.h"
+#include "AliESDACORDE.h"
 
 class AliESDfriend;
 
 class AliESD : public TObject {
 public:
   AliESD();
+  AliESD(const AliESD&);  
   virtual ~AliESD(); 
 
   void SetESDfriend(const AliESDfriend *f);
@@ -46,6 +48,7 @@ public:
   void SetEventNumberInFile(Int_t n) {fEventNumberInFile=n;}
   void SetBunchCrossNumber(UShort_t n) {fBunchCrossNumber=n;}
   void SetOrbitNumber(UInt_t n) {fOrbitNumber=n;}
+  void SetPeriodNumber(UInt_t n) {fPeriodNumber=n;}
   void SetRunNumber(Int_t n) {fRunNumber=n;}
   void SetTimeStamp(UInt_t timeStamp){fTimeStamp = timeStamp;}
   void SetEventType(UInt_t eventType){fEventType = eventType;}
@@ -73,11 +76,13 @@ public:
     return (AliESDTrdTrack *)fTrdTracks.UncheckedAt(i);
   }
 
+  Bool_t Clean(Float_t *cleanPars);
+  Bool_t RemoveKink(Int_t i);
+  Bool_t RemoveV0(Int_t i);
+  Bool_t RemoveTrack(Int_t i);
+
   Int_t  AddTrack(const AliESDtrack *t) {
-    AliESDtrack * track = new(fTracks[fTracks.GetEntriesFast()]) AliESDtrack(*t);
-    track->SetID(fTracks.GetEntriesFast()-1);
-    return  track->GetID();
-    
+    AliESDtrack * track = new(fTracks[fTracks.GetEntriesFast()]) AliESDtrack(*t);track->SetID(fTracks.GetEntriesFast()-1);return  track->GetID();
   }
   void AddHLTConfMapTrack(const AliESDHLTtrack *t) {
     new(fHLTConfMapTracks[fHLTConfMapTracks.GetEntriesFast()]) AliESDHLTtrack(*t);
@@ -145,15 +150,7 @@ public:
   }
   const AliESDVertex *GetPrimaryVertex() const {return &fPrimaryVertex;}
 
-  void SetDiamond(const AliESDVertex *vertex) {
-    fDiamondXY[0]=vertex->GetXv();
-    fDiamondXY[1]=vertex->GetYv();
-    Double_t cov[6];
-    vertex->GetCovMatrix(cov);
-    fDiamondCovXY[0]=cov[0];
-    fDiamondCovXY[1]=cov[1];
-    fDiamondCovXY[2]=cov[2];
-  }
+  void SetDiamond(const AliESDVertex *vertex);
   Float_t GetDiamondX() const {return fDiamondXY[0];}
   Float_t GetDiamondY() const {return fDiamondXY[1];}
   Float_t GetSigma2DiamondX() const {return fDiamondCovXY[0];}
@@ -165,6 +162,7 @@ public:
   Int_t  GetEventNumberInFile() const {return fEventNumberInFile;}
   UShort_t GetBunchCrossNumber() const {return fBunchCrossNumber;}
   UInt_t GetOrbitNumber() const {return fOrbitNumber;}
+  UInt_t GetPeriodNumber() const {return fPeriodNumber;}
   Int_t  GetRunNumber() const {return fRunNumber;}
   UInt_t    GetTimeStamp()  const { return fTimeStamp;}
   UInt_t    GetEventType()  const { return fEventType;}
@@ -201,6 +199,8 @@ public:
   void SetT0zVertex(Float_t z) {fT0zVertex=z;}
   Float_t GetT0() const {return fT0timeStart;}
   void SetT0(Float_t timeStart) {fT0timeStart = timeStart;}
+  Float_t GetT0clock() const {return fT0clock;}
+  void SetT0clock(Float_t timeStart) {fT0clock = timeStart;}
   const Float_t * GetT0time() const {return fT0time;}
   void SetT0time(Float_t time[24]) {
     for (Int_t i=0; i<24; i++) fT0time[i] = time[i];
@@ -209,7 +209,7 @@ public:
   void SetT0amplitude(Float_t amp[24]) {
     for (Int_t i=0; i<24; i++) fT0amplitude[i] = amp[i];
   }
-
+    
   Float_t GetZDCN1Energy() const {return fZDCN1Energy;}
   Float_t GetZDCP1Energy() const {return fZDCP1Energy;}
   Float_t GetZDCN2Energy() const {return fZDCN2Energy;}
@@ -232,7 +232,8 @@ public:
    
   void SetVZEROData(AliESDVZERO * obj) { fESDVZERO = new AliESDVZERO(*obj); }
   AliESDVZERO *GetVZEROData(){ return fESDVZERO; }
-
+  void SetACORDEData(AliESDACORDE * obj){ fESDACORDE = new AliESDACORDE(*obj); } 
+  AliESDACORDE *GetACORDEDAta(){ return fESDACORDE; }
   AliRawDataErrorLog *GetErrorLog(Int_t i) const {
     return (AliRawDataErrorLog *)fErrorLogs.UncheckedAt(i);
   }
@@ -240,15 +241,16 @@ public:
     new(fErrorLogs[fErrorLogs.GetEntriesFast()]) AliRawDataErrorLog(*log);
   }
   Int_t GetNumberOfErrorLogs()   const {return fErrorLogs.GetEntriesFast();}
-   
+
 protected:
-  AliESD(const AliESD&);
   AliESD &operator=(const AliESD& source);
 
   // Event Identification
+
   Int_t        fEventNumberInFile;// running Event count in the file
   UShort_t     fBunchCrossNumber;// Bunch Crossing Number
   UInt_t       fOrbitNumber;     // Orbit Number
+  UInt_t       fPeriodNumber;    // Period Number
   Int_t        fRunNumber;       // Run Number
   UInt_t       fTimeStamp;       // Time stamp
   UInt_t       fEventType;       // Type of Event
@@ -272,6 +274,7 @@ protected:
   AliMultiplicity fSPDMult;      // SPD tracklet multiplicity
 
   Float_t      fT0timeStart;     // interaction time estimated by the T0
+  Float_t      fT0clock;     // interaction time with reference point(spectrum)
   Float_t      fT0time[24];      // best TOF on each T0 PMT
   Float_t      fT0amplitude[24]; // number of particles(MIPs) on each T0 PMT
 
@@ -297,10 +300,11 @@ protected:
 
   AliESDFMD   *fESDFMD;   // FMD object containing rough multiplicity
   AliESDVZERO *fESDVZERO; // VZERO object containing rough multiplicity
+  AliESDACORDE *fESDACORDE; // ACORDE ESD object containing bit pattern
 
   TClonesArray fErrorLogs;        // Raw-data reading error messages
 
-  ClassDef(AliESD,20)  //ESD class 
+  ClassDef(AliESD,23)  //ESD class 
 };
 #endif