JNA API 4.0.0

com.sun.jna
Class Structure.FFIType

java.lang.Object
  extended by com.sun.jna.Structure
      extended by com.sun.jna.Structure.FFIType
Enclosing class:
Structure

static class Structure.FFIType
extends Structure

This class auto-generates an ffi_type structure appropriate for a given structure for use by libffi. The lifecycle of this structure is easier to manage on the Java side than in native code.


Nested Class Summary
static class Structure.FFIType.size_t
           
 
Nested classes/interfaces inherited from class com.sun.jna.Structure
Structure.ByReference, Structure.ByValue, Structure.FFIType, Structure.StructField
 
Field Summary
 short alignment
           
 Pointer elements
           
 Structure.FFIType.size_t size
           
 short type
           
 
Fields inherited from class com.sun.jna.Structure
ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE, fieldOrder, layoutInfo
 
Method Summary
(package private) static Pointer get(Object obj)
           
protected  List getFieldOrder()
          Return this Structure's field names in their proper order.
 
Methods inherited from class com.sun.jna.Structure
allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, busy, cacheTypeInfo, calculateSize, clear, conditionalAutoRead, ensureAllocated, equals, fieldOffset, fields, getAutoRead, getAutoWrite, getFieldList, getFields, getFieldTypeInfo, getFieldValue, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, getTypeInfo, getTypeInfo, getTypeMapper, hashCode, newInstance, newInstance, read, readField, readField, reading, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setFieldOrder, setFieldValue, setStringEncoding, size, size, size, sortFields, toArray, toArray, toString, toString, typeInfoField, updateStructureByReference, useMemory, useMemory, validate, write, writeField, writeField, writeField
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

size

public Structure.FFIType.size_t size

alignment

public short alignment

type

public short type

elements

public Pointer elements
Method Detail

getFieldOrder

protected List getFieldOrder()
Description copied from class: Structure
Return this Structure's field names in their proper order. For example,

 protected List getFieldOrder() {
     return Arrays.asList(new String[] { ... });
 }
 
IMPORTANT When deriving from an existing Structure subclass, ensure that you augment the list provided by the superclass, e.g.

 protected List getFieldOrder() {
     List fields = new ArrayList(super.getFieldOrder());
     fields.addAll(Arrays.asList(new String[] { ... }));
     return fields;
 }
 
Field order must be explicitly indicated, since the field order as returned by Class.getFields() is not guaranteed to be predictable.

Specified by:
getFieldOrder in class Structure

get

static Pointer get(Object obj)

JNA API 4.0.0

Copyright © 2007-2013 Timothy Wall. All Rights Reserved.