harness.checkPoint("(int, int, Object, DataBuffer(Byte))");
SinglePixelPackedSampleModel m1 = new SinglePixelPackedSampleModel(
DataBuffer.TYPE_BYTE, 2, 3, new int[] { 0xF0, 0x0F }
);
byte[] b = new byte[] { (byte) 0x11, (byte) 0x22, (byte) 0x33, (byte) 0x44, (byte) 0x55, (byte) 0x66 };
DataBuffer db = new DataBufferByte(b, 6);
// set a value
m1.setPixel(0, 0, new int[] { 0x0C, 0x07 }, db);
m1.setPixel(1, 0, new int[] { 0x0B, 0x08 }, db);
m1.setPixel(0, 1, new int[] { 0x0A, 0x09 }, db);
m1.setPixel(1, 1, new int[] { 0x09, 0x0A }, db);
m1.setPixel(0, 2, new int[] { 0x08, 0x0B }, db);
m1.setPixel(1, 2, new int[] { 0x07, 0x0C }, db);
harness.check(db.getElem(0), 0xC7);
harness.check(db.getElem(1), 0xB8);
harness.check(db.getElem(2), 0xA9);
harness.check(db.getElem(3), 0x9A);
harness.check(db.getElem(4), 0x8B);
harness.check(db.getElem(5), 0x7C);
// set a value with non-standard scanline stride
SinglePixelPackedSampleModel m2 = new SinglePixelPackedSampleModel(
DataBuffer.TYPE_BYTE, 2, 2, 3, new int[] { 0xF0, 0x0F }
);
m2.setPixel(0, 0, new int[] { 0x04, 0x01 }, db);
m2.setPixel(1, 0, new int[] { 0x03, 0x02 }, db);
m2.setPixel(0, 1, new int[] { 0x02, 0x03 }, db);
m2.setPixel(1, 1, new int[] { 0x01, 0x04 }, db);
harness.check(db.getElem(0), 0x41);
harness.check(db.getElem(1), 0x32);
harness.check(db.getElem(3), 0x23);
harness.check(db.getElem(4), 0x14);
// set a value with x < 0
try
{
m1.setPixel(-1, 0, new int[] { 0x10, 0x01 }, db);