#include "AliLog.h"
#include "AliT0Parameters.h"
#include "AliT0CalibData.h"
+#include "AliT0CalibWalk.h"
+#include "AliT0CalibTimeEq.h"
#include "AliT0LookUpValue.h"
#include <AliCDBManager.h>
#include <AliCDBEntry.h>
#include <TGeoPhysicalNode.h>
#include <AliGeomManager.h>
-AliT0CalibData* AliT0Parameters::fgCalibData = 0;
+AliT0CalibTimeEq* AliT0Parameters::fgCalibData = 0;
AliT0CalibData* AliT0Parameters::fgLookUp = 0;
-AliT0CalibData* AliT0Parameters::fgSlewCorr =0;
+AliT0CalibWalk* AliT0Parameters::fgSlewCorr =0;
//====================================================================
ClassImp(AliT0Parameters)
#if 0
fAmpLEDRec(0),
fPMTeff(),
fWalk(0),
- fTimeDelayDA(0),
fTimeDelayCFD(0),
+ // fTimeV0(0),
fTimeDelayTVD(0),
fMeanT0(500),
fLookUp(0),
//time equalizing
fCalibentry = stor->Get("T0/Calib/TimeDelay");
if (fCalibentry)
- fgCalibData = (AliT0CalibData*)fCalibentry->GetObject();
+ fgCalibData = (AliT0CalibTimeEq*)fCalibentry->GetObject();
else {
AliFatal(" ALARM !!!! No time delays in CDB ");
fIsInit = kFALSE;
//slewing correction
fSlewCorr = stor->Get("T0/Calib/Slewing_Walk");
if (fSlewCorr){
- fgSlewCorr = (AliT0CalibData*)fSlewCorr->GetObject();
+ fgSlewCorr = (AliT0CalibWalk*)fSlewCorr->GetObject();
}
else {
AliFatal(" ALARM !!!! No slewing correction in CDB ");
fIsInit=kTRUE;
}
//__________________________________________________________________
-
-Float_t
-AliT0Parameters::GetTimeDelayDA(Int_t ipmt)
-{
- // return time delay for LED channel
- //
- if (!fCalibentry) {
- fTimeDelayDA = 500;
- return fTimeDelayDA;
- }
- return fgCalibData ->GetTimeDelayDA(ipmt);
-}
-//__________________________________________________________________
Float_t
AliT0Parameters::GetTimeDelayCFD(Int_t ipmt)
-{
+ {
// return time delay for CFD channel
//
if (!fCalibentry)
return fTimeDelayCFD;
}
- return fgCalibData->GetTimeDelayCFD(ipmt);
+ return fgCalibData->GetTimeEq(ipmt);
}
-//__________________________________________________________________
+
Int_t
AliT0Parameters::GetMeanT0()
{
#include <TObjArray.h>
class AliT0CalibData;
class AliCDBEntry;
+class AliT0CalibWalk;
+class AliT0CalibTimeEq;
class AliT0Parameters : public TNamed
{
Float_t GetWalkVal(Int_t ipmt, Float_t mv ) const ;
Float_t GetTimeDelayCFD(Int_t ipmt);
- Float_t GetTimeDelayDA(Int_t ipmt);
+// Float_t GetTimeV0(Int_t ipmt = 512) {return fTimeV0;}
// void SetMeanT0(Int_t mean=500) { fMeanT0 = mean; };
Int_t GetMeanT0 (); //{return fMeanT0;};
- TMap * GetMapLookup();
+ TMap * GetMapLookup();
Int_t GetChannel(Int_t trm, Int_t tdc, Int_t chain, Int_t channel);
Int_t GetNumberOfTRMs();
void SetNumberOfTRMs(Int_t ntrms=2) {fNumberOfTRMs = ntrms;}
-
+
protected:
static AliT0Parameters* fgInstance; // Static singleton instance
TObjArray fPMTeff; //array PMT registration efficiency
TObjArray fWalk; //array time-amplitude walk
- Float_t fTimeDelayDA; // sum time delay for LED channel
Float_t fTimeDelayCFD; // sum time delay for CFD channel
+ // Float_t fTimeV0; // sum time delay for CFD channel
Float_t fTimeDelayTVD; //time delay for TVD (vertex trigger channel)
Int_t fMeanT0; //mean of T0distribution with vertex=0;
Int_t fNumberOfTRMs; // number of TRMs in setup
- static AliT0CalibData * fgCalibData; // singleton for Calibration data
+ static AliT0CalibTimeEq * fgCalibData; // singleton for Calibration data
static AliT0CalibData * fgLookUp; // singleton for Calibration data
- static AliT0CalibData * fgSlewCorr; // singleton for Calibration data
+ static AliT0CalibWalk * fgSlewCorr; // singleton for Calibration data
AliCDBEntry* fCalibentry ; // pointer to T0 calibration object
AliCDBEntry* fLookUpentry ; // pointer to T0 lokkup table