Package net.minecraft.server.level
Class GenerationChunkHolder
java.lang.Object
net.minecraft.server.level.GenerationChunkHolder
- Direct Known Subclasses:
ChunkHolder
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final List
<ChunkStatus> private final AtomicReferenceArray
<CompletableFuture<ChunkResult<ChunkAccess>>> private final AtomicInteger
private ChunkStatus
private static final ChunkResult
<ChunkAccess> protected final ChunkPos
private final AtomicReference
<ChunkStatus> private final AtomicReference
<ChunkGenerationTask> static final ChunkResult
<ChunkAccess> static final CompletableFuture
<ChunkResult<ChunkAccess>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
acquireStatusBump
(ChunkStatus pStatus) (package private) CompletableFuture
<ChunkResult<ChunkAccess>> applyStep
(ChunkStep pStep, GeneratingChunkMap pChunkMap, StaticCache2D<GenerationChunkHolder> pCache) private void
completeFuture
(ChunkStatus pTargetStatus, ChunkAccess pChunkAccess) void
private void
failAndClearPendingFuture
(int pStatus, CompletableFuture<ChunkResult<ChunkAccess>> pFuture) private void
failAndClearPendingFuturesBetween
(ChunkStatus pHighestAllowableStatus, ChunkStatus pCurrentStatus) private ChunkStatus
findHighestStatusWithPendingFuture
(ChunkStatus pGenerationStatus) List
<com.mojang.datafixers.util.Pair<ChunkStatus, CompletableFuture<ChunkResult<ChunkAccess>>>> getChunkIfPresent
(ChunkStatus pStatus) getChunkIfPresentUnchecked
(ChunkStatus pStatus) int
private CompletableFuture
<ChunkResult<ChunkAccess>> getOrCreateFuture
(ChunkStatus pTargetStatus) getPos()
abstract int
abstract int
void
private boolean
isStatusDisallowed
(ChunkStatus pStatus) (package private) void
removeTask
(ChunkGenerationTask pTask) void
replaceProtoChunk
(ImposterProtoChunk pChunk) private void
rescheduleChunkTask
(ChunkMap pChunkMap, ChunkStatus pTargetStatus) scheduleChunkGenerationTask
(ChunkStatus pTargetStatus, ChunkMap pChunkMap) protected void
updateHighestAllowedStatus
(ChunkMap pChunkMap)
-
Field Details
-
CHUNK_STATUSES
-
NOT_DONE_YET
-
UNLOADED_CHUNK
-
UNLOADED_CHUNK_FUTURE
-
pos
-
highestAllowedStatus
-
startedWork
-
futures
-
task
-
generationRefCount
-
currentlyLoading
-
-
Constructor Details
-
GenerationChunkHolder
-
-
Method Details
-
scheduleChunkGenerationTask
public CompletableFuture<ChunkResult<ChunkAccess>> scheduleChunkGenerationTask(ChunkStatus pTargetStatus, ChunkMap pChunkMap) -
applyStep
CompletableFuture<ChunkResult<ChunkAccess>> applyStep(ChunkStep pStep, GeneratingChunkMap pChunkMap, StaticCache2D<GenerationChunkHolder> pCache) -
updateHighestAllowedStatus
-
replaceProtoChunk
-
removeTask
-
rescheduleChunkTask
-
getOrCreateFuture
-
failAndClearPendingFuturesBetween
private void failAndClearPendingFuturesBetween(@Nullable ChunkStatus pHighestAllowableStatus, ChunkStatus pCurrentStatus) -
failAndClearPendingFuture
private void failAndClearPendingFuture(int pStatus, CompletableFuture<ChunkResult<ChunkAccess>> pFuture) -
completeFuture
-
findHighestStatusWithPendingFuture
@Nullable private ChunkStatus findHighestStatusWithPendingFuture(@Nullable ChunkStatus pGenerationStatus) -
acquireStatusBump
-
isStatusDisallowed
-
increaseGenerationRefCount
public void increaseGenerationRefCount() -
decreaseGenerationRefCount
public void decreaseGenerationRefCount() -
getGenerationRefCount
public int getGenerationRefCount() -
getChunkIfPresentUnchecked
-
getChunkIfPresent
-
getLatestChunk
-
getPersistedStatus
-
getPos
-
getFullStatus
-
getTicketLevel
public abstract int getTicketLevel() -
getQueueLevel
public abstract int getQueueLevel() -
getAllFutures
public List<com.mojang.datafixers.util.Pair<ChunkStatus,CompletableFuture<ChunkResult<ChunkAccess>>>> getAllFutures() -
getLatestStatus
-