|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.awt.image.DataBuffer
このクラスは、1 つ以上のデータ配列をラップするためのものです。DataBuffer にある各データ配列のことを、バンクと呼びます。DataBuffer のバンクの要素を取得および設定するための各アクセス用メソッドは、バンク指示子の有無にかかわらず存在します。バンク指示子のないメソッドは、デフォルトの 0 番目のバンクを使います。必要に応じて DataBuffer はバンクごとのオフセットをとることができ、これによって既存の配列のデータを、たとえそれが配列位置の 0 から始まっていなくても利用することができます。バンクの 0 番目の要素のオフセットの取得または設定には、配列の (0+offset) 番目の要素を使います。size のフィールドには、利用できるデータ配列の範囲を指定します。指定されたバンクの size + offset の値は、それに関連したデータ配列の長さの範囲内にする必要があります。データバッファのデータタイプは、データ配列のタイプを表すほかに、追加セマンティクスも表す場合があります。たとえば、符号なし 8 ビットデータを byte 配列の要素に格納する場合があります。データタイプは、TYPE_UNDEFINED か、以下に定義するタイプの 1 つを指定できます。今後は、ほかのタイプも追加される可能性があります。一般には、クラス DataBuffer のオブジェクトをそのデータタイプ固有のサブクラスの 1 つにキャストダウンして、データタイプ固有のメソッドにアクセスすることでパフォーマンスを向上させることができます。現在、Java 2D(tm) API のイメージ関連のクラスでは、イメージデータの格納には、DataBuffer の TYPE_BYTE、TYPE_USHORT、および TYPE_INT のみを使います。
Raster
,
SampleModel
フィールドの概要 | |
protected int |
banks
この DataBuffer のバンク数です。 |
protected int |
dataType
この DataBuffer のデータタイプです。 |
protected int |
offset
最初の要素の取得元のデフォルト (最初の) バンクへのオフセットです。 |
protected int[] |
offsets
すべてのバンクへのオフセットです。 |
protected int |
size
すべてのバンクの使用できるサイズです。 |
static int |
TYPE_BYTE
符号なし byte データ用のタグです。 |
static int |
TYPE_DOUBLE
double データ用のタグです。 |
static int |
TYPE_FLOAT
float データ用のタグです。 |
static int |
TYPE_INT
int データ用のタグです。 |
static int |
TYPE_SHORT
符号あり short データ用のタグです。 |
static int |
TYPE_UNDEFINED
undefined データ用のタグです。 |
static int |
TYPE_USHORT
符号なし short データ用のタグです。 |
コンストラクタの概要 | |
protected |
DataBuffer(int dataType,
int size)
指定されたデータタイプおよびサイズのバンクを 1 つ格納する DataBuffer を構築します。 |
protected |
DataBuffer(int dataType,
int size,
int numBanks)
指定された数のバンクを格納する DataBuffer を構築します。 |
protected |
DataBuffer(int dataType,
int size,
int numBanks,
int offset)
指定された数のバンクを格納する DataBuffer を構築します。 |
protected |
DataBuffer(int dataType,
int size,
int numBanks,
int[] offsets)
指定された数のバンクを格納する DataBuffer を構築します。 |
メソッドの概要 | |
int |
getDataType()
この DataBuffer のデータタイプを返します。 |
static int |
getDataTypeSize(int type)
datatype のタグに応じて、データタイプのサイズをビット単位で返します。 |
int |
getElem(int i)
要求されたデータ配列要素を、最初の (デフォルトの) バンクから int として返します。 |
abstract int |
getElem(int bank,
int i)
要求されたデータ配列要素を、指定されたバンクから int として返します。 |
double |
getElemDouble(int i)
要求されたデータ配列要素を、最初の (デフォルトの) バンクから double として返します。 |
double |
getElemDouble(int bank,
int i)
要求されたデータ配列要素を、指定されたバンクから double として返します。 |
float |
getElemFloat(int i)
要求されたデータ配列要素を、最初の (デフォルトの) バンクから float として返します。 |
float |
getElemFloat(int bank,
int i)
要求されたデータ配列要素を、指定されたバンクから float として返します。 |
int |
getNumBanks()
この DataBuffer にあるバンク数を返します。 |
int |
getOffset()
デフォルトバンクのオフセットを配列要素数で返します。 |
int[] |
getOffsets()
すべてのバンクのオフセットを配列要素数で返します。 |
int |
getSize()
すべてのバンクのサイズを配列要素数で返します。 |
void |
setElem(int i,
int val)
最初の (デフォルトの) バンクにある要求されたデータ配列要素を、指定された int から設定します。 |
abstract void |
setElem(int bank,
int i,
int val)
指定されたバンクにある要求されたデータ配列要素を、指定された int 値で設定します。 |
void |
setElemDouble(int i,
double val)
最初の (デフォルトの) バンクにある要求されたデータ配列要素を、指定された double 値で設定します。 |
void |
setElemDouble(int bank,
int i,
double val)
指定されたバンクにある要求されたデータ配列要素を、指定された double 値で設定します。 |
void |
setElemFloat(int i,
float val)
最初の (デフォルトの) バンクにある要求されたデータ配列要素を、指定された float 値で設定します。 |
void |
setElemFloat(int bank,
int i,
float val)
指定されたバンクにある要求されたデータ配列要素を、指定された float 値で設定します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
public static final int TYPE_BYTE
public static final int TYPE_USHORT
public static final int TYPE_SHORT
public static final int TYPE_INT
public static final int TYPE_FLOAT
public static final int TYPE_DOUBLE
public static final int TYPE_UNDEFINED
protected int dataType
protected int banks
protected int offset
protected int size
protected int[] offsets
コンストラクタの詳細 |
protected DataBuffer(int dataType, int size)
dataType
- この DataBuffer
のデータタイプsize
- バンクのサイズprotected DataBuffer(int dataType, int size, int numBanks)
dataType
- この DataBuffer
のデータタイプsize
- バンクのサイズnumBanks
- この DataBuffer
内のバンク数protected DataBuffer(int dataType, int size, int numBanks, int offset)
dataType
- この DataBuffer
のデータタイプsize
- バンクのサイズnumBanks
- この DataBuffer
内のバンク数offset
- 各バンクのオフセットprotected DataBuffer(int dataType, int size, int numBanks, int[] offsets)
dataType
- この DataBuffer
のデータタイプsize
- バンクのサイズnumBanks
- この DataBuffer
内のバンク数offsets
- 各バンクのオフセットを格納する配列ArrayIndexOutOfBoundsException
- numBanks
が offsets
の長さと等しくない場合メソッドの詳細 |
public static int getDataTypeSize(int type)
type
- 定義されたデータタイプタグの 1 つの値IllegalArgumentException
- type
がゼロより小さいか、TYPE_DOUBLE
より大きい場合public int getDataType()
public int getSize()
public int getOffset()
public int[] getOffsets()
public int getNumBanks()
public int getElem(int i)
public abstract int getElem(int bank, int i)
public void setElem(int i, int val)
public abstract void setElem(int bank, int i, int val)
public float getElemFloat(int i)
public float getElemFloat(int bank, int i)
public void setElemFloat(int i, float val)
public void setElemFloat(int bank, int i, float val)
public double getElemDouble(int i)
public double getElemDouble(int bank, int i)
public void setElemDouble(int i, double val)
public void setElemDouble(int bank, int i, double val)
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.