home *** CD-ROM | disk | FTP | other *** search
- package java.awt.image;
-
- public abstract class SampleModel {
- protected int width;
- protected int height;
- protected int numBands;
- protected int dataType;
-
- private static native void initIDs();
-
- public SampleModel(int var1, int var2, int var3, int var4) {
- float var5 = (float)var2 * (float)var3;
- if (var2 > 0 && var3 > 0) {
- if (var5 >= (float)Integer.MAX_VALUE) {
- throw new IllegalArgumentException("Dimensions (width=" + var2 + " height=" + var3 + ") are too large");
- } else if (var1 >= 0 && (var1 <= 5 || var1 == 32)) {
- if (var4 <= 0) {
- throw new IllegalArgumentException("Number of bands must be > 0");
- } else {
- this.dataType = var1;
- this.width = var2;
- this.height = var3;
- this.numBands = var4;
- }
- } else {
- throw new IllegalArgumentException("Unsupported dataType: " + var1);
- }
- } else {
- throw new IllegalArgumentException("Width (" + var2 + ") and height (" + this.height + ") must be > 0");
- }
- }
-
- public final int getWidth() {
- return this.width;
- }
-
- public final int getHeight() {
- return this.height;
- }
-
- public final int getNumBands() {
- return this.numBands;
- }
-
- public abstract int getNumDataElements();
-
- public final int getDataType() {
- return this.dataType;
- }
-
- public int getTransferType() {
- return this.dataType;
- }
-
- public int[] getPixel(int var1, int var2, int[] var3, DataBuffer var4) {
- int[] var5;
- if (var3 != null) {
- var5 = var3;
- } else {
- var5 = new int[this.numBands];
- }
-
- for(int var6 = 0; var6 < this.numBands; ++var6) {
- var5[var6] = this.getSample(var1, var2, var6, var4);
- }
-
- return var5;
- }
-
- public abstract Object getDataElements(int var1, int var2, Object var3, DataBuffer var4);
-
- public Object getDataElements(int var1, int var2, int var3, int var4, Object var5, DataBuffer var6) {
- int var7 = this.getTransferType();
- int var8 = this.getNumDataElements();
- int var9 = 0;
- Object var10 = null;
- switch (var7) {
- case 0:
- byte[] var12;
- if (var5 == null) {
- var12 = new byte[var8 * var3 * var4];
- } else {
- var12 = (byte[])var5;
- }
-
- for(int var13 = var2; var13 < var2 + var4; ++var13) {
- for(int var22 = var1; var22 < var1 + var3; ++var22) {
- var10 = this.getDataElements(var22, var13, var10, var6);
- byte[] var11 = (byte[])var10;
-
- for(int var23 = 0; var23 < var8; ++var23) {
- var12[var9++] = var11[var23];
- }
- }
- }
-
- var5 = var12;
- break;
- case 1:
- short[] var14;
- if (var5 == null) {
- var14 = new short[var8 * var3 * var4];
- } else {
- var14 = (short[])var5;
- }
-
- for(int var16 = var2; var16 < var2 + var4; ++var16) {
- for(int var24 = var1; var24 < var1 + var3; ++var24) {
- var10 = this.getDataElements(var24, var16, var10, var6);
- short[] var15 = (short[])var10;
-
- for(int var25 = 0; var25 < var8; ++var25) {
- var14[var9++] = var15[var25];
- }
- }
- }
-
- var5 = var14;
- case 2:
- default:
- break;
- case 3:
- int[] var17;
- if (var5 == null) {
- var17 = new int[var8 * var3 * var4];
- } else {
- var17 = (int[])var5;
- }
-
- for(int var19 = var2; var19 < var2 + var4; ++var19) {
- for(int var20 = var1; var20 < var1 + var3; ++var20) {
- var10 = this.getDataElements(var20, var19, var10, var6);
- int[] var18 = (int[])var10;
-
- for(int var21 = 0; var21 < var8; ++var21) {
- var17[var9++] = var18[var21];
- }
- }
- }
-
- var5 = var17;
- }
-
- return var5;
- }
-
- public abstract void setDataElements(int var1, int var2, Object var3, DataBuffer var4);
-
- public void setDataElements(int var1, int var2, int var3, int var4, Object var5, DataBuffer var6) {
- int var7 = 0;
- Object var8 = null;
- int var9 = this.getTransferType();
- int var10 = this.getNumDataElements();
- switch (var9) {
- case 0:
- byte[] var11 = (byte[])var5;
- byte[] var12 = new byte[var10];
-
- for(int var13 = var2; var13 < var2 + var4; ++var13) {
- for(int var22 = var1; var22 < var1 + var3; ++var22) {
- for(int var23 = 0; var23 < var10; ++var23) {
- var12[var23] = var11[var7++];
- }
-
- this.setDataElements(var22, var13, var12, var6);
- }
- }
- break;
- case 1:
- short[] var14 = (short[])var5;
- short[] var15 = new short[var10];
-
- for(int var16 = var2; var16 < var2 + var4; ++var16) {
- for(int var24 = var1; var24 < var1 + var3; ++var24) {
- for(int var25 = 0; var25 < var10; ++var25) {
- var15[var25] = var14[var7++];
- }
-
- this.setDataElements(var24, var16, var15, var6);
- }
- }
- case 2:
- default:
- break;
- case 3:
- int[] var17 = (int[])var5;
- int[] var18 = new int[var10];
-
- for(int var19 = var2; var19 < var2 + var4; ++var19) {
- for(int var20 = var1; var20 < var1 + var3; ++var20) {
- for(int var21 = 0; var21 < var10; ++var21) {
- var18[var21] = var17[var7++];
- }
-
- this.setDataElements(var20, var19, var18, var6);
- }
- }
- }
-
- }
-
- public float[] getPixel(int var1, int var2, float[] var3, DataBuffer var4) {
- float[] var5;
- if (var3 != null) {
- var5 = var3;
- } else {
- var5 = new float[this.numBands];
- }
-
- for(int var6 = 0; var6 < this.numBands; ++var6) {
- var5[var6] = this.getSampleFloat(var1, var2, var6, var4);
- }
-
- return var5;
- }
-
- public double[] getPixel(int var1, int var2, double[] var3, DataBuffer var4) {
- double[] var5;
- if (var3 != null) {
- var5 = var3;
- } else {
- var5 = new double[this.numBands];
- }
-
- for(int var6 = 0; var6 < this.numBands; ++var6) {
- var5[var6] = this.getSampleDouble(var1, var2, var6, var4);
- }
-
- return var5;
- }
-
- public int[] getPixels(int var1, int var2, int var3, int var4, int[] var5, DataBuffer var6) {
- int var8 = 0;
- int[] var7;
- if (var5 != null) {
- var7 = var5;
- } else {
- var7 = new int[this.numBands * var3 * var4];
- }
-
- for(int var9 = var2; var9 < var4 + var2; ++var9) {
- for(int var10 = var1; var10 < var3 + var1; ++var10) {
- for(int var11 = 0; var11 < this.numBands; ++var11) {
- var7[var8++] = this.getSample(var10, var9, var11, var6);
- }
- }
- }
-
- return var7;
- }
-
- public float[] getPixels(int var1, int var2, int var3, int var4, float[] var5, DataBuffer var6) {
- int var8 = 0;
- float[] var7;
- if (var5 != null) {
- var7 = var5;
- } else {
- var7 = new float[this.numBands * var3 * var4];
- }
-
- for(int var9 = var2; var9 < var4 + var2; ++var9) {
- for(int var10 = var1; var10 < var3 + var1; ++var10) {
- for(int var11 = 0; var11 < this.numBands; ++var11) {
- var7[var8++] = this.getSampleFloat(var10, var9, var11, var6);
- }
- }
- }
-
- return var7;
- }
-
- public double[] getPixels(int var1, int var2, int var3, int var4, double[] var5, DataBuffer var6) {
- int var8 = 0;
- double[] var7;
- if (var5 != null) {
- var7 = var5;
- } else {
- var7 = new double[this.numBands * var3 * var4];
- }
-
- for(int var9 = var2; var9 < var4 + var2; ++var9) {
- for(int var10 = var1; var10 < var3 + var1; ++var10) {
- for(int var11 = 0; var11 < this.numBands; ++var11) {
- var7[var8++] = this.getSampleDouble(var10, var9, var11, var6);
- }
- }
- }
-
- return var7;
- }
-
- public abstract int getSample(int var1, int var2, int var3, DataBuffer var4);
-
- public float getSampleFloat(int var1, int var2, int var3, DataBuffer var4) {
- float var5 = (float)this.getSample(var1, var2, var3, var4);
- return var5;
- }
-
- public double getSampleDouble(int var1, int var2, int var3, DataBuffer var4) {
- double var5 = (double)this.getSample(var1, var2, var3, var4);
- return var5;
- }
-
- public int[] getSamples(int var1, int var2, int var3, int var4, int var5, int[] var6, DataBuffer var7) {
- int var9 = 0;
- int[] var8;
- if (var6 != null) {
- var8 = var6;
- } else {
- var8 = new int[var3 * var4];
- }
-
- for(int var10 = var2; var10 < var4 + var2; ++var10) {
- for(int var11 = var1; var11 < var3 + var1; ++var11) {
- var8[var9++] = this.getSample(var11, var10, var5, var7);
- }
- }
-
- return var8;
- }
-
- public float[] getSamples(int var1, int var2, int var3, int var4, int var5, float[] var6, DataBuffer var7) {
- int var9 = 0;
- float[] var8;
- if (var6 != null) {
- var8 = var6;
- } else {
- var8 = new float[var3 * var4];
- }
-
- for(int var10 = var2; var10 < var4 + var2; ++var10) {
- for(int var11 = var1; var11 < var3 + var1; ++var11) {
- var8[var9++] = this.getSampleFloat(var11, var10, var5, var7);
- }
- }
-
- return var8;
- }
-
- public double[] getSamples(int var1, int var2, int var3, int var4, int var5, double[] var6, DataBuffer var7) {
- int var9 = 0;
- double[] var8;
- if (var6 != null) {
- var8 = var6;
- } else {
- var8 = new double[var3 * var4];
- }
-
- for(int var10 = var2; var10 < var2 + var4; ++var10) {
- for(int var11 = var1; var11 < var1 + var3; ++var11) {
- var8[var9++] = this.getSampleDouble(var11, var10, var5, var7);
- }
- }
-
- return var8;
- }
-
- public void setPixel(int var1, int var2, int[] var3, DataBuffer var4) {
- for(int var5 = 0; var5 < this.numBands; ++var5) {
- this.setSample(var1, var2, var5, var3[var5], var4);
- }
-
- }
-
- public void setPixel(int var1, int var2, float[] var3, DataBuffer var4) {
- for(int var5 = 0; var5 < this.numBands; ++var5) {
- this.setSample(var1, var2, var5, var3[var5], var4);
- }
-
- }
-
- public void setPixel(int var1, int var2, double[] var3, DataBuffer var4) {
- for(int var5 = 0; var5 < this.numBands; ++var5) {
- this.setSample(var1, var2, var5, var3[var5], var4);
- }
-
- }
-
- public void setPixels(int var1, int var2, int var3, int var4, int[] var5, DataBuffer var6) {
- int var7 = 0;
-
- for(int var8 = var2; var8 < var2 + var4; ++var8) {
- for(int var9 = var1; var9 < var1 + var3; ++var9) {
- for(int var10 = 0; var10 < this.numBands; ++var10) {
- this.setSample(var9, var8, var10, var5[var7++], var6);
- }
- }
- }
-
- }
-
- public void setPixels(int var1, int var2, int var3, int var4, float[] var5, DataBuffer var6) {
- int var7 = 0;
-
- for(int var8 = var2; var8 < var2 + var4; ++var8) {
- for(int var9 = var1; var9 < var1 + var3; ++var9) {
- for(int var10 = 0; var10 < this.numBands; ++var10) {
- this.setSample(var9, var8, var10, var5[var7++], var6);
- }
- }
- }
-
- }
-
- public void setPixels(int var1, int var2, int var3, int var4, double[] var5, DataBuffer var6) {
- int var7 = 0;
-
- for(int var8 = var2; var8 < var2 + var4; ++var8) {
- for(int var9 = var1; var9 < var1 + var3; ++var9) {
- for(int var10 = 0; var10 < this.numBands; ++var10) {
- this.setSample(var9, var8, var10, var5[var7++], var6);
- }
- }
- }
-
- }
-
- public abstract void setSample(int var1, int var2, int var3, int var4, DataBuffer var5);
-
- public void setSample(int var1, int var2, int var3, float var4, DataBuffer var5) {
- int var6 = (int)var4;
- this.setSample(var1, var2, var3, var6, var5);
- }
-
- public void setSample(int var1, int var2, int var3, double var4, DataBuffer var6) {
- int var7 = (int)var4;
- this.setSample(var1, var2, var3, var7, var6);
- }
-
- public void setSamples(int var1, int var2, int var3, int var4, int var5, int[] var6, DataBuffer var7) {
- int var8 = 0;
-
- for(int var9 = var2; var9 < var2 + var4; ++var9) {
- for(int var10 = var1; var10 < var1 + var3; ++var10) {
- this.setSample(var10, var9, var5, var6[var8++], var7);
- }
- }
-
- }
-
- public void setSamples(int var1, int var2, int var3, int var4, int var5, float[] var6, DataBuffer var7) {
- int var8 = 0;
-
- for(int var9 = var2; var9 < var2 + var4; ++var9) {
- for(int var10 = var1; var10 < var1 + var3; ++var10) {
- this.setSample(var10, var9, var5, var6[var8++], var7);
- }
- }
-
- }
-
- public void setSamples(int var1, int var2, int var3, int var4, int var5, double[] var6, DataBuffer var7) {
- int var8 = 0;
-
- for(int var9 = var2; var9 < var2 + var4; ++var9) {
- for(int var10 = var1; var10 < var1 + var3; ++var10) {
- this.setSample(var10, var9, var5, var6[var8++], var7);
- }
- }
-
- }
-
- public abstract SampleModel createCompatibleSampleModel(int var1, int var2);
-
- public abstract SampleModel createSubsetSampleModel(int[] var1);
-
- public abstract DataBuffer createDataBuffer();
-
- public abstract int[] getSampleSize();
-
- public abstract int getSampleSize(int var1);
-
- static {
- ColorModel.loadLibraries();
- initIDs();
- }
- }
-