]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliESD.h
AddTrial method added, changed trials to unsigned int
[u/mrichter/AliRoot.git] / STEER / AliESD.h
index eda324ff760767bf55699edece37a3c14dc8f432..df5481ab82409edf0d70bba54fca66c3436eabf9 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,9 +150,19 @@ public:
   }
   const AliESDVertex *GetPrimaryVertex() const {return &fPrimaryVertex;}
 
+  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];}
+  Float_t GetSigma2DiamondY() const {return fDiamondCovXY[2];}
+  void GetDiamondCovXY(Float_t cov[3]) const {
+    for(Int_t i=0;i<3;i++) cov[i]=fDiamondCovXY[i]; return;
+  }
+
   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;}
@@ -180,19 +195,26 @@ public:
   TArrayF *GetPHOSTriggerAmplitudes() const {return  fPHOSTriggerAmplitudes;}
 
 
-  Float_t GetT0zVertex() const {return fT0zVertex;}
-  void SetT0zVertex(Float_t z) {fT0zVertex=z;}
-  Float_t GetT0() const {return fT0timeStart;}
-  void SetT0(Float_t timeStart) {fT0timeStart = 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];
+  Double32_t GetT0zVertex() const {return fT0zVertex;}
+  void SetT0zVertex(Double32_t z) {fT0zVertex=z;}
+  Double32_t GetT0() const {return fT0timeStart;}
+  void SetT0(Double32_t timeStart) {fT0timeStart = timeStart;}
+  Float_t GetT0clock() const {return fT0clock;}
+  void SetT0clock(Float_t timeStart) {fT0clock = timeStart;}
+  Double32_t GetT0TOF(Int_t i) const {return fT0TOF[i];}
+  const Double32_t * GetT0TOF() const {return fT0TOF;}
+  void SetT0TOF(Int_t icase, Float_t time) { fT0TOF[icase] = time;}
+  Int_t GetT0Trig() const {return fT0trig;}
+  void SetT0Trig(Int_t tvdc) {fT0trig = tvdc;}
+  const Double32_t * GetT0time() const {return fT0time;}
+  void SetT0time(Double32_t time[24]) {
+  for (Int_t i=0; i<24; i++) fT0time[i] = time[i];
   }
-  const Float_t * GetT0amplitude() const {return fT0amplitude;}
-  void SetT0amplitude(Float_t amp[24]) {
+  const Double32_t * GetT0amplitude() const {return fT0amplitude;}
+  void SetT0amplitude(Double32_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;}
@@ -215,7 +237,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);
   }
@@ -223,15 +246,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
@@ -247,14 +271,21 @@ protected:
   Float_t      fZDCEMEnergy;     // reconstructed energy in the electromagnetic ZDC
   Int_t        fZDCParticipants; // number of participants estimated by the ZDC
 
-  Float_t      fT0zVertex;       // vertex z position estimated by the T0
+
+  Double32_t   fT0zVertex;       // vertex z position estimated by the T0
   AliESDVertex fSPDVertex;       // Primary vertex estimated by the SPD
   AliESDVertex fPrimaryVertex;   // Primary vertex estimated using ESD tracks
+  Float_t      fDiamondXY[2];    // Interaction diamond (x,y) in RUN
+  Float_t      fDiamondCovXY[3]; // Interaction diamond covariance (x,y) in RUN
   AliMultiplicity fSPDMult;      // SPD tracklet multiplicity
 
-  Float_t      fT0timeStart;     // interaction time estimated by the T0
-  Float_t      fT0time[24];      // best TOF on each T0 PMT
-  Float_t      fT0amplitude[24]; // number of particles(MIPs) on each T0 PMT
+  Float_t      fT0clock;     // backward compatibility
+  Double32_t   fT0TOF[3];     // interaction time in ns ( A&C, A, C)
+  Double32_t   fT0timeStart;     // interaction time estimated by the T0
+  Int_t        fT0trig;            // T0 trigger signals
+  Double32_t   fT0time[24];      // best TOF on each T0 PMT
+  Double32_t   fT0amplitude[24]; // number of particles(MIPs) on each T0 PMT
+
 
   TClonesArray fTracks;          // ESD tracks
   TClonesArray fHLTConfMapTracks;// HLT ESD tracks from Conformal Mapper method
@@ -278,10 +309,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,19)  //ESD class 
+  ClassDef(AliESD,23)  //ESD class 
 };
 #endif