2003-05-13 Michael Koch <konqueror@gmx.de>

* gnu/java/nio/CharViewBufferImpl.java
	(CharViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/DoubleViewBufferImpl.java
	(DoubleViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/FloatViewBufferImpl.java
	(FloatViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/IntViewBufferImpl.java
	(IntViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/LongViewBufferImpl.java
	(LongViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/ShortViewBufferImpl.java
	(ShortViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.

From-SVN: r66780
This commit is contained in:
Michael Koch 2003-05-13 20:11:02 +00:00 committed by Michael Koch
parent 03307888f7
commit d24273abda
7 changed files with 69 additions and 30 deletions

View file

@ -62,8 +62,9 @@ class ShortViewBufferImpl extends ShortBuffer
int limit, int position, int mark,
boolean readOnly)
{
super (limit, limit, offset, position);
super (limit >> 1, limit >> 1, position >> 1, mark >> 1);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
// FIXME: What if this is called from ShortViewBufferImpl and ByteBuffer has changed its endianess ?
this.endian = bb.order ();
@ -71,25 +72,26 @@ class ShortViewBufferImpl extends ShortBuffer
public short get ()
{
short result = bb.getShort ((position () >> 1) + offset);
short result = bb.getShort ((position () << 1) + offset);
position (position () + 1);
return result;
}
public short get (int index)
{
return bb.getShort ((index >> 1) + offset);
return bb.getShort ((index << 1) + offset);
}
public ShortBuffer put (short value)
{
bb.putShort ((position () >> 1) + offset, value);
bb.putShort ((position () << 1) + offset, value);
position (position () + 1);
return this;
}
public ShortBuffer put (int index, short value)
{
bb.putShort ((index >> 1) + offset, value);
bb.putShort ((index << 1) + offset, value);
return this;
}