# {py:mod}`simvx.graphics.app` ```{py:module} simvx.graphics.app ``` ```{autodoc2-docstring} simvx.graphics.app :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`App ` - ```{autodoc2-docstring} simvx.graphics.app.App :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.graphics.app.log :summary: ``` * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.graphics.app.__all__ :summary: ``` ```` ### API ````{py:data} log :canonical: simvx.graphics.app.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.graphics.app.log ``` ```` ````{py:data} __all__ :canonical: simvx.graphics.app.__all__ :value: > ['App', 'AVAILABLE_BACKENDS'] ```{autodoc2-docstring} simvx.graphics.app.__all__ ``` ```` `````{py:class} App(title: str = 'SimVX', width: int = 1280, height: int = 720, backend: str | None = None, physics_fps: int = 60, visible: bool = True, vsync: bool = True, bg_colour: tuple[float, float, float, float] | str | None = None, **_kwargs) :canonical: simvx.graphics.app.App ```{autodoc2-docstring} simvx.graphics.app.App ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.graphics.app.App.__init__ ``` ````{py:method} toggle_fullscreen() -> None :canonical: simvx.graphics.app.App.toggle_fullscreen ```{autodoc2-docstring} simvx.graphics.app.App.toggle_fullscreen ``` ```` ````{py:property} is_fullscreen :canonical: simvx.graphics.app.App.is_fullscreen :type: bool ```{autodoc2-docstring} simvx.graphics.app.App.is_fullscreen ``` ```` ````{py:property} engine :canonical: simvx.graphics.app.App.engine :type: simvx.graphics.engine.Engine | None ```{autodoc2-docstring} simvx.graphics.app.App.engine ``` ```` ````{py:property} active_backend :canonical: simvx.graphics.app.App.active_backend :type: str | None ```{autodoc2-docstring} simvx.graphics.app.App.active_backend ``` ```` ````{py:property} window_title :canonical: simvx.graphics.app.App.window_title :type: str ```{autodoc2-docstring} simvx.graphics.app.App.window_title ``` ```` ````{py:property} window_size :canonical: simvx.graphics.app.App.window_size :type: tuple[int, int] ```{autodoc2-docstring} simvx.graphics.app.App.window_size ``` ```` ````{py:method} run(root_or_update: typing.Any = None, *, update: collections.abc.Callable[[], None] | None = None, render: collections.abc.Callable[[object, tuple[int, int]], None] | None = None) -> None :canonical: simvx.graphics.app.App.run ```{autodoc2-docstring} simvx.graphics.app.App.run ``` ```` ````{py:method} run_headless(root_node: typing.Any, *, frames: int = 1, on_frame: collections.abc.Callable[[int, float], bool | None] | None = None, capture_frames: list[int] | None = None, capture_fn: collections.abc.Callable[[int], bool] | None = None) -> list :canonical: simvx.graphics.app.App.run_headless ```{autodoc2-docstring} simvx.graphics.app.App.run_headless ``` ```` ````{py:method} run_streaming(root_node: typing.Any, server: typing.Any) -> None :canonical: simvx.graphics.app.App.run_streaming ```{autodoc2-docstring} simvx.graphics.app.App.run_streaming ``` ```` `````