Renamed MonochromeImageCache

This commit is contained in:
Pazaz 2022-06-27 17:03:50 -04:00
parent ac4878cf51
commit 7a3a0cd614
4 changed files with 55 additions and 54 deletions

View file

@ -13,32 +13,33 @@ public final class MonochromeImageCache {
@OriginalMember(owner = "client!a", name = "b", descriptor = "[I")
public static final int[] anIntArray1 = new int[4096];
@OriginalMember(owner = "client!bc", name = "N", descriptor = "Lclient!lb;")
public static final MonochromeImageCache_Class3_Sub23 aClass3_Sub23_1 = new MonochromeImageCache_Class3_Sub23(0, 0);
public static final MonochromeImageCacheEntry entry = new MonochromeImageCacheEntry(0, 0);
@OriginalMember(owner = "client!nd", name = "f", descriptor = "I")
private int anInt4062 = -1;
private int singleRow = -1;
@OriginalMember(owner = "client!nd", name = "k", descriptor = "I")
private int anInt4066 = 0;
private int size = 0;
@OriginalMember(owner = "client!nd", name = "g", descriptor = "Lclient!ih;")
private LinkedList aClass69_96 = new LinkedList();
private LinkedList recentlyUsed = new LinkedList();
@OriginalMember(owner = "client!nd", name = "w", descriptor = "Z")
public boolean invalid = false;
@OriginalMember(owner = "client!nd", name = "l", descriptor = "I")
private final int anInt4067;
private final int height;
@OriginalMember(owner = "client!nd", name = "i", descriptor = "I")
private final int anInt4064;
private final int capacity;
@OriginalMember(owner = "client!nd", name = "o", descriptor = "[Lclient!lb;")
private MonochromeImageCache_Class3_Sub23[] aClass3_Sub23Array1;
private MonochromeImageCacheEntry[] entries;
@OriginalMember(owner = "client!nd", name = "a", descriptor = "[[[I")
private int[][][] anIntArrayArrayArray13;
private int[][][] pixels;
static {
@Pc(8) int local8 = 0;
@ -54,11 +55,11 @@ public final class MonochromeImageCache {
}
@OriginalMember(owner = "client!nd", name = "<init>", descriptor = "(III)V")
public MonochromeImageCache(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) {
this.anInt4067 = arg1;
this.anInt4064 = arg0;
this.aClass3_Sub23Array1 = new MonochromeImageCache_Class3_Sub23[this.anInt4067];
this.anIntArrayArrayArray13 = new int[this.anInt4064][3][arg2];
public MonochromeImageCache(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int width) {
this.height = arg1;
this.capacity = arg0;
this.entries = new MonochromeImageCacheEntry[this.height];
this.pixels = new int[this.capacity][3][width];
}
@OriginalMember(owner = "client!we", name = "a", descriptor = "(BI)I")
@ -70,59 +71,59 @@ public final class MonochromeImageCache {
}
@OriginalMember(owner = "client!nd", name = "a", descriptor = "(B)[[[I")
public final int[][][] method3168() {
if (this.anInt4067 != this.anInt4064) {
public final int[][][] get() {
if (this.height != this.capacity) {
throw new RuntimeException("Can only retrieve a full image cache");
}
for (@Pc(27) int local27 = 0; local27 < this.anInt4064; local27++) {
this.aClass3_Sub23Array1[local27] = aClass3_Sub23_1;
for (@Pc(27) int local27 = 0; local27 < this.capacity; local27++) {
this.entries[local27] = entry;
}
return this.anIntArrayArrayArray13;
return this.pixels;
}
@OriginalMember(owner = "client!nd", name = "b", descriptor = "(B)V")
public final void method3169() {
for (@Pc(7) int local7 = 0; local7 < this.anInt4064; local7++) {
this.anIntArrayArrayArray13[local7][0] = null;
this.anIntArrayArrayArray13[local7][1] = null;
this.anIntArrayArrayArray13[local7][2] = null;
this.anIntArrayArrayArray13[local7] = null;
public final void clear() {
for (@Pc(7) int local7 = 0; local7 < this.capacity; local7++) {
this.pixels[local7][0] = null;
this.pixels[local7][1] = null;
this.pixels[local7][2] = null;
this.pixels[local7] = null;
}
this.aClass3_Sub23Array1 = null;
this.anIntArrayArrayArray13 = null;
this.aClass69_96.clear();
this.aClass69_96 = null;
this.entries = null;
this.pixels = null;
this.recentlyUsed.clear();
this.recentlyUsed = null;
}
@OriginalMember(owner = "client!nd", name = "a", descriptor = "(BI)[[I")
public final int[][] get(@OriginalArg(1) int arg0) {
if (this.anInt4064 == this.anInt4067) {
this.invalid = this.aClass3_Sub23Array1[arg0] == null;
this.aClass3_Sub23Array1[arg0] = aClass3_Sub23_1;
return this.anIntArrayArrayArray13[arg0];
} else if (this.anInt4064 == 1) {
this.invalid = this.anInt4062 != arg0;
this.anInt4062 = arg0;
return this.anIntArrayArrayArray13[0];
if (this.capacity == this.height) {
this.invalid = this.entries[arg0] == null;
this.entries[arg0] = entry;
return this.pixels[arg0];
} else if (this.capacity == 1) {
this.invalid = this.singleRow != arg0;
this.singleRow = arg0;
return this.pixels[0];
} else {
@Pc(44) MonochromeImageCache_Class3_Sub23 local44 = this.aClass3_Sub23Array1[arg0];
@Pc(44) MonochromeImageCacheEntry local44 = this.entries[arg0];
if (local44 == null) {
this.invalid = true;
if (this.anInt4066 < this.anInt4064) {
local44 = new MonochromeImageCache_Class3_Sub23(arg0, this.anInt4066);
this.anInt4066++;
if (this.size < this.capacity) {
local44 = new MonochromeImageCacheEntry(arg0, this.size);
this.size++;
} else {
@Pc(80) MonochromeImageCache_Class3_Sub23 local80 = (MonochromeImageCache_Class3_Sub23) this.aClass69_96.tail();
local44 = new MonochromeImageCache_Class3_Sub23(arg0, local80.anInt3468);
this.aClass3_Sub23Array1[local80.anInt3476] = null;
@Pc(80) MonochromeImageCacheEntry local80 = (MonochromeImageCacheEntry) this.recentlyUsed.tail();
local44 = new MonochromeImageCacheEntry(arg0, local80.row);
this.entries[local80.index] = null;
local80.unlink();
}
this.aClass3_Sub23Array1[arg0] = local44;
this.entries[arg0] = local44;
} else {
this.invalid = false;
}
this.aClass69_96.addHead(local44);
return this.anIntArrayArrayArray13[local44.anInt3468];
this.recentlyUsed.addHead(local44);
return this.pixels[local44.row];
}
}
}

View file

@ -5,17 +5,17 @@ import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
@OriginalClass("client!lb")
public final class MonochromeImageCache_Class3_Sub23 extends Node {
public final class MonochromeImageCacheEntry extends Node {
@OriginalMember(owner = "client!lb", name = "t", descriptor = "I")
public final int anInt3468;
public final int row;
@OriginalMember(owner = "client!lb", name = "C", descriptor = "I")
public final int anInt3476;
public final int index;
@OriginalMember(owner = "client!lb", name = "<init>", descriptor = "(II)V")
public MonochromeImageCache_Class3_Sub23(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
this.anInt3468 = arg1;
this.anInt3476 = arg0;
public MonochromeImageCacheEntry(@OriginalArg(0) int index, @OriginalArg(1) int row) {
this.row = row;
this.index = index;
}
}

View file

@ -91,7 +91,7 @@ public abstract class TextureOp extends Node {
this.monochromeImageCache.clear();
this.monochromeImageCache = null;
} else {
this.colorImageCache.method3169();
this.colorImageCache.clear();
this.colorImageCache = null;
}
}

View file

@ -97,7 +97,7 @@ public final class TextureOp29 extends TextureOp {
@Pc(20) int local20 = Texture.width;
@Pc(22) int local22 = Texture.height;
@Pc(26) int[][] local26 = new int[local22][local20];
@Pc(31) int[][][] local31 = this.colorImageCache.method3168();
@Pc(31) int[][][] local31 = this.colorImageCache.get();
this.method3934(local26);
for (@Pc(37) int local37 = 0; local37 < Texture.height; local37++) {
@Pc(44) int[] local44 = local26[local37];