DiscreteValueRecorder class
Пакет: com.hypixel.hytale.common.benchmark
Файл: com/hypixel/hytale/common/benchmark/DiscreteValueRecorder.java
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
String |
DEFAULT_COLUMN_SEPARATOR |
Методы (15)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
void |
formatHeadervoid formatHeader(@Nonnull Formatter var1) |
public |
void |
formatHeadervoid formatHeader(@Nonnull Formatter var1, @Nonnull String var2) |
public |
void |
formatValuesvoid formatValues(@Nonnull Formatter var1) |
public |
void |
formatValuesvoid formatValues(@Nonnull Formatter var1, @Nonnull String var2) |
public |
long |
getAveragelong getAverage(long var1) |
public |
long |
getAveragelong getAverage() |
public |
long |
getCountlong getCount() |
public |
long |
getMaxValuelong getMaxValue(long var1) |
public |
long |
getMaxValuelong getMaxValue() |
public |
long |
getMinValuelong getMinValue(long var1) |
public |
long |
getMinValuelong getMinValue() |
|
|
if if(this.minValue > var1) |
|
|
if if(this.maxValue < var1) |
public |
void |
recordvoid record(long var1) |
public |
void |
resetvoid reset() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.common.benchmark;
class="kw">import com.hypixel.hytale.common.util.FormatUtil;
class="kw">import java.util.Formatter;
class="kw">import javax.annotation.Nonnull;
class="kw">public class DiscreteValueRecorder {
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_SEPARATOR = "|";
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_FORMAT_HEADER = "|%-6.6s";
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_FORMAT_VALUE = "|%6.6s";
class="kw">public class="kw">static class="kw">final String[] DEFAULT_COLUMNS = new String[]{"AVG", "MIN", "MAX", "COUNT"};
class="kw">protected long minValue;
class="kw">protected long maxValue;
class="kw">protected long sumValues;
class="kw">protected long count;
class="kw">public DiscreteValueRecorder() {
this.reset();
}
class="kw">public void reset() {
this.minValue = Long.MAX_VALUE;
this.maxValue = Long.MIN_VALUE;
this.sumValues = 0L;
this.count = 0L;
}
class="kw">public long getMinValue(long var1) {
class="kw">return this.count > 0L ? this.minValue : var1;
}
class="kw">public long getMinValue() {
class="kw">return this.getMinValue(0L);
}
class="kw">public long getMaxValue(long var1) {
class="kw">return this.count > 0L ? this.maxValue : var1;
}
class="kw">public long getMaxValue() {
class="kw">return this.getMaxValue(0L);
}
class="kw">public long getCount() {
class="kw">return this.count;
}
class="kw">public long getAverage(long var1) {
class="kw">return this.count > 0L ? (2L * this.sumValues + this.count) / (2L * this.count) : var1;
}
class="kw">public long getAverage() {
class="kw">return this.getAverage(0L);
}
class="kw">public void record(long var1) {
if (this.minValue > var1) {
this.minValue = var1;
}
if (this.maxValue < var1) {
this.maxValue = var1;
}
this.count++;
this.sumValues += var1;
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return String.format("Avg=%s Min=%s Max=%s", this.getAverage(), this.getMinValue(), this.getMaxValue());
}
class="kw">public void formatHeader(@Nonnull Formatter var1) {
this.formatHeader(var1, "|%-6.6s");
}
class="kw">public void formatHeader(@Nonnull Formatter var1, @Nonnull String var2) {
FormatUtil.formatArray(var1, var2, DEFAULT_COLUMNS);
}
class="kw">public void formatValues(@Nonnull Formatter var1) {
this.formatValues(var1, "|%6.6s");
}
class="kw">public void formatValues(@Nonnull Formatter var1, @Nonnull String var2) {
FormatUtil.formatArgs(var1, var2, this.getAverage(), this.getMinValue(), this.getMaxValue(), this.count);
}
}