/* */ MarkerSegment(JPEGBuffer paramJPEGBuffer) /* */ throws IOException /* */ { /* 58 */ paramJPEGBuffer.loadBuf(3); /* 59 */ this.tag = (paramJPEGBuffer.buf[(paramJPEGBuffer.bufPtr++)] & 0xFF); /* 60 */ this.length = ((paramJPEGBuffer.buf[(paramJPEGBuffer.bufPtr++)] & 0xFF) << 8); /* 61 */ this.length |= paramJPEGBuffer.buf[(paramJPEGBuffer.bufPtr++)] & 0xFF; /* 62 */ this.length -= 2; /* 63 */ paramJPEGBuffer.bufAvail -= 3; /* */ /* 66 */ paramJPEGBuffer.loadBuf(this.length); /* */ }
JFIFExtensionMarkerSegment(JPEGBuffer buffer, JPEGImageReader reader) throws IOException { super(buffer); buffer.bufPtr += ID_SIZE; // skip the id, we already checked it code = buffer.buf[buffer.bufPtr++] & 0xff; buffer.bufAvail -= DATA_SIZE; if (code == THUMB_JPEG) { thumb = new JFIFThumbJPEG(buffer, length, reader); } else { buffer.loadBuf(2); int thumbX = buffer.buf[buffer.bufPtr++] & 0xff; int thumbY = buffer.buf[buffer.bufPtr++] & 0xff; buffer.bufAvail -= 2; // following constructors handle bufAvail if (code == THUMB_PALETTE) { thumb = new JFIFThumbPalette(buffer, thumbX, thumbY); } else { thumb = new JFIFThumbRGB(buffer, thumbX, thumbY); } } }