ChunkWorldgenBenchmark class
Пакет: com.hypixel.hytale.server.worldgen.benchmark
Файл: com/hypixel/hytale/server/worldgen/benchmark/ChunkWorldgenBenchmark.java
implements: IWorldGenBenchmark
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Object2IntSortedMap |
var1 |
|
StringBuilder |
var2 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
boolean |
isEnabledboolean isEnabled() |
public |
void |
registerCaveNodevoid registerCaveNode(String var1) |
public |
void |
registerPrefabvoid registerPrefab(String var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.benchmark;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.IWorldGenBenchmark;
class="kw">import it.unimi.dsi.fastutil.objects.Object2IntAVLTreeMap;
class="kw">import it.unimi.dsi.fastutil.objects.Object2IntSortedMap;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import java.util.concurrent.ConcurrentHashMap;
class="kw">import java.util.concurrent.atomic.AtomicInteger;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ChunkWorldgenBenchmark class="kw">implements IWorldGenBenchmark {
@Nonnull
class="kw">private class="kw">final ConcurrentHashMap<String, AtomicInteger> prefabCounts = new ConcurrentHashMap<>();
@Nonnull
class="kw">private class="kw">final ConcurrentHashMap<String, AtomicInteger> caveNodeCounts = new ConcurrentHashMap<>();
class="kw">private boolean enabled = false;
class="kw">public ChunkWorldgenBenchmark() {
}
@Override
class="kw">public void start() {
this.enabled = true;
}
@Override
class="kw">public void stop() {
this.enabled = false;
this.prefabCounts.clear();
this.caveNodeCounts.clear();
}
@Nonnull
@Override
class="kw">public CompletableFuture<String> buildReport() {
Object2IntSortedMap var1 = new Object2IntAVLTreeMap(String::compareToIgnoreCase);
StringBuilder var2 = new StringBuilder();
var2.append("Generated prefab counts: \n");
this.prefabCounts.forEach((var1x, var2x) -> var1.put(var1x, var2x.get()));
var1.forEach((var1x, var2x) -> var2.append(var1x).append('\t').append(var2x).append('\n'));
var2.append('\n');
var1.clear();
var2.append("Generated cave node counts: \n");
this.caveNodeCounts.forEach((var1x, var2x) -> var1.put(var1x, var2x.get()));
var1.forEach((var1x, var2x) -> var2.append(var1x).append('\t').append(var2x).append('\n'));
var2.append('\n');
var1.clear();
class="kw">return CompletableFuture.completedFuture(var2.toString());
}
class="kw">public boolean isEnabled() {
class="kw">return this.enabled;
}
class="kw">public void registerPrefab(String var1) {
this.prefabCounts.computeIfAbsent(var1, var0 -> new AtomicInteger(0));
this.prefabCounts.get(var1).incrementAndGet();
}
class="kw">public void registerCaveNode(String var1) {
this.caveNodeCounts.computeIfAbsent(var1, var0 -> new AtomicInteger(0));
this.caveNodeCounts.get(var1).incrementAndGet();
}
}