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 official cxy
intermediary net/minecraft/class_2837
named net/minecraft/world/chunk/Palette
-
Nested Class Summary
Nested ClassesModifier 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 official a
Lcxy;a(Ljava/lang/Object;)I
intermediary method_12291
Lnet/minecraft/class_2837;method_12291(Ljava/lang/Object;)I
named index
Lnet/minecraft/world/chunk/Palette;index(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 official a
Lcxy;a(Ljava/util/function/Predicate;)Z
intermediary method_19525
Lnet/minecraft/class_2837;method_19525(Ljava/util/function/Predicate;)Z
named hasAny
Lnet/minecraft/world/chunk/Palette;hasAny(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 official a
Lcxy;a(I)Ljava/lang/Object;
intermediary method_12288
Lnet/minecraft/class_2837;method_12288(I)Ljava/lang/Object;
named get
Lnet/minecraft/world/chunk/Palette;get(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 official a
Lcxy;a(Lqx;)V
intermediary method_12289
Lnet/minecraft/class_2837;method_12289(Lnet/minecraft/class_2540;)V
named readPacket
Lnet/minecraft/world/chunk/Palette;readPacket(Lnet/minecraft/network/PacketByteBuf;)V
-
writePacket
Writes this palette to thebuf
.- Parameters:
buf
- the packet byte buffer- Mappings:
Namespace Name Mixin selector official b
Lcxy;b(Lqx;)V
intermediary method_12287
Lnet/minecraft/class_2837;method_12287(Lnet/minecraft/class_2540;)V
named writePacket
Lnet/minecraft/world/chunk/Palette;writePacket(Lnet/minecraft/network/PacketByteBuf;)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 official a
Lcxy;a()I
intermediary method_12290
Lnet/minecraft/class_2837;method_12290()I
named getPacketSize
Lnet/minecraft/world/chunk/Palette;getPacketSize()I
-
getSize
int getSize()Returns the size of the palette.- Returns:
- the size of the palette
- Mappings:
Namespace Name Mixin selector official b
Lcxy;b()I
intermediary method_12197
Lnet/minecraft/class_2837;method_12197()I
named getSize
Lnet/minecraft/world/chunk/Palette;getSize()I
-
copy
- Mappings:
Namespace Name Mixin selector official c
Lcxy;c()Lcxy;
intermediary method_39956
Lnet/minecraft/class_2837;method_39956()Lnet/minecraft/class_2837;
named copy
Lnet/minecraft/world/chunk/Palette;copy()Lnet/minecraft/world/chunk/Palette;
-