1#pragma once
 2
 3#include <cstdint>
 4#include <cstddef>
 5
 6#include <ggml-backend.h>
 7
 8#include "backend-convert.h"
 9#include "backend-virgl-apir.h"
10#include "shared/apir_backend.h"
11#include "shared/apir_cs.h"
12#include "shared/apir_cs_ggml.h"
13
14#define GGML_VIRTGPU_BCK "ggml-virtgpu-backend: "
15
16struct virgl_apir_context {
17    uint32_t               ctx_id;
18    virgl_apir_callbacks * iface;
19};
20
21typedef uint32_t (*backend_dispatch_t)(apir_encoder * enc, apir_decoder * dec, virgl_apir_context * ctx);
22
23#include "backend-dispatched.gen.h"
24
25uint32_t backend_dispatch_initialize(void * ggml_backend_reg_fct_p);