< prev index next >
src/java.desktop/share/classes/java/awt/image/DataBufferShort.java
Print this page
*** 36,46 ****
package java.awt.image;
import static sun.java2d.StateTrackable.State.*;
/**
! * This class extends <CODE>DataBuffer</CODE> and stores data internally as shorts.
* <p>
* <a name="optimizations">
* Note that some implementations may function more efficiently
* if they can maintain control over how the data for an image is
* stored.
--- 36,46 ----
package java.awt.image;
import static sun.java2d.StateTrackable.State.*;
/**
! * This class extends {@code DataBuffer} and stores data internally as shorts.
* <p>
* <a name="optimizations">
* Note that some implementations may function more efficiently
* if they can maintain control over how the data for an image is
* stored.
*** 62,89 ****
/** All data banks */
short bankdata[][];
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with a single bank and the
* specified size.
*
! * @param size The size of the <CODE>DataBuffer</CODE>.
*/
public DataBufferShort(int size) {
super(STABLE, TYPE_SHORT,size);
data = new short[size];
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with the specified number of
* banks all of which are the specified size.
*
! * @param size The size of the banks in the <CODE>DataBuffer</CODE>.
! * @param numBanks The number of banks in the a<CODE>DataBuffer</CODE>.
*/
public DataBufferShort(int size, int numBanks) {
super(STABLE, TYPE_SHORT,size,numBanks);
bankdata = new short[numBanks][];
for (int i= 0; i < numBanks; i++) {
--- 62,89 ----
/** All data banks */
short bankdata[][];
/**
! * Constructs a short-based {@code DataBuffer} with a single bank and the
* specified size.
*
! * @param size The size of the {@code DataBuffer}.
*/
public DataBufferShort(int size) {
super(STABLE, TYPE_SHORT,size);
data = new short[size];
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based {@code DataBuffer} with the specified number of
* banks all of which are the specified size.
*
! * @param size The size of the banks in the {@code DataBuffer}.
! * @param numBanks The number of banks in the a {@code DataBuffer}.
*/
public DataBufferShort(int size, int numBanks) {
super(STABLE, TYPE_SHORT,size,numBanks);
bankdata = new short[numBanks][];
for (int i= 0; i < numBanks; i++) {
*** 91,181 ****
}
data = bankdata[0];
}
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with a single bank using the
* specified array.
! * Only the first <CODE>size</CODE> elements should be used by accessors of
! * this <CODE>DataBuffer</CODE>. <CODE>dataArray</CODE> must be large enough to
! * hold <CODE>size</CODE> elements.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short array for the <CODE>DataBuffer</CODE>.
! * @param size The size of the <CODE>DataBuffer</CODE> bank.
*/
public DataBufferShort(short dataArray[], int size) {
super(UNTRACKABLE, TYPE_SHORT, size);
data = dataArray;
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with a single bank using the
! * specified array, size, and offset. <CODE>dataArray</CODE> must have at least
! * <CODE>offset</CODE> + <CODE>size</CODE> elements. Only elements <CODE>offset</CODE>
! * through <CODE>offset</CODE> + <CODE>size</CODE> - 1
! * should be used by accessors of this <CODE>DataBuffer</CODE>.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short array for the <CODE>DataBuffer</CODE>.
! * @param size The size of the <CODE>DataBuffer</CODE> bank.
! * @param offset The offset into the <CODE>dataArray</CODE>.
*/
public DataBufferShort(short dataArray[], int size, int offset) {
super(UNTRACKABLE, TYPE_SHORT, size, 1, offset);
data = dataArray;
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with the specified arrays.
! * The number of banks will be equal to <CODE>dataArray.length</CODE>.
! * Only the first <CODE>size</CODE> elements of each array should be used by
! * accessors of this <CODE>DataBuffer</CODE>.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short arrays for the <CODE>DataBuffer</CODE>.
! * @param size The size of the banks in the <CODE>DataBuffer</CODE>.
*/
public DataBufferShort(short dataArray[][], int size) {
super(UNTRACKABLE, TYPE_SHORT, size, dataArray.length);
bankdata = dataArray.clone();
data = bankdata[0];
}
/**
! * Constructs a short-based <CODE>DataBuffer</CODE> with the specified arrays, size,
* and offsets.
! * The number of banks is equal to <CODE>dataArray.length</CODE>. Each array must
! * be at least as large as <CODE>size</CODE> + the corresponding offset. There must
! * be an entry in the offset array for each <CODE>dataArray</CODE> entry. For each
! * bank, only elements <CODE>offset</CODE> through
! * <CODE>offset</CODE> + <CODE>size</CODE> - 1 should be
! * used by accessors of this <CODE>DataBuffer</CODE>.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short arrays for the <CODE>DataBuffer</CODE>.
! * @param size The size of the banks in the <CODE>DataBuffer</CODE>.
* @param offsets The offsets into each array.
*/
public DataBufferShort(short dataArray[][], int size, int offsets[]) {
super(UNTRACKABLE, TYPE_SHORT, size, dataArray.length, offsets);
bankdata = dataArray.clone();
--- 91,181 ----
}
data = bankdata[0];
}
/**
! * Constructs a short-based {@code DataBuffer} with a single bank using the
* specified array.
! * Only the first {@code size} elements should be used by accessors of
! * this {@code DataBuffer}. {@code dataArray} must be large enough to
! * hold {@code size} elements.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short array for the {@code DataBuffer}.
! * @param size The size of the {@code DataBuffer} bank.
*/
public DataBufferShort(short dataArray[], int size) {
super(UNTRACKABLE, TYPE_SHORT, size);
data = dataArray;
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based {@code DataBuffer} with a single bank using the
! * specified array, size, and offset. {@code dataArray} must have at least
! * {@code offset} + {@code size} elements. Only elements {@code offset}
! * through {@code offset} + {@code size} - 1
! * should be used by accessors of this {@code DataBuffer}.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short array for the {@code DataBuffer}.
! * @param size The size of the {@code DataBuffer} bank.
! * @param offset The offset into the {@code dataArray}.
*/
public DataBufferShort(short dataArray[], int size, int offset) {
super(UNTRACKABLE, TYPE_SHORT, size, 1, offset);
data = dataArray;
bankdata = new short[1][];
bankdata[0] = data;
}
/**
! * Constructs a short-based {@code DataBuffer} with the specified arrays.
! * The number of banks will be equal to {@code dataArray.length}.
! * Only the first {@code size} elements of each array should be used by
! * accessors of this {@code DataBuffer}.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short arrays for the {@code DataBuffer}.
! * @param size The size of the banks in the {@code DataBuffer}.
*/
public DataBufferShort(short dataArray[][], int size) {
super(UNTRACKABLE, TYPE_SHORT, size, dataArray.length);
bankdata = dataArray.clone();
data = bankdata[0];
}
/**
! * Constructs a short-based {@code DataBuffer} with the specified arrays, size,
* and offsets.
! * The number of banks is equal to {@code dataArray.length}. Each array must
! * be at least as large as {@code size} + the corresponding offset. There must
! * be an entry in the offset array for each {@code dataArray} entry. For each
! * bank, only elements {@code offset} through
! * {@code offset} + {@code size} - 1 should be
! * used by accessors of this {@code DataBuffer}.
* <p>
* Note that {@code DataBuffer} objects created by this constructor
* may be incompatible with <a href="#optimizations">performance
* optimizations</a> used by some implementations (such as caching
* an associated image in video memory).
*
! * @param dataArray The short arrays for the {@code DataBuffer}.
! * @param size The size of the banks in the {@code DataBuffer}.
* @param offsets The offsets into each array.
*/
public DataBufferShort(short dataArray[][], int size, int offsets[]) {
super(UNTRACKABLE, TYPE_SHORT, size, dataArray.length, offsets);
bankdata = dataArray.clone();
< prev index next >