@Override public float readFloat(long offset) throws BufferUnderflowException { checkOffset(offset, 4); return MEMORY.readFloat(realUnderlyingObject, dataOffset + offset); }
@Override public short readVolatileShort(long offset) throws BufferUnderflowException { checkOffset(offset, 2); return MEMORY.readVolatileShort(realUnderlyingObject, dataOffset + offset); }
@Override public int readVolatileInt(long offset) throws BufferUnderflowException { checkOffset(offset, 4); return MEMORY.readVolatileInt(realUnderlyingObject, dataOffset + offset); }
@Override public long readVolatileLong(long offset) throws BufferUnderflowException { checkOffset(offset, 8); return MEMORY.readVolatileLong(realUnderlyingObject, dataOffset + offset); }
@Override public byte readByte(long offset) throws BufferUnderflowException { checkOffset(offset, 1); return MEMORY.readByte(realUnderlyingObject, dataOffset + offset); }
@Override public long readLong(long offset) throws BufferUnderflowException { checkOffset(offset, 8); return MEMORY.readLong(realUnderlyingObject, dataOffset + offset); }
@Override public byte readVolatileByte(long offset) throws BufferUnderflowException { checkOffset(offset, 1); return MEMORY.readVolatileByte(realUnderlyingObject, dataOffset + offset); }
@Override public short readShort(long offset) throws BufferUnderflowException { checkOffset(offset, 2); return MEMORY.readShort(realUnderlyingObject, dataOffset + offset); }
@Override public int readInt(long offset) throws BufferUnderflowException { checkOffset(offset, 4); return MEMORY.readInt(realUnderlyingObject, dataOffset + offset); }
@Override public double readDouble(long offset) throws BufferUnderflowException { checkOffset(offset, 8); return MEMORY.readDouble(realUnderlyingObject, dataOffset + offset); }