Zpět na projekty
TUIX v0.5Beta

Naposledy aktualizováno: 2026-05-20

Reference interního API

Stabilní veřejné API je engine, builders, registry, input, scenes, buffers a objects. Interní moduly jsou zde dokumentovány jen proto, aby debugování a pokročilá bridge práce měla jasnou mapu.

Interní povrchNestavte běžné aplikace na _lib, _structs ani _tuix_cy. Jejich rozložení sleduje kompilované nativní ABI a může se měnit rychleji než wrapper API.

Metody tuix.core._lib

MetodaJak ji použítProč existuje
_lib.get_func(name, restype=ctypes.c_int, argtypes=None)Vyřešte nativní callable z Cython modulu nebo CDLL.Interní bridge helper používaný veřejnými wrappery pro fallback cesty.
_lib.tuix_render_streaming(buf)Renderujte Python buffer přes interní streaming bridge.Podporuje interní renderer experimenty a bridge testy.
_lib.tuix_create_native_buffer(py_buf) -> intVytvořte nativní final-buffer handle z Python bufferu.Umožňuje interním patch/render cestám pracovat s nativní pamětí.
_lib.tuix_free_native_buffer(handle: int)Uvolněte nativní buffer handle vytvořený přes tuix_create_native_buffer.Brání leakům v interních bridge workflow.
_lib.tuix_apply_patch_and_render(handle: int, patch: bytes) -> bytesAplikujte kompaktní patch bytes na nativní buffer a renderujte ANSI bytes.Podporuje nízkoúrovňové diff/patch render experimenty.
_lib.make_patch_bytes(updates) -> bytesSerializujte (index, sym, fg, bg) updates do kompaktních 20-byte záznamů.Kóduje patch data pro tuix_apply_patch_and_render.

tuix.core._structs

_structs obsahuje ctypes zrcadla vybraných nativních struktur jako TuixRegistry, TuixObject, pixely, barvy a input snapshoty. Pro běžnou diagnostiku používejte veřejná snapshot API místo přímého čtení těchto struktur.

tuix.core._tuix_cy

_tuix_cy je kompilované Cython rozšíření. Veřejné wrappery do něj volají, když je dostupné, a podle potřeby padají zpět na ctypes lookup. V aplikačním kódu importujte wrapper moduly místo _tuix_cy.

Poznámky k vlastnictví ve v0.5

  • TuixBuffer.pixels_owned určuje, zda core vlastní aktuální pixelové úložiště.
  • Dočasné pixely vrácené builderem mohou být zkopírovány do core-owned úložiště.
  • Resize, clear scény, destroy registry, kompaktace a cleanup cachovaných pixelů builderů byly ve v0.5 zpevněny.
  • Builder callbacky mohou běžet mimo globální registry lock; pro mutace registry a bufferů používejte veřejná API.