|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jruby.ext.ffi.InvalidMemoryIO
public abstract class InvalidMemoryIO
An implementation of MemoryIO that throws an exception on any access.
Constructor Summary | |
---|---|
InvalidMemoryIO(Ruby runtime)
|
|
InvalidMemoryIO(Ruby runtime,
java.lang.String message)
|
Method Summary | |
---|---|
void |
clear()
|
void |
get(long offset,
byte[] dst,
int off,
int len)
Reads an array of bytes from the memory area at the specified offset. |
void |
get(long offset,
double[] dst,
int off,
int len)
Reads an array of doubles from the memory area at the specified offset. |
void |
get(long offset,
float[] dst,
int off,
int len)
Reads an array of floats from the memory area at the specified offset. |
void |
get(long offset,
int[] dst,
int off,
int len)
Reads an array of ints from the memory area at the specified offset. |
void |
get(long offset,
long[] dst,
int off,
int len)
Reads an array of longs from the memory area at the specified offset. |
void |
get(long offset,
short[] dst,
int off,
int len)
Reads an array of shorts from the memory area at the specified offset. |
long |
getAddress(long offset)
Reads a pointer value at the specified offset within the memory area. |
byte |
getByte(long offset)
Reads an 8 bit integer value from the memory area. |
double |
getDouble(long offset)
Reads a double value from the memory area. |
float |
getFloat(long offset)
Reads a float value from the memory area. |
int |
getInt(long offset)
Reads a 32 bit integer value from the memory area. |
long |
getLong(long offset)
Reads a 64 bit integer value from the memory area. |
DirectMemoryIO |
getMemoryIO(long offset)
Reads a pointer value at the specified offset within the memory area, and wraps it in an abstract memory accessor. |
long |
getNativeLong(long offset)
Reads a native long integer value from the memory area. |
short |
getShort(long offset)
Reads a 16 bit integer value from the memory area. |
byte[] |
getZeroTerminatedByteArray(long offset)
Reads a zero terminated byte array (e.g. |
byte[] |
getZeroTerminatedByteArray(long offset,
int maxlen)
Reads a zero terminated byte array (e.g. |
int |
indexOf(long offset,
byte value)
Gets the first index within the memory area of a particular 8 bit value. |
int |
indexOf(long offset,
byte value,
int maxlen)
Gets the first index within the memory area of a particular 8 bit value. |
void |
put(long offset,
byte[] src,
int off,
int len)
Writes an array of bytes to the memory area at the specified offset. |
void |
put(long offset,
double[] src,
int off,
int len)
Writes an array of doubles to the memory area at the specified offset. |
void |
put(long offset,
float[] src,
int off,
int len)
Writes an array of floats to the memory area at the specified offset. |
void |
put(long offset,
int[] src,
int off,
int len)
Writes an array of ints to the memory area at the specified offset. |
void |
put(long offset,
long[] src,
int off,
int len)
Writes an array of longs to the memory area at the specified offset. |
void |
put(long offset,
short[] src,
int off,
int len)
Writes an array of shorts to the memory area at the specified offset. |
void |
putAddress(long offset,
long value)
Writes a pointer value to the memory area at the specified offset. |
void |
putByte(long offset,
byte value)
Writes an 8 bit integer value to the memory area at the specified offset. |
void |
putDouble(long offset,
double value)
Writes a 64 bit float value to the memory area at the specified offset. |
void |
putFloat(long offset,
float value)
Writes a 32 bit float value to the memory area at the specified offset. |
void |
putInt(long offset,
int value)
Writes a 32 bit integer value to the memory area at the specified offset. |
void |
putLong(long offset,
long value)
Writes a 64 bit integer value to the memory area at the specified offset. |
void |
putMemoryIO(long offset,
MemoryIO value)
Writes a pointer value to the memory area at the specified offset. |
void |
putNativeLong(long offset,
long value)
Writes a native long integer value to the memory area at the specified offset. |
void |
putShort(long offset,
short value)
Writes a 16 bit integer value to the memory area at the specified offset. |
void |
putZeroTerminatedByteArray(long offset,
byte[] bytes,
int off,
int len)
Writes a byte array to memory, and appends a zero terminator |
void |
setMemory(long offset,
long size,
byte value)
Sets the contents of the memory area to the value. |
MemoryIO |
slice(long offset)
Creates a new MemoryIO pointing to a subset of the memory area of this MemoryIO. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jruby.ext.ffi.MemoryIO |
---|
isDirect, isNull |
Constructor Detail |
---|
public InvalidMemoryIO(Ruby runtime)
public InvalidMemoryIO(Ruby runtime, java.lang.String message)
Method Detail |
---|
public MemoryIO slice(long offset)
MemoryIO
slice
in interface MemoryIO
offset
- The offset within the existing memory area to start the
new MemoryIO at.
public final byte getByte(long offset)
MemoryIO
getByte
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final short getShort(long offset)
MemoryIO
getShort
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final int getInt(long offset)
MemoryIO
getInt
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final long getLong(long offset)
MemoryIO
getLong
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final long getNativeLong(long offset)
MemoryIO
A native long is 32bits on either ILP32 or LLP64 architectures, and 64 bits on an LP64 architecture.
This means that it will always read a 32bit value on Windows, but on Unix systems such as MacOS or Linux, it will read a 32bit value on 32bit systems, and a 64bit value on 64bit systems.
getNativeLong
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final float getFloat(long offset)
MemoryIO
getFloat
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final double getDouble(long offset)
MemoryIO
getDouble
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final DirectMemoryIO getMemoryIO(long offset)
MemoryIO
getMemoryIO
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final long getAddress(long offset)
MemoryIO
getAddress
in interface MemoryIO
offset
- The offset within the memory area to read the value.
public final void putByte(long offset, byte value)
MemoryIO
putByte
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 8 bit integer value to write to the memory location.public final void putShort(long offset, short value)
MemoryIO
putShort
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 16 bit integer value to write to the memory location.public final void putInt(long offset, int value)
MemoryIO
putInt
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 32 bit integer value to write to the memory location.public final void putLong(long offset, long value)
MemoryIO
putLong
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 64 bit integer value to write to the memory location.public final void putNativeLong(long offset, long value)
MemoryIO
putNativeLong
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The native long integer value to write to the memory location.public final void putFloat(long offset, float value)
MemoryIO
putFloat
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 32 bit float value to write to the memory location.public final void putDouble(long offset, double value)
MemoryIO
putDouble
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The 64 bit float value to write to the memory location.public final void putMemoryIO(long offset, MemoryIO value)
MemoryIO
putMemoryIO
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The pointer value to write to the memory location.public final void putAddress(long offset, long value)
MemoryIO
putAddress
in interface MemoryIO
offset
- The offset within the memory area to write the value.value
- The pointer value to write to the memory location.public final void get(long offset, byte[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the bytes.dst
- The output byte array to place the data.off
- The offset within the byte array to start copying.len
- The length of data to read.public final void put(long offset, byte[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the bytes.src
- The byte array to write to the memory area.off
- The offset within the byte array to start copying.len
- The length of data to write.public final void get(long offset, short[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the shorts.dst
- The output array to place the data in.off
- The offset within the array to start copying.len
- The number of shorts to read.public final void put(long offset, short[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the shorts.src
- The array to write to the memory area.off
- The offset within the array to start copying.len
- The number of shorts to write.public final void get(long offset, int[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the ints.dst
- The output array to place the data in.off
- The offset within the array to start copying.len
- The number of ints to read.public final void put(long offset, int[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the ints.src
- The array to write to the memory area.off
- The offset within the array to start copying.len
- The number of ints to write.public final void get(long offset, long[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the longs.dst
- The output array to place the data in.off
- The offset within the array to start copying.len
- The number of longs to read.public final void put(long offset, long[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the longs.src
- The array to write to the memory area.off
- The offset within the array to start copying.len
- The number of longs to write.public final void get(long offset, float[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the floats.dst
- The output array to place the data in.off
- The offset within the array to start copying.len
- The number of floats to read.public final void put(long offset, float[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the floats.src
- The array to write to the memory area.off
- The offset within the array to start copying.len
- The number of floats to write.public final void get(long offset, double[] dst, int off, int len)
MemoryIO
get
in interface MemoryIO
offset
- The offset within the memory area to read the doubles.dst
- The output array to place the data in.off
- The offset within the array to start copying.len
- The number of doubles to read.public final void put(long offset, double[] src, int off, int len)
MemoryIO
put
in interface MemoryIO
offset
- The offset within the memory area to start writing the doubles.src
- The array to write to the memory area.off
- The offset within the array to start copying.len
- The number of doubles to write.public final int indexOf(long offset, byte value)
MemoryIO
indexOf
in interface MemoryIO
offset
- The offset within the memory area to start searching.value
- The value to search for.
public final int indexOf(long offset, byte value, int maxlen)
MemoryIO
indexOf
in interface MemoryIO
offset
- The offset within the memory area to start searching.value
- The value to search for.
public final void setMemory(long offset, long size, byte value)
MemoryIO
setMemory
in interface MemoryIO
offset
- The offset within the memory area to start writing.size
- The number of bytes to set to the value.value
- The value to set each byte to.public final void clear()
public byte[] getZeroTerminatedByteArray(long offset)
MemoryIO
getZeroTerminatedByteArray
in interface MemoryIO
offset
- The offset within the memory area of the start of the string.
public byte[] getZeroTerminatedByteArray(long offset, int maxlen)
MemoryIO
getZeroTerminatedByteArray
in interface MemoryIO
offset
- The offset within the memory area of the start of the string.maxlen
- The maximum length to search for the zero byte terminator.
public void putZeroTerminatedByteArray(long offset, byte[] bytes, int off, int len)
MemoryIO
putZeroTerminatedByteArray
in interface MemoryIO
offset
- The offset within the memory area of the start of the string.bytes
- The byte array to write to the memory.off
- The offset with the byte array to start copying.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |