From 36295808688ff6360e22846b3a9017740bf36719 Mon Sep 17 00:00:00 2001 From: Tahg Date: Mon, 7 Feb 2011 00:56:07 -0500 Subject: Chunk fetching improvements --- src/main/java/net/minecraft/server/LongHash.java | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/main/java/net/minecraft/server/LongHash.java (limited to 'src/main/java/net/minecraft/server/LongHash.java') diff --git a/src/main/java/net/minecraft/server/LongHash.java b/src/main/java/net/minecraft/server/LongHash.java new file mode 100644 index 00000000..06da49ab --- /dev/null +++ b/src/main/java/net/minecraft/server/LongHash.java @@ -0,0 +1,36 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package net.minecraft.server; + +/** + * + * @author Nathan + */ +public abstract class LongHash { + static long toLong(int msw, int lsw) { + return ((long)msw << 32) + lsw - Integer.MIN_VALUE; + } + + static int msw(long l) { + return (int) (l >> 32); + } + + static int lsw(long l) { + return (int) (l & 0xFFFFFFFF) + Integer.MIN_VALUE; + } + + public boolean containsKey(int msw, int lsw) { + return containsKey(toLong(msw, lsw)); + } + + public void remove(int msw, int lsw) { + remove(toLong(msw, lsw)); + } + + public abstract boolean containsKey(long key); + + public abstract void remove(long key); +} -- cgit v1.2.3