ISystem interface
Пакет: com.hypixel.hytale.component.system
Файл: com/hypixel/hytale/component/system/ISystem.java
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
ISystem[] |
EMPTY_ARRAY |
|
DependencyGraph |
var3 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
<ECS_TYPE> void |
calculateOrder<ECS_TYPE> void calculateOrder(@Nonnull ComponentRegistry<ECS_TYPE> var0, @Nonnull ISystem<ECS_TYPE>[] var1, int var2) |
default |
void |
onSystemRegisteredvoid onSystemRegistered() |
default |
void |
onSystemUnregisteredvoid onSystemUnregistered() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.component.system;
class="kw">import com.hypixel.hytale.component.ComponentRegistry;
class="kw">import com.hypixel.hytale.component.SystemGroup;
class="kw">import com.hypixel.hytale.component.dependency.Dependency;
class="kw">import com.hypixel.hytale.component.dependency.DependencyGraph;
class="kw">import java.util.Arrays;
class="kw">import java.util.Collections;
class="kw">import java.util.Set;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class="kw">interface ISystem<ECS_TYPE> {
ISystem[] EMPTY_ARRAY = new ISystem[0];
class="kw">default void onSystemRegistered() {
}
class="kw">default void onSystemUnregistered() {
}
@Nullable
class="kw">default SystemGroup<ECS_TYPE> getGroup() {
class="kw">return null;
}
@Nonnull
class="kw">default Set<Dependency<ECS_TYPE>> getDependencies() {
class="kw">return Collections.emptySet();
}
class="kw">static <ECS_TYPE> void calculateOrder(@Nonnull ComponentRegistry<ECS_TYPE> var0, @Nonnull ISystem<ECS_TYPE>[] var1, int var2) {
DependencyGraph var3 = new DependencyGraph<>(Arrays.copyOf(var1, var2));
var3.resolveEdges(var0);
var3.sort(var1);
}
}