Package com.sun.jna.platform.win32
Class Guid.REFIID
- java.lang.Object
-
- com.sun.jna.PointerType
-
- com.sun.jna.platform.win32.Guid.REFIID
-
- All Implemented Interfaces:
NativeMapped
- Enclosing interface:
- Guid
public static class Guid.REFIID extends PointerType
REFIID is a pointer to an IID.This type needs to be seperate from IID, as the REFIID can be passed in from external code, that does not allow writes to memory.
With the normal JNA behaviour a structure, that crosses the native<-%gt;Java border will be autowritten, which causes a fault when written. Observed was this behaviour in COM-Callbacks, which get the REFIID passed into Invoke-method.
So a IID can't be used directly, although the typedef of REFIID (from MSDN):
typedef IID* REFIID;
and the jna behaviour is described as:
"When a function requires a pointer to a struct, a Java Structure should be used."
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
Instances ofPointerType
with identical pointers compare equal by default.Guid.IID
getValue()
int
hashCode()
The hash code for aPointerType
is the same as that for its pointer.void
setValue(Guid.IID value)
-
Methods inherited from class com.sun.jna.PointerType
fromNative, getPointer, nativeType, setPointer, toNative, toString
-
-
-
-
Method Detail
-
setValue
public void setValue(Guid.IID value)
-
getValue
public Guid.IID getValue()
-
equals
public boolean equals(Object o)
Description copied from class:PointerType
Instances ofPointerType
with identical pointers compare equal by default.- Overrides:
equals
in classPointerType
-
hashCode
public int hashCode()
Description copied from class:PointerType
The hash code for aPointerType
is the same as that for its pointer.- Overrides:
hashCode
in classPointerType
-
-