- /*
- * @(#)Direct-X-Buffer.java 1.45 03/04/23
- *
- * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
- * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
- */
-
- // -- This file was mechanically generated: Do not edit! -- //
-
- package java.nio;
-
- import sun.misc.Cleaner;
- import sun.misc.Unsafe;
- import sun.nio.ch.DirectBuffer;
- import sun.nio.ch.FileChannelImpl;
-
-
- class DirectByteBufferR
-
-
-
- extends DirectByteBuffer
-
- implements DirectBuffer
- {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // Primary constructor
- //
- DirectByteBufferR(int cap) { // package-private
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- super(cap);
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
- // For memory-mapped buffers -- invoked by FileChannelImpl via reflection
- //
- protected DirectByteBufferR(int cap, long addr, Runnable unmapper) {
-
-
-
-
-
-
- super(cap, addr, unmapper);
-
- }
-
-
-
- // For duplicates and slices
- //
- DirectByteBufferR(DirectBuffer db, // package-private
- int mark, int pos, int lim, int cap,
- int off)
- {
-
-
-
-
-
-
-
-
- super(db, mark, pos, lim, cap, off);
-
- }
-
- public ByteBuffer slice() {
- int pos = this.position();
- int lim = this.limit();
- assert (pos <= lim);
- int rem = (pos <= lim ? lim - pos : 0);
- int off = (pos << 0);
- return new DirectByteBufferR(this, -1, 0, rem, rem, off);
- }
-
- public ByteBuffer duplicate() {
- return new DirectByteBufferR(this,
- this.markValue(),
- this.position(),
- this.limit(),
- this.capacity(),
- 0);
- }
-
- public ByteBuffer asReadOnlyBuffer() {
-
-
-
-
-
-
-
-
- return duplicate();
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public ByteBuffer put(byte x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer put(int i, byte x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer put(ByteBuffer src) {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer put(byte[] src, int offset, int length) {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer compact() {
-
-
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public boolean isDirect() {
- return true;
- }
-
- public boolean isReadOnly() {
- return true;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- byte _get(int i) { // package-private
- return unsafe.getByte(address + i);
- }
-
- void _put(int i, byte b) { // package-private
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putChar(long a, char x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putChar(char x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putChar(int i, char x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public CharBuffer asCharBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 1;
- if (!unaligned && ((address + off) % (1 << 1) != 0)) {
- return (bigEndian
- ? (CharBuffer)(new ByteBufferAsCharBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (CharBuffer)(new ByteBufferAsCharBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (CharBuffer)(new DirectCharBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (CharBuffer)(new DirectCharBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putShort(long a, short x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putShort(short x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putShort(int i, short x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ShortBuffer asShortBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 1;
- if (!unaligned && ((address + off) % (1 << 1) != 0)) {
- return (bigEndian
- ? (ShortBuffer)(new ByteBufferAsShortBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (ShortBuffer)(new ByteBufferAsShortBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (ShortBuffer)(new DirectShortBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (ShortBuffer)(new DirectShortBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putInt(long a, int x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putInt(int x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putInt(int i, int x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public IntBuffer asIntBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 2;
- if (!unaligned && ((address + off) % (1 << 2) != 0)) {
- return (bigEndian
- ? (IntBuffer)(new ByteBufferAsIntBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (IntBuffer)(new ByteBufferAsIntBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (IntBuffer)(new DirectIntBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (IntBuffer)(new DirectIntBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putLong(long a, long x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putLong(long x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putLong(int i, long x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public LongBuffer asLongBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 3;
- if (!unaligned && ((address + off) % (1 << 3) != 0)) {
- return (bigEndian
- ? (LongBuffer)(new ByteBufferAsLongBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (LongBuffer)(new ByteBufferAsLongBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (LongBuffer)(new DirectLongBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (LongBuffer)(new DirectLongBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putFloat(long a, float x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putFloat(float x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putFloat(int i, float x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public FloatBuffer asFloatBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 2;
- if (!unaligned && ((address + off) % (1 << 2) != 0)) {
- return (bigEndian
- ? (FloatBuffer)(new ByteBufferAsFloatBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (FloatBuffer)(new ByteBufferAsFloatBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (FloatBuffer)(new DirectFloatBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (FloatBuffer)(new DirectFloatBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- private ByteBuffer putDouble(long a, double x) {
-
-
-
-
-
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putDouble(double x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public ByteBuffer putDouble(int i, double x) {
-
-
-
-
- throw new ReadOnlyBufferException();
-
- }
-
- public DoubleBuffer asDoubleBuffer() {
- int off = this.position();
- int lim = this.limit();
- assert (off <= lim);
- int rem = (off <= lim ? lim - off : 0);
-
- int size = rem >> 3;
- if (!unaligned && ((address + off) % (1 << 3) != 0)) {
- return (bigEndian
- ? (DoubleBuffer)(new ByteBufferAsDoubleBufferRB(this,
- -1,
- 0,
- size,
- size,
- off))
- : (DoubleBuffer)(new ByteBufferAsDoubleBufferRL(this,
- -1,
- 0,
- size,
- size,
- off)));
- } else {
- return (nativeByteOrder
- ? (DoubleBuffer)(new DirectDoubleBufferRU(this,
- -1,
- 0,
- size,
- size,
- off))
- : (DoubleBuffer)(new DirectDoubleBufferRS(this,
- -1,
- 0,
- size,
- size,
- off)));
- }
- }
-
- }