Structure.FFIType (JNA API)
Description: declaration: package: com.sun.jna, class: Structure, class: FFIType

Package com.sun.jna

# Class Structure.FFIType

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

Enclosing class:
  Structure

@FieldOrder({"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
  Modifier and Type
  Class
  Description
  `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
  Modifier and Type
  Field
  Description
  `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
  Description
  `FFIType()`
  `FFIType(Structure ref)`
  `FFIType(Structure.FFIType reference)`
  `FFIType(Object array, Class<?> type)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `(package private) static Structure.FFIType`
  `get(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 Details

  - ### size

    public Structure.FFIType.size_t size

  - ### alignment

    public short alignment

  - ### type

    public short type

  - ### elements

    public Pointer elements

- ## Constructor Details

  - ### FFIType

    public FFIType(Structure.FFIType reference)

  - ### FFIType

    public FFIType()

  - ### FFIType

    public FFIType(Structure ref)

  - ### FFIType

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

- ## Method Details

  - ### get

    static Structure.FFIType get(Object obj)
    Obtain a pointer to the native FFI type descriptor for the given object.