# TensorFlow Lite C API Reference

## Modules
lite/abi/tflite.h | Native functions for initializing and shutting down the TensorFlow Lite (TFLite) in Google Play Services Native API.
lite/acceleration/configuration/c/delegate_plugin.h | C API types for TF Lite delegate plugins.
lite/acceleration/configuration/c/gpu_plugin.h | This header file is for the delegate plugin for GPU.
lite/acceleration/configuration/c/xnnpack_plugin.h | This header file is for the delegate plugin for XNNPACK.
lite/c/c_api.h | C API for TensorFlow Lite.
lite/c/c_api_opaque.h | C API for TensorFlow Lite Opaque Types.
lite/c/c_api_types.h | This file declares types used by the pure C inference API defined in c_api.h, some of which are also used in the C++ and C kernel and interpreter APIs.
lite/c/common.h | This file defines common C types and APIs for implementing operations, delegates and other constructs in TensorFlow Lite.

## Structs
TfLiteAffineQuantization | Parameters for asymmetric quantization across a dimension (i.e per output channel quantization).
TfLiteComplex128 | Double-precision complex data type compatible with the C99 definition.
TfLiteComplex64 | Single-precision complex data type compatible with the C99 definition.
TfLiteContext | `TfLiteContext` allows an op to access the tensors.
TfLiteCustomAllocation | Defines a custom memory allocation not owned by the runtime.
TfLiteDelegate | WARNING: This is an experimental interface that is subject to change.
TfLiteDelegateParams | WARNING: This is an experimental interface that is subject to change.
TfLiteDelegatePlugin | Struct to hold all the methods for a delegate plugin.
TfLiteDimensionMetadata | Metadata to encode each dimension in a sparse tensor.
TfLiteEvalTensor | Light-weight tensor struct for TF Micro runtime.
TfLiteExternalContext | An external context is a collection of information unrelated to the TF Lite framework, but useful to a subset of the ops.
TfLiteFloat16 | Half precision data type compatible with the C99 definition.
TfLiteFloatArray | Fixed size list of floats. Used for per-channel quantization.
TfLiteIntArray | Fixed size list of integers.
TfLiteNode | A structure representing an instance of a node.
TfLiteOpaqueDelegateBuilder | `TfLiteOpaqueDelegateBuilder` is used for constructing `TfLiteOpaqueDelegate`, see `TfLiteOpaqueDelegateCreate` below.
TfLiteOpaqueDelegateParams | WARNING: This is an experimental interface that is subject to change.
TfLiteQuantization | Structure specifying the quantization used by the tensor, if-any.
TfLiteQuantizationParams | Legacy.
TfLiteRegistration | `TfLiteRegistration` defines the implementation of an operation (a built-in op, custom op, or custom delegate kernel).
TfLiteSparsity | Parameters used to encode a sparse tensor.
TfLiteTensor | A tensor in the interpreter system which is a wrapper around a buffer of data including a dimensionality (or NULL if not currently defined).

## Unions
TfLitePtrUnion | A union of pointers that points to memory for a given tensor.