src.visualization package¶
Submodules¶
src.visualization.draw module¶
- src.visualization.draw.draw_stack_op(func: Callable[[Concatenate[cairo.Context, P]], None]) Callable[[P], None][source]¶
- src.visualization.draw.draw_text(ctx: cairo.Context, text: str, pos: tuple[float, float] = (0.0, 0.0), color: tuple[float, float, float] = (1.0, 0.5, 0.34), alpha: float = 1.0, font_size: float = 12, font_family: str = 'Sans')[source]¶
src.visualization.overlay module¶
- src.visualization.overlay.register_overlay(func: Callable[[DeSmuME, DeviceLikeType | None], None])[source]¶
- src.visualization.overlay.collision_overlay(emu: DeSmuME, device: DeviceLikeType | None = None)[source]¶
- src.visualization.overlay.raycasting_overlay(emu: DeSmuME, device: DeviceLikeType | None = None)[source]¶
- src.visualization.overlay.camera_overlay(emu: DeSmuME, device: DeviceLikeType | None = None)[source]¶
- src.visualization.overlay.checkpoint_overlay_1(emu: DeSmuME, device: DeviceLikeType | None = None)[source]¶
src.visualization.window module¶
- src.visualization.window.start_keyboard_listener()[source]¶
Starts a non-blocking keyboard listener in a separate thread.
- src.visualization.window.on_draw_memoryview(buf: memoryview, width: int, height: int, scale_x: float, scale_y: float) numpy.ndarray[source]¶
Scale emulator RGBX frame and apply overlay → NumPy RGBA array.
- src.visualization.window.apply_overlay_to_surface(src_surface: cairo.ImageSurface) cairo.Surface[source]¶
Return new Cairo surface with overlay applied.
Bases:
Window
- class src.visualization.window.EmulatorWindow(*args: Any, **kwargs: Any)[source]¶
Bases:
WindowSingle-emulator interactive window with overlay support.