minecraft-src/net/minecraft/util/profiling/ContinuousProfiler.java
2025-09-18 12:27:44 +00:00

38 lines
1 KiB
Java

package net.minecraft.util.profiling;
import java.util.function.BooleanSupplier;
import java.util.function.IntSupplier;
import java.util.function.LongSupplier;
public class ContinuousProfiler {
private final LongSupplier realTime;
private final IntSupplier tickCount;
private final BooleanSupplier suppressWarnings;
private ProfileCollector profiler = InactiveProfiler.INSTANCE;
public ContinuousProfiler(LongSupplier realTime, IntSupplier tickTime, BooleanSupplier suppressWarnings) {
this.realTime = realTime;
this.tickCount = tickTime;
this.suppressWarnings = suppressWarnings;
}
public boolean isEnabled() {
return this.profiler != InactiveProfiler.INSTANCE;
}
public void disable() {
this.profiler = InactiveProfiler.INSTANCE;
}
public void enable() {
this.profiler = new ActiveProfiler(this.realTime, this.tickCount, this.suppressWarnings);
}
public ProfilerFiller getFiller() {
return this.profiler;
}
public ProfileResults getResults() {
return this.profiler.getResults();
}
}