blob: 231decc5fcbf725eeebe6601e1f6e3ca031d0c40 [file] [log] [blame]
package com.airbnb.lottie.value;
import android.support.annotation.RestrictTo;
/**
* Data class for use with {@link LottieValueCallback}.
* You should *not* hold a reference to the frame info parameter passed to your callback. It will be reused.
*/
public class LottieFrameInfo<T> {
private float startFrame;
private float endFrame;
private T startValue;
private T endValue;
private float linearKeyframeProgress;
private float interpolatedKeyframeProgress;
private float overallProgress;
@RestrictTo(RestrictTo.Scope.LIBRARY)
public LottieFrameInfo<T> set(
float startFrame,
float endFrame,
T startValue,
T endValue,
float linearKeyframeProgress,
float interpolatedKeyframeProgress,
float overallProgress
) {
this.startFrame = startFrame;
this.endFrame = endFrame;
this.startValue = startValue;
this.endValue = endValue;
this.linearKeyframeProgress = linearKeyframeProgress;
this.interpolatedKeyframeProgress = interpolatedKeyframeProgress;
this.overallProgress = overallProgress;
return this;
}
public float getStartFrame() {
return startFrame;
}
public float getEndFrame() {
return endFrame;
}
public T getStartValue() {
return startValue;
}
public T getEndValue() {
return endValue;
}
public float getLinearKeyframeProgress() {
return linearKeyframeProgress;
}
public float getInterpolatedKeyframeProgress() {
return interpolatedKeyframeProgress;
}
public float getOverallProgress() {
return overallProgress;
}
}