com.sun.jna

## Class Structure.FFIType

- java.lang.Object
- - com.sun.jna.Structure
  - - com.sun.jna.Structure.FFIType

Enclosing class:
  Structure

    @Structure.FieldOrder(value={"size","alignment","type","elements"})
    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

Nested Classes
`static class` `Structure.FFIType.size_t`

### Nested classes/interfaces inherited from class com.sun.jna.Structure

`Structure.ByReference, Structure.ByValue, Structure.FFIType, Structure.FieldOrder, Structure.StructField, Structure.StructureSet`

### Field Summary

Fields
`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`

### Constructor Summary

Constructors
Constructor and Description
`FFIType()`
`FFIType(java.lang.Object array, java.lang.Class<?> type)`
`FFIType(Structure.FFIType reference)`
`FFIType(Structure ref)`

### Method Summary

All Methods Static Methods Concrete Methods
`(package private) static Structure.FFIType` `get(java.lang.Object obj)` Obtain a pointer to the native FFI type descriptor for the given object.

### Methods inherited from class com.sun.jna.Structure

`allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, busy, cacheTypeInfo, calculateSize, calculateSize, clear, conditionalAutoRead, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, fields, getAutoRead, getAutoWrite, getFieldList, getFieldOrder, getFields, getFieldTypeInfo, getFieldValue, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, getTypeInfo, getTypeInfo, getTypeMapper, hashCode, newInstance, newInstance, read, readField, readField, reading, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setFieldValue, setStringEncoding, size, size, size, sortFields, toArray, toArray, toString, toString, updateStructureByReference, useMemory, 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

### Constructor Detail

#### FFIType

    public FFIType(Structure.FFIType reference)

#### FFIType

    public FFIType()

#### FFIType

    public FFIType(Structure ref)

#### FFIType

    public FFIType(java.lang.Object array,
                   java.lang.Class<?> type)

### Method Detail

#### get

    static Structure.FFIType get(java.lang.Object obj)

Obtain a pointer to the native FFI type descriptor for the given object.

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