63 GPUdi()
void setGainCorrection(int32_t sector, tpccf::Row
row, tpccf::Pad
pad,
float c)
73 GPUdi() float getGainCorrection(int32_t sector, tpccf::Row
row, tpccf::Pad
pad)
const
80 return mPadOffsetPerRow[
row] +
pad;
83 GPUdi()
void setMinCorrectionFactor(
const float minCorrectionFactor)
86 mGainCorrection[sector].mMinCorrectionFactor = minCorrectionFactor;
93 mGainCorrection[sector].mMaxCorrectionFactor = maxCorrectionFactor;
98 template <
typename T = u
int16_t>
99 class SectorPadGainCorrection
103 float mMinCorrectionFactor = 0.f;
104 float mMaxCorrectionFactor = 2.f;
107 GPUdi() SectorPadGainCorrection()
132 GPUd() T pack(
float f)
const
134 f = CAMath::Clamp(
f, mMinCorrectionFactor, mMaxCorrectionFactor);
135 f -= mMinCorrectionFactor;
136 f *= float(NumOfSteps);
137 f /= (mMaxCorrectionFactor - mMinCorrectionFactor);
138 return CAMath::Round(
f);
141 GPUd() float unpack(T c)
const
143 return mMinCorrectionFactor + (mMaxCorrectionFactor - mMinCorrectionFactor) *
float(c) / float(NumOfSteps);