Package net.minecraft.world.level.chunk
Class PalettedContainer<T>
java.lang.Object
net.minecraft.world.level.chunk.PalettedContainer<T>
- All Implemented Interfaces:
PalettedContainerRO<T>,PaletteResize<T>
public class PalettedContainer<T>
extends Object
implements PaletteResize<T>, PalettedContainerRO<T>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface(package private) static final recordNested classes/interfaces inherited from interface net.minecraft.world.level.chunk.PalettedContainerRO
PalettedContainerRO.PackedData<T>, PalettedContainerRO.Unpacker<T,C extends PalettedContainerRO<T>> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate PalettedContainer.Data<T> private static final intprivate final ThreadingDetector -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivatePalettedContainer(PalettedContainer<T> pOther) privatePalettedContainer(Strategy<T> pStrategy, Configuration pConfiguration, BitStorage pStorage, Palette<T> pPalette) PalettedContainer(T pDefaultValue, Strategy<T> pStrategy) -
Method Summary
Modifier and TypeMethodDescriptionvoidacquire()intprivate static <T,C extends PalettedContainerRO<T>>
com.mojang.serialization.Codec<C> codec(com.mojang.serialization.Codec<T> pValueCodec, Strategy<T> pStrategy, T pDefaultValue, PalettedContainerRO.Unpacker<T, C> pUnpacker) static <T> com.mojang.serialization.Codec<PalettedContainerRO<T>> static <T> com.mojang.serialization.Codec<PalettedContainer<T>> copy()voidcount(PalettedContainer.CountConsumer<T> pCountConsumer) Counts the number of instances of each state in the container.private PalettedContainer.Data<T> createOrReuseData(PalettedContainer.Data<T> pData, int pId) protected Tget(int pIndex) get(int pX, int pY, int pZ) voidprivate TgetAndSetUnchecked(int pX, int pY, int pZ, T pState) intbooleanintCalled when the underlying palette needs to resize itself to support additional objects.voidread(FriendlyByteBuf pBuffer) recreate()private static <T> int[]reencodeContents(BitStorage pStorage, Palette<T> pOldPalette, Palette<T> pNewPalette) voidrelease()voidprivate voidstatic <T> com.mojang.serialization.DataResult<PalettedContainer<T>> unpack(Strategy<T> pStrategy, PalettedContainerRO.PackedData<T> pPackedData) voidwrite(FriendlyByteBuf pBuffer)
-
Field Details
-
MIN_PALETTE_BITS
private static final int MIN_PALETTE_BITS- See Also:
-
data
-
strategy
-
threadingDetector
-
-
Constructor Details
-
PalettedContainer
private PalettedContainer(Strategy<T> pStrategy, Configuration pConfiguration, BitStorage pStorage, Palette<T> pPalette) -
PalettedContainer
-
PalettedContainer
-
-
Method Details
-
acquire
public void acquire() -
release
public void release() -
codecRW
public static <T> com.mojang.serialization.Codec<PalettedContainer<T>> codecRW(com.mojang.serialization.Codec<T> pValueCodec, Strategy<T> pStrategy, T pDefaultValue) -
codecRO
public static <T> com.mojang.serialization.Codec<PalettedContainerRO<T>> codecRO(com.mojang.serialization.Codec<T> pValueCodec, Strategy<T> pStrategy, T pDefaultValue) -
codec
private static <T,C extends PalettedContainerRO<T>> com.mojang.serialization.Codec<C> codec(com.mojang.serialization.Codec<T> pValueCodec, Strategy<T> pStrategy, T pDefaultValue, PalettedContainerRO.Unpacker<T, C> pUnpacker) -
createOrReuseData
private PalettedContainer.Data<T> createOrReuseData(@Nullable PalettedContainer.Data<T> pData, int pId) -
onResize
Description copied from interface:PaletteResizeCalled when the underlying palette needs to resize itself to support additional objects.- Specified by:
onResizein interfacePaletteResize<T>- Parameters:
p_63142_- The new palette size, in bits.- Returns:
- The new integer mapping for the object added.
-
getAndSet
-
getAndSetUnchecked
-
getAndSet
-
set
-
set
-
get
- Specified by:
getin interfacePalettedContainerRO<T>
-
get
-
getAll
- Specified by:
getAllin interfacePalettedContainerRO<T>
-
read
-
write
- Specified by:
writein interfacePalettedContainerRO<T>
-
unpack
public static <T> com.mojang.serialization.DataResult<PalettedContainer<T>> unpack(Strategy<T> pStrategy, PalettedContainerRO.PackedData<T> pPackedData) -
pack
- Specified by:
packin interfacePalettedContainerRO<T>
-
reencodeContents
private static <T> int[] reencodeContents(BitStorage pStorage, Palette<T> pOldPalette, Palette<T> pNewPalette) -
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSizein interfacePalettedContainerRO<T>
-
bitsPerEntry
public int bitsPerEntry()- Specified by:
bitsPerEntryin interfacePalettedContainerRO<T>
-
maybeHas
- Specified by:
maybeHasin interfacePalettedContainerRO<T>
-
copy
- Specified by:
copyin interfacePalettedContainerRO<T>
-
recreate
- Specified by:
recreatein interfacePalettedContainerRO<T>
-
count
Counts the number of instances of each state in the container. The provided consumer is invoked for each state with the number of instances.- Specified by:
countin interfacePalettedContainerRO<T>
-