aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java')
-rw-r--r--src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java64
1 files changed, 0 insertions, 64 deletions
diff --git a/src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java b/src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java
deleted file mode 100644
index 7c418b5a77..0000000000
--- a/src/Java/gtPlusPlus/api/objects/minecraft/SafeTexture.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package gtPlusPlus.api.objects.minecraft;
-
-import java.util.HashMap;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import gregtech.api.GregTech_API;
-import gtPlusPlus.core.util.Utils;
-import net.minecraft.util.IIcon;
-
-/**
- * A Server Side safe object that can hold {@link IIcon}s.
- * @author Alkalus
- *
- */
-public class SafeTexture implements Runnable {
-
- @SideOnly(Side.CLIENT)
- private static final HashMap<Integer, IIcon> mHashToIconCache = new HashMap<Integer, IIcon>();
-
- @SideOnly(Side.CLIENT)
- private static final HashMap<String, Integer> mPathToHashCash = new HashMap<String, Integer>();
-
- private static final HashMap<String, SafeTexture> mTextureObjectCache = new HashMap<String, SafeTexture>();
-
- private final int mHash;
-
- private final String mTextureName;
-
- private final static String getKey(String aTexPath) {
- String aNameKey = Utils.sanitizeString(aTexPath);
- aNameKey = aNameKey.replace('/', ' ');
- aNameKey = aNameKey.toLowerCase();
- return aNameKey;
- }
-
- public static SafeTexture register(String aTexturePath) {
- String aNameKey = getKey(aTexturePath);
- SafeTexture g = mTextureObjectCache.get(aNameKey);
- if (g == null) {
- g = new SafeTexture(aTexturePath);
- mTextureObjectCache.put(aNameKey, g);
- mPathToHashCash.put(aTexturePath, aTexturePath.hashCode());
- }
- return g;
- }
-
- private SafeTexture(String aTexturePath) {
- mTextureName = aTexturePath;
- mHash = getKey(aTexturePath).hashCode();
- GregTech_API.sGTBlockIconload.add(this);
- }
-
- @SideOnly(Side.CLIENT)
- public IIcon getIcon() {
- return mHashToIconCache.get(mHash);
- }
-
- @Override
- public void run() {
- mHashToIconCache.put(getKey(mTextureName).hashCode(), GregTech_API.sBlockIcons.registerIcon(mTextureName));
- }
-
-}