what-the-bank/sources/com/airbnb/lottie/PerformanceTracker.java

99 lines
3.2 KiB
Java

package com.airbnb.lottie;
import com.airbnb.lottie.utils.MeanCalculator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import o.uOF;
import o.wnv;
/* loaded from: classes.dex */
public class PerformanceTracker {
private boolean enabled = false;
private final Set<FrameListener> frameListeners = new wnv();
private final Map<String, MeanCalculator> layerRenderTimes = new HashMap();
private final Comparator<uOF<String, Float>> floatComparator = new Comparator<uOF<String, Float>>(this) { // from class: com.airbnb.lottie.PerformanceTracker.1
final PerformanceTracker this$0;
{
this.this$0 = this;
}
@Override // java.util.Comparator
public int compare(uOF<String, Float> uof, uOF<String, Float> uof2) {
float floatValue = uof.b.floatValue();
float floatValue2 = uof2.b.floatValue();
if (floatValue2 > floatValue) {
return 1;
}
return floatValue > floatValue2 ? -1 : 0;
}
};
/* loaded from: classes.dex */
public interface FrameListener {
void onFrameRendered(float f);
}
public void recordRenderTime(String str, float f) {
if (this.enabled) {
MeanCalculator meanCalculator = this.layerRenderTimes.get(str);
if (meanCalculator == null) {
meanCalculator = new MeanCalculator();
this.layerRenderTimes.put(str, meanCalculator);
}
meanCalculator.add(f);
if (str.equals("__container")) {
Iterator<FrameListener> it = this.frameListeners.iterator();
while (it.hasNext()) {
it.next().onFrameRendered(f);
}
}
}
}
public void addFrameListener(FrameListener frameListener) {
this.frameListeners.add(frameListener);
}
public void removeFrameListener(FrameListener frameListener) {
this.frameListeners.remove(frameListener);
}
public void clearRenderTimes() {
this.layerRenderTimes.clear();
}
public void logRenderTimes() {
if (this.enabled) {
List<uOF<String, Float>> sortedRenderTimes = getSortedRenderTimes();
for (int i = 0; i < sortedRenderTimes.size(); i++) {
uOF<String, Float> uof = sortedRenderTimes.get(i);
new Object[]{uof.d, uof.b};
}
}
}
public List<uOF<String, Float>> getSortedRenderTimes() {
if (!this.enabled) {
return Collections.emptyList();
}
ArrayList arrayList = new ArrayList(this.layerRenderTimes.size());
for (Map.Entry<String, MeanCalculator> entry : this.layerRenderTimes.entrySet()) {
arrayList.add(new uOF(entry.getKey(), Float.valueOf(entry.getValue().getMean())));
}
Collections.sort(arrayList, this.floatComparator);
return arrayList;
}
/* JADX INFO: Access modifiers changed from: package-private */
public void setEnabled(boolean z) {
this.enabled = z;
}
}