Package net.minecraft.world.chunk
Interface Palette<T>
- All Known Implementing Classes:
ArrayPalette
,BiMapPalette
,IdListPalette
,SingularPalette
public interface Palette<T>
A palette maps objects from and to small integer IDs that uses less
number of bits to make storage smaller.
While the objects palettes handle are already represented by integer IDs, shrinking IDs in cases where only a few appear can further reduce storage space and network traffic volume.
- See Also:
- Mappings:
Namespace Name named net/minecraft/world/chunk/Palette
intermediary net/minecraft/class_2837
official duq
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
An interface for easy creation of palettes. -
Method Summary
Modifier and TypeMethodDescriptioncopy()
get
(int id) Returns the object associated with the givenid
.int
Returns the serialized size of this palette in a byte buf, in bytes.int
getSize()
Returns the size of the palette.boolean
Returnstrue
if any entry in this palette passes thepredicate
.int
Returns the ID of an object in this palette.void
readPacket
(PacketByteBuf buf) Initializes this palette from thebuf
.void
writePacket
(PacketByteBuf buf) Writes this palette to thebuf
.
-
Method Details
-
index
Returns the ID of an object in this palette.If the object does not yet exist in this palette, this palette will register the object. If the palette is too small to include this object, a resize listener will be called and this palette may be discarded.
- Parameters:
object
- the object to look up- Returns:
- the ID of an object in this palette
- Mappings:
Namespace Name Mixin selector named index
Lnet/minecraft/world/chunk/Palette;index(Ljava/lang/Object;)I
intermediary method_12291
Lnet/minecraft/class_2837;method_12291(Ljava/lang/Object;)I
official a
Lduq;a(Ljava/lang/Object;)I
-
hasAny
Returnstrue
if any entry in this palette passes thepredicate
.- Returns:
true
if any entry in this palette passes thepredicate
- Mappings:
Namespace Name Mixin selector named hasAny
Lnet/minecraft/world/chunk/Palette;hasAny(Ljava/util/function/Predicate;)Z
intermediary method_19525
Lnet/minecraft/class_2837;method_19525(Ljava/util/function/Predicate;)Z
official a
Lduq;a(Ljava/util/function/Predicate;)Z
-
get
Returns the object associated with the givenid
.- Parameters:
id
- the ID to look up- Returns:
- the object associated with the given
id
- Throws:
EntryMissingException
- if this ID does not exist in this palette- Mappings:
Namespace Name Mixin selector named get
Lnet/minecraft/world/chunk/Palette;get(I)Ljava/lang/Object;
intermediary method_12288
Lnet/minecraft/class_2837;method_12288(I)Ljava/lang/Object;
official a
Lduq;a(I)Ljava/lang/Object;
-
readPacket
Initializes this palette from thebuf
. Clears the preexisting data in this palette.- Parameters:
buf
- the packet byte buffer- Mappings:
Namespace Name Mixin selector named readPacket
Lnet/minecraft/world/chunk/Palette;readPacket(Lnet/minecraft/network/PacketByteBuf;)V
intermediary method_12289
Lnet/minecraft/class_2837;method_12289(Lnet/minecraft/class_2540;)V
official a
Lduq;a(Lwm;)V
-
writePacket
Writes this palette to thebuf
.- Parameters:
buf
- the packet byte buffer- Mappings:
Namespace Name Mixin selector named writePacket
Lnet/minecraft/world/chunk/Palette;writePacket(Lnet/minecraft/network/PacketByteBuf;)V
intermediary method_12287
Lnet/minecraft/class_2837;method_12287(Lnet/minecraft/class_2540;)V
official b
Lduq;b(Lwm;)V
-
getPacketSize
int getPacketSize()Returns the serialized size of this palette in a byte buf, in bytes.- Returns:
- the serialized size of this palette in a byte buf, in bytes
- Mappings:
Namespace Name Mixin selector named getPacketSize
Lnet/minecraft/world/chunk/Palette;getPacketSize()I
intermediary method_12290
Lnet/minecraft/class_2837;method_12290()I
official a
Lduq;a()I
-
getSize
int getSize()Returns the size of the palette.- Returns:
- the size of the palette
- Mappings:
Namespace Name Mixin selector named getSize
Lnet/minecraft/world/chunk/Palette;getSize()I
intermediary method_12197
Lnet/minecraft/class_2837;method_12197()I
official b
Lduq;b()I
-
copy
- Mappings:
Namespace Name Mixin selector named copy
Lnet/minecraft/world/chunk/Palette;copy()Lnet/minecraft/world/chunk/Palette;
intermediary method_39956
Lnet/minecraft/class_2837;method_39956()Lnet/minecraft/class_2837;
official c
Lduq;c()Lduq;
-