src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java
Print this page
rev 9230 : imported patch 8033716
@@ -105,11 +105,11 @@
private ColorModel srcCM = null;
/**
* If there are thumbnails to be written, this is the list.
*/
- private List thumbnails = null;
+ private List<? extends BufferedImage> thumbnails = null;
/**
* If metadata should include an icc profile, store it here.
*/
private ICC_Profile iccProfile = null;
@@ -1392,28 +1392,28 @@
* IJG libray. It is much simpler to parse out this
* data in Java and then just copy the data in C.
*/
private int [] collectScans(JPEGMetadata metadata,
SOFMarkerSegment sof) {
- List segments = new ArrayList();
+ List<SOSMarkerSegment> segments = new ArrayList<>();
int SCAN_SIZE = 9;
int MAX_COMPS_PER_SCAN = 4;
- for (Iterator iter = metadata.markerSequence.iterator();
+ for (Iterator<MarkerSegment> iter = metadata.markerSequence.iterator();
iter.hasNext();) {
- MarkerSegment seg = (MarkerSegment) iter.next();
+ MarkerSegment seg = iter.next();
if (seg instanceof SOSMarkerSegment) {
- segments.add(seg);
+ segments.add((SOSMarkerSegment) seg);
}
}
int [] retval = null;
numScans = 0;
if (!segments.isEmpty()) {
numScans = segments.size();
retval = new int [numScans*SCAN_SIZE];
int index = 0;
for (int i = 0; i < numScans; i++) {
- SOSMarkerSegment sos = (SOSMarkerSegment) segments.get(i);
+ SOSMarkerSegment sos = segments.get(i);
retval[index++] = sos.componentSpecs.length; // num comps
for (int j = 0; j < MAX_COMPS_PER_SCAN; j++) {
if (j < sos.componentSpecs.length) {
int compSel = sos.componentSpecs[j].componentSelector;
for (int k = 0; k < sof.componentSpecs.length; k++) {
@@ -1439,14 +1439,14 @@
* Finds all DQT marker segments and returns all the q
* tables as a single array of JPEGQTables.
*/
private JPEGQTable [] collectQTablesFromMetadata
(JPEGMetadata metadata) {
- ArrayList tables = new ArrayList();
- Iterator iter = metadata.markerSequence.iterator();
+ ArrayList<DQTMarkerSegment.Qtable> tables = new ArrayList<>();
+ Iterator<MarkerSegment> iter = metadata.markerSequence.iterator();
while (iter.hasNext()) {
- MarkerSegment seg = (MarkerSegment) iter.next();
+ MarkerSegment seg = iter.next();
if (seg instanceof DQTMarkerSegment) {
DQTMarkerSegment dqt =
(DQTMarkerSegment) seg;
tables.addAll(dqt.tables);
}
@@ -1454,11 +1454,11 @@
JPEGQTable [] retval = null;
if (tables.size() != 0) {
retval = new JPEGQTable[tables.size()];
for (int i = 0; i < retval.length; i++) {
retval[i] =
- new JPEGQTable(((DQTMarkerSegment.Qtable)tables.get(i)).data);
+ new JPEGQTable(tables.get(i).data);
}
}
return retval;
}
@@ -1469,20 +1469,18 @@
* will be thrown when two Huffman tables with the same
* table id are encountered.
*/
private JPEGHuffmanTable[] collectHTablesFromMetadata
(JPEGMetadata metadata, boolean wantDC) throws IIOException {
- ArrayList tables = new ArrayList();
- Iterator iter = metadata.markerSequence.iterator();
+ ArrayList<DHTMarkerSegment.Htable> tables = new ArrayList<>();
+ Iterator<MarkerSegment> iter = metadata.markerSequence.iterator();
while (iter.hasNext()) {
- MarkerSegment seg = (MarkerSegment) iter.next();
+ MarkerSegment seg = iter.next();
if (seg instanceof DHTMarkerSegment) {
- DHTMarkerSegment dht =
- (DHTMarkerSegment) seg;
+ DHTMarkerSegment dht = (DHTMarkerSegment) seg;
for (int i = 0; i < dht.tables.size(); i++) {
- DHTMarkerSegment.Htable htable =
- (DHTMarkerSegment.Htable) dht.tables.get(i);
+ DHTMarkerSegment.Htable htable = dht.tables.get(i);
if (htable.tableClass == (wantDC ? 0 : 1)) {
tables.add(htable);
}
}
}
@@ -1660,12 +1658,12 @@
////////////// End of ColorSpace conversion
////////////// Native methods and callbacks
/** Sets up static native structures. */
- private static native void initWriterIDs(Class qTableClass,
- Class huffClass);
+ private static native void initWriterIDs(Class<?> qTableClass,
+ Class<?> huffClass);
/** Sets up per-writer native structure and returns a pointer to it. */
private native long initJPEGImageWriter();
/** Sets up native structures for output stream */