1# ddk_types.h 2<!--Kit: Driver Development Kit--> 3<!--Subsystem: Driver--> 4<!--Owner: @lixinsheng2--> 5<!--Designer: @w00373942--> 6<!--Tester: @dong-dongzhen--> 7<!--Adviser: @w_Machine_cc--> 8 9## Overview 10 11Provides BASE DDK types and declares the macros, enums, and data structures required by the BASE DDK APIs. 12 13**Header file:** <ddk/ddk_types.h> 14 15**Library**: libddk_base.z.so 16 17**System capability**: SystemCapability.Driver.DDK.Extension 18 19**Since**: 12 20 21**Related module**: [BaseDdk](capi-baseddk.md) 22 23## Summary 24 25### Structs 26 27| Name | typedef Keyword| Description| 28|------------------------------------------| -- | -- | 29| [DDK_Ashmem](capi-baseddk-ddk-ashmem.md) | DDK_Ashmem | Device memory map created by calling **OH_DDK_CreateAshmem**. A buffer using the device memory map can provide better performance.| 30 31### Enums 32 33| Name| typedef Keyword| Description| 34| -- | -- | -- | 35| [DDK_RetCode](#ddk_retcode) | DDK_RetCode | Enumerates error codes used in the BASE DDK.| 36 37## Enum Description 38 39### DDK_RetCode 40 41``` 42enum DDK_RetCode 43``` 44 45**Description** 46 47Enumerates the error codes used in the basic DDK. 48 49**Since**: 12 50 51| Enum| Description| 52| -- | -- | 53| DDK_SUCCESS = 0 | Operation success.| 54| DDK_FAILURE = 28600001 | Operation failed.| 55| DDK_INVALID_PARAMETER = 28600002 | Invalid parameter.| 56| DDK_INVALID_OPERATION = 28600003 | Invalid operation.| 57| DDK_NULL_PTR = 28600004 | Null pointer.| 58