ClassImp(AliPHOSEmcCalibData)
//________________________________________________________________
- AliPHOSEmcCalibData::AliPHOSEmcCalibData(): TNamed()
+AliPHOSEmcCalibData::AliPHOSEmcCalibData():
+ TNamed(),
+ fSampleTimeStep(0)
{
// Default constructor
Reset();
}
//________________________________________________________________
-AliPHOSEmcCalibData::AliPHOSEmcCalibData(const char* name)
+AliPHOSEmcCalibData::AliPHOSEmcCalibData(const char* name):
+ TNamed(),
+ fSampleTimeStep(0)
{
// Constructor
TString namst = "Calib_";
//________________________________________________________________
AliPHOSEmcCalibData::AliPHOSEmcCalibData(const AliPHOSEmcCalibData& calibda) :
- TNamed(calibda)
+ TNamed(calibda),
+ fSampleTimeStep(calibda.fSampleTimeStep)
{
// copy constructor
SetName(calibda.GetName());
fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row];
fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row];
fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row];
+ fDecal[module][column][row] = calibda.fDecal[module][column][row];
}
}
}
fADCpedestalEmc[module][column][row] = calibda.fADCpedestalEmc[module][column][row];
fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row];
fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row];
- fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row];
+ fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row];
+ fDecal[module][column][row] = calibda.fDecal[module][column][row];
}
}
}
fHighLowRatioEmc[module][column][row] = 16. ;
fTimeShiftEmc[module][column][row] = 0. ;
fAltroOffsets[module][column][row] = 0 ;
+ fDecal[module][column][row] = 1.;
}
}
}
-
+ fSampleTimeStep=100.e-9 ; //100 ns
}
//________________________________________________________________
return fTimeShiftEmc[module-1][column-1][row-1];
}
//________________________________________________________________
+Float_t AliPHOSEmcCalibData::GetSampleTimeStep()const
+{
+ //Returns conversion coefficient from ALTRO smaple time step and secods
+ //Negative value not used in reconstruction (conversion taken from TRU trailer)
+ //and only in raw simulation
+ return fSampleTimeStep ;
+}
+//________________________________________________________________
Int_t AliPHOSEmcCalibData::GetAltroOffsetEmc(Int_t module, Int_t column, Int_t row) const
{
//Return EMC altro offsets
//module 1:5, column 1:56, row 1:64
fAltroOffsets[module-1][column-1][row-1] = value;
}
+//________________________________________________________________
+void AliPHOSEmcCalibData::SetSampleTimeStep(Float_t step)
+{
+ //Sets conversion coefficient from ALTRO smaple time step and secods
+ //Negative value not used in reconstruction (conversion taken from TRU trailer)
+ //and only in raw simulation
+ fSampleTimeStep = step ;
+}
+
+//________________________________________________________________
+Float_t AliPHOSEmcCalibData::GetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row) const
+{
+ //Return EMC random (de)calibration coefficient O(1). Used in simulation.
+ //module, column,raw should follow the internal PHOS convention:
+ //module 1:5, column 1:56, row 1:64
+
+ return fDecal[module-1][column-1][row-1];
+}
+
+void AliPHOSEmcCalibData::SetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row, Float_t value)
+{
+ //Set EMC (de)calibration coefficient O(1). Used in simulation.
+ //module, column,raw should follow the internal PHOS convention:
+ //module 1:5, column 1:56, row 1:64
+
+ fDecal[module-1][column-1][row-1] = value;
+}