typedef enum ApirBackendCommandType { /* device */ APIR_COMMAND_TYPE_DEVICE_GET_DEVICE_COUNT = 0, APIR_COMMAND_TYPE_DEVICE_GET_COUNT = 1, APIR_COMMAND_TYPE_DEVICE_GET_NAME = 2, APIR_COMMAND_TYPE_DEVICE_GET_DESCRIPTION = 3, APIR_COMMAND_TYPE_DEVICE_GET_TYPE = 4, APIR_COMMAND_TYPE_DEVICE_GET_MEMORY = 5, APIR_COMMAND_TYPE_DEVICE_SUPPORTS_OP = 6, APIR_COMMAND_TYPE_DEVICE_GET_BUFFER_TYPE = 7, APIR_COMMAND_TYPE_DEVICE_GET_PROPS = 8, APIR_COMMAND_TYPE_DEVICE_BUFFER_FROM_PTR = 9, /* buffer-type */ APIR_COMMAND_TYPE_BUFFER_TYPE_GET_NAME = 10, APIR_COMMAND_TYPE_BUFFER_TYPE_GET_ALIGNMENT = 11, APIR_COMMAND_TYPE_BUFFER_TYPE_GET_MAX_SIZE = 12, APIR_COMMAND_TYPE_BUFFER_TYPE_IS_HOST = 13, APIR_COMMAND_TYPE_BUFFER_TYPE_ALLOC_BUFFER = 14, APIR_COMMAND_TYPE_BUFFER_TYPE_GET_ALLOC_SIZE = 15, /* buffer */ APIR_COMMAND_TYPE_BUFFER_GET_BASE = 16, APIR_COMMAND_TYPE_BUFFER_SET_TENSOR = 17, APIR_COMMAND_TYPE_BUFFER_GET_TENSOR = 18, APIR_COMMAND_TYPE_BUFFER_CPY_TENSOR = 19, APIR_COMMAND_TYPE_BUFFER_CLEAR = 20, APIR_COMMAND_TYPE_BUFFER_FREE_BUFFER = 21, /* backend */ APIR_COMMAND_TYPE_BACKEND_GRAPH_COMPUTE = 22, // last command_type index + 1 APIR_BACKEND_DISPATCH_TABLE_COUNT = 23, } ApirBackendCommandType;