57 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package androidx.constraintlayout.motion.utils;
 | |
| 
 | |
| import androidx.constraintlayout.core.motion.utils.SpringStopEngine;
 | |
| import androidx.constraintlayout.core.motion.utils.StopEngine;
 | |
| import androidx.constraintlayout.core.motion.utils.StopLogicEngine;
 | |
| import androidx.constraintlayout.motion.widget.MotionInterpolator;
 | |
| 
 | |
| /* loaded from: classes.dex */
 | |
| public class StopLogic extends MotionInterpolator {
 | |
|     private StopEngine mEngine;
 | |
|     private SpringStopEngine mSpringStopEngine;
 | |
|     private StopLogicEngine mStopLogicEngine;
 | |
| 
 | |
|     public StopLogic() {
 | |
|         StopLogicEngine stopLogicEngine = new StopLogicEngine();
 | |
|         this.mStopLogicEngine = stopLogicEngine;
 | |
|         this.mEngine = stopLogicEngine;
 | |
|     }
 | |
| 
 | |
|     public String debug(String desc, float time) {
 | |
|         return this.mEngine.debug(desc, time);
 | |
|     }
 | |
| 
 | |
|     public float getVelocity(float x) {
 | |
|         return this.mEngine.getVelocity(x);
 | |
|     }
 | |
| 
 | |
|     public void config(float currentPos, float destination, float currentVelocity, float maxTime, float maxAcceleration, float maxVelocity) {
 | |
|         StopLogicEngine stopLogicEngine = this.mStopLogicEngine;
 | |
|         this.mEngine = stopLogicEngine;
 | |
|         stopLogicEngine.config(currentPos, destination, currentVelocity, maxTime, maxAcceleration, maxVelocity);
 | |
|     }
 | |
| 
 | |
|     public void springConfig(float currentPos, float destination, float currentVelocity, float mass, float stiffness, float damping, float stopThreshold, int boundaryMode) {
 | |
|         if (this.mSpringStopEngine == null) {
 | |
|             this.mSpringStopEngine = new SpringStopEngine();
 | |
|         }
 | |
|         SpringStopEngine springStopEngine = this.mSpringStopEngine;
 | |
|         this.mEngine = springStopEngine;
 | |
|         springStopEngine.springConfig(currentPos, destination, currentVelocity, mass, stiffness, damping, stopThreshold, boundaryMode);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.constraintlayout.motion.widget.MotionInterpolator, android.animation.TimeInterpolator
 | |
|     public float getInterpolation(float v) {
 | |
|         return this.mEngine.getInterpolation(v);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.constraintlayout.motion.widget.MotionInterpolator
 | |
|     public float getVelocity() {
 | |
|         return this.mEngine.getVelocity();
 | |
|     }
 | |
| 
 | |
|     public boolean isStopped() {
 | |
|         return this.mEngine.isStopped();
 | |
|     }
 | |
| }
 |