# LiteRT C++ API Reference

| ## Classes ||
|---|---|
| [BufferRef](https://developers.google.com/edge/api/litert/c/classlitert/1-1-buffer-ref) | An immutable and non-owning view of a buffer. |
| [CompiledModel](https://developers.google.com/edge/api/litert/c/classlitert/1-1-compiled-model) | A high-level inference API for LiteRT. |
| [CustomOpKernel](https://developers.google.com/edge/api/litert/c/classlitert/1-1-custom-op-kernel) | Defines the C++ interface for custom operator kernels in LiteRT. |
| [Environment](https://developers.google.com/edge/api/litert/c/classlitert/1-1-environment) | The environment works like a context that holds the runtime states. |
| [EnvironmentOptions](https://developers.google.com/edge/api/litert/c/classlitert/1-1-environment-options) | Manages configuration options for a LiteRT [Environment](https://developers.google.com/edge/api/litert/c/classlitert/1-1-environment#classlitert_1_1_environment). |
| [Error](https://developers.google.com/edge/api/litert/c/classlitert/1-1-error) | A C++ wrapper for a `LiteRtStatus` code, providing a status and an error message. |
| [ErrorStatusBuilder](https://developers.google.com/edge/api/litert/c/classlitert/1-1-error-status-builder) | A helper class for building and handling error statuses. |
| [Event](https://developers.google.com/edge/api/litert/c/classlitert/1-1-event) | Defines the C++ wrapper for LiteRT events, used for synchronization. |
| [Expected](https://developers.google.com/edge/api/litert/c/classlitert/1-1-expected) | A utility for generic return values that may represent a failure. |
| [Expected\< void \>](https://developers.google.com/edge/api/litert/c/classlitert/1-1-expected-3-01void-01-4) | A specialization of `https://developers.google.com/edge/api/litert/c/classlitert/1-1-expected#classlitert_1_1_expected` for `void`. |
| [Layout](https://developers.google.com/edge/api/litert/c/classlitert/1-1-layout) | A C++ wrapper for `LiteRtLayout`, representing a tensor layout. |
| [LogBeforeAbort](https://developers.google.com/edge/api/litert/c/classlitert/1-1-log-before-abort) |   |
| [Model](https://developers.google.com/edge/api/litert/c/classlitert/1-1-model) | A C++ wrapper for `LiteRtModel`, representing a LiteRT model. |
| [MutableBufferRef](https://developers.google.com/edge/api/litert/c/classlitert/1-1-mutable-buffer-ref) | A writable, non-owning version of `https://developers.google.com/edge/api/litert/c/classlitert/1-1-buffer-ref#classlitert_1_1_buffer_ref`. |
| [OpaqueOptions](https://developers.google.com/edge/api/litert/c/classlitert/1-1-opaque-options) | A C++ wrapper for `LiteRtOpaqueOptions`, providing a way to manage and access type-erased configuration data. |
| [Options](https://developers.google.com/edge/api/litert/c/classlitert/1-1-options) | Manages the configuration options for compiling a LiteRT model. |
| [OwningBufferRef](https://developers.google.com/edge/api/litert/c/classlitert/1-1-owning-buffer-ref) | A writable and owning buffer reference. |
| [TensorBuffer](https://developers.google.com/edge/api/litert/c/classlitert/1-1-tensor-buffer) | A C++ wrapper for `LiteRtTensorBuffer`, representing a tensor and its associated backing buffer. |
| [TensorBufferRequirements](https://developers.google.com/edge/api/litert/c/classlitert/1-1-tensor-buffer-requirements) | Represents the requirements for allocating a `https://developers.google.com/edge/api/litert/c/classlitert/1-1-tensor-buffer#classlitert_1_1_tensor_buffer`. |
| [TensorBufferScopedLock](https://developers.google.com/edge/api/litert/c/classlitert/1-1-tensor-buffer-scoped-lock) | A scoped lock for a `https://developers.google.com/edge/api/litert/c/classlitert/1-1-tensor-buffer#classlitert_1_1_tensor_buffer`. |
| [Unexpected](https://developers.google.com/edge/api/litert/c/classlitert/1-1-unexpected) | A utility for generic return values that represents a failure. |

| ## Structs ||
|---|---|
| [Option](https://developers.google.com/edge/api/litert/c/structlitert/1-1-environment-options-1-1-option) |   |
| [ErrorConversion](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion) | Specializes this class with an implicit conversion to `https://developers.google.com/edge/api/litert/c/classlitert/1-1-error#classlitert_1_1_error` and an `IsError()` member. |
| [ErrorConversion\< LiteRtStatus \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01-lite-rt-status-01-4) |   |
| [ErrorConversion\< T \* \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01-t-01-5-01-4) |   |
| [is_arithmetic_v\< T \> \> \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01-t-00-01std-1-1enable-if-t-3-017f1450c7c36d7876ec7841d67ad5980f) |   |
| [Status \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01absl-1-1-status-01-4) |   |
| [StatusOr\< T \> \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01absl-1-1-status-or-3-01-t-01-4-01-4) |   |
| [ErrorConversion\< bool \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01bool-01-4) |   |
| [Expected\< T \> \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01litert-1-1-expected-3-01-t-01-4-01-4) |   |
| [Unexpected \>](https://developers.google.com/edge/api/litert/c/structlitert/1-1-error-status-builder-1-1-error-conversion-3-01litert-1-1-unexpected-01-4) |   |
| [Mallocator](https://developers.google.com/edge/api/litert/c/structlitert/1-1-mallocator) | Defines allocation and deallocation behavior for owning buffer refs. |
| [Newlocator](https://developers.google.com/edge/api/litert/c/structlitert/1-1-newlocator) | A memory allocator based on `new` and `delete`. |
| [DmaBuf](https://developers.google.com/edge/api/litert/c/structlitert/1-1-tensor-buffer-1-1-dma-buf) |   |
| [GlBuffer](https://developers.google.com/edge/api/litert/c/structlitert/1-1-tensor-buffer-1-1-gl-buffer) |   |
| [GlTexture](https://developers.google.com/edge/api/litert/c/structlitert/1-1-tensor-buffer-1-1-gl-texture) |   |
| [CanBeAbslFormated](https://developers.google.com/edge/api/litert/c/structlitert/1-1internal-1-1-can-be-absl-formated) |   |
| [EnvironmentHolder](https://developers.google.com/edge/api/litert/c/structlitert/1-1internal-1-1-environment-holder) |   |