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
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."
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class com.sun.jna.PointerType
fromNative, getPointer, nativeType, setPointer, toNative, toString
-
Constructor Details
-
REFIID
public REFIID()Instantiates a new refiid. -
REFIID
Instantiates a new refiid.- Parameters:
memory- the memory
-
REFIID
-
-
Method Details
-
setValue
-
getValue
-
equals
Description copied from class:PointerTypeInstances ofPointerTypewith identical pointers compare equal by default.- Overrides:
equalsin classPointerType
-
hashCode
public int hashCode()Description copied from class:PointerTypeThe hash code for aPointerTypeis the same as that for its pointer.- Overrides:
hashCodein classPointerType
-