Coverage for src / cufile_patcher / bindings.py: 100%
20 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-11 15:06 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-11 15:06 +0000
1from __future__ import annotations
3import ctypes
5from .cufile_types import CUfileDescr, CUfileError, CUfileHandle_t, DescrUnion
6from .plugins import CuFileBackend
7from .registry import get_default_backend, register_backend, set_default_backend
10def _backend() -> CuFileBackend:
11 return get_default_backend()
14def cuFileDriverOpen() -> None:
15 _backend().driver_open()
18def cuFileDriverClose() -> None:
19 _backend().driver_close()
22def cuFileHandleRegister(fd: int) -> CUfileHandle_t:
23 return _backend().handle_register(fd)
26def cuFileHandleDeregister(handle: CUfileHandle_t) -> None:
27 _backend().handle_deregister(handle)
30def cuFileRead(
31 handle: CUfileHandle_t,
32 buf: ctypes.c_void_p,
33 size: int,
34 file_offset: int,
35 dev_offset: int,
36) -> int:
37 return _backend().read(handle, buf, size, file_offset, dev_offset)
40def cuFileWrite(
41 handle: CUfileHandle_t,
42 buf: ctypes.c_void_p,
43 size: int,
44 file_offset: int,
45 dev_offset: int,
46) -> int:
47 return _backend().write(handle, buf, size, file_offset, dev_offset)
50__all__ = [
51 "CUfileDescr",
52 "CUfileError",
53 "CUfileHandle_t",
54 "DescrUnion",
55 "cuFileDriverClose",
56 "cuFileDriverOpen",
57 "cuFileHandleDeregister",
58 "cuFileHandleRegister",
59 "cuFileRead",
60 "cuFileWrite",
61 "get_default_backend",
62 "register_backend",
63 "set_default_backend",
64]