#include <TVectorT.h>
#include "AliTPCCalibRawBase.h"
class TH1S;
+#include "TObjArray.h"
class TH2S;
class TH1F;
class TTreeSRedirector;
class AliTPCRawStreamFast;
class TGraph;
class TMap;
+class TCollection;
struct eventHeaderStruct;
TVectorF* GetTMeanEvents(Int_t sector, Bool_t force=kFALSE);
TVectorF* GetQMeanEvents(Int_t sector, Bool_t force=kFALSE);
- TVectorD* GetEventTimes() { return &fVEventTime; }
- TVectorD* GetEventIds() { return &fVEventNumber; }
+ const TVectorD* GetEventTimes() const { return &fVEventTime; }
+ const TVectorD* GetEventIds() const { return &fVEventNumber; }
//
void SetRangeRefQ (Int_t nBins, Float_t xMin, Float_t xMax){ fNbinsQ = nBins; fXminQ = xMin; fXmaxQ = xMax; } //Set range for Q reference histograms
void SetNnoiseThresholdMax(Float_t n) {fNoiseThresholdMax=n;}
void SetNnoiseThresholdSum(Float_t n) {fNoiseThresholdSum=n;}
//
- void SetTimeStampEvent(Double_t timestamp){ fTimeStamp = timestamp; }
- void SetRunNumber(Double_t eventnumber){ fRunNumber = eventnumber; }
- void SetEventInfo(Double_t runNumber, Double_t timestamp, Double_t eventId){ fRunNumber=runNumber; fTimeStamp=timestamp; fEventId=eventId;}
+ void SetEventInfo(UInt_t runNumber,UInt_t timestamp, UInt_t eventId){ fRunNumber=runNumber; fTimeStamp=timestamp; fEventId=eventId;}
//
- void SetPedestalDatabase(AliTPCCalPad *pedestalTPC, AliTPCCalPad *padNoiseTPC) {fPedestalTPC = pedestalTPC; fPadNoiseTPC = padNoiseTPC;}
+ void SetPedestalDatabase(AliTPCCalPad * const pedestalTPC, AliTPCCalPad * const padNoiseTPC) {fPedestalTPC = pedestalTPC; fPadNoiseTPC = padNoiseTPC;}
void SetIsZeroSuppressed(Bool_t zs=kTRUE) { fIsZeroSuppressed=zs; }
void SetSecRejectRatio(Float_t ratio) { fSecRejectRatio=ratio; }
//Getters
Float_t GetPeakIntegralPlus() const {return fPeakIntPlus;}
- void Merge(AliTPCCalibCE *ce);
+ void Merge(AliTPCCalibCE * const ce);
+ virtual Long64_t Merge(TCollection * const list);
TGraph *MakeGraphTimeCE(Int_t sector, Int_t xVariable=0, Int_t fitType=0, Int_t fitParameter=0);
-
+
+protected:
+ virtual void EndEvent();
+ virtual void ResetEvent();
+
private:
// reference histogram ranges
Int_t fNbinsT0; // Number of bins for T0 reference histogram
TVectorD fVEventNumber; // Eventnumbers of the events
TVectorF fVTime0SideA; // Mean Time0 for side A for all events
TVectorF fVTime0SideC; // Mean Time0 for side C for all events
- Double_t fTimeStamp; //! Timestamp of the current event
Double_t fEventId; //! Event Id of the current event
- Double_t fRunNumber; //! Run Number of the current event
- Double_t fOldRunNumber; //! Old Run Number
+ UInt_t fOldRunNumber; //! Old Run Number
TObjArray fPadTimesArrayEvent; //! Pad Times for the event, before mean Time0 corrections
TObjArray fPadQArrayEvent; //! Charge for the event, only needed for debugging streamer
Int_t fCurrentRow; //! current row processed
Float_t fMaxPadSignal; //! maximum bin of current pad
Int_t fMaxTimeBin; //! time bin with maximum value
- TVectorF fPadSignal; //! signal of current Pad
+ Float_t fPadSignal[1024]; //! signal of current Pad
Float_t fPadPedestal; //! Pedestal Value of current pad
Float_t fPadNoise; //! Noise Value of current pad
TObjArray* GetParamArray(Int_t sector, TObjArray *arr, Bool_t force=kFALSE) const;
- virtual void EndEvent();
- virtual void ResetEvent();
void ResetPad();
void ProcessPad();
//debug