diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index c025e115..bacbccc2 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -44,10 +44,11 @@ jobs: sdist: runs-on: ubuntu-latest steps: - - name: APT update - run: sudo apt-get update - - name: Install APT dependencies - run: sudo apt-get install libsdl2-dev + - uses: libsdl-org/setup-sdl@6574e20ac65ce362cd12f9c26b3a5e4d3cd31dee + with: + install-linux-dependencies: true + build-type: "Debug" + version: "3.2.14" - uses: actions/checkout@v4 with: fetch-depth: ${{ env.git-depth }} @@ -71,7 +72,7 @@ jobs: strategy: matrix: os: ["windows-latest", "macos-latest"] - sdl-version: ["2.0.14", "2.0.16", "2.30.0"] + sdl-version: ["3.2.10"] fail-fast: true steps: - uses: actions/checkout@v4 @@ -90,7 +91,7 @@ jobs: SDL_VERSION: ${{ matrix.sdl-version }} build: - needs: [ruff, mypy] + needs: [ruff, mypy, sdist] runs-on: ${{ matrix.os }} strategy: matrix: @@ -122,7 +123,13 @@ jobs: if: runner.os == 'Linux' run: | sudo apt-get update - sudo apt-get install libsdl2-dev xvfb + sudo apt-get install xvfb + - uses: libsdl-org/setup-sdl@6574e20ac65ce362cd12f9c26b3a5e4d3cd31dee + if: runner.os == 'Linux' + with: + install-linux-dependencies: true + build-type: "Release" + version: "3.2.14" - name: Install Python dependencies run: | python -m pip install --upgrade pip @@ -157,13 +164,15 @@ jobs: compression-level: 0 test-docs: - needs: [ruff, mypy] + needs: [ruff, mypy, sdist] runs-on: ubuntu-latest steps: - - name: Install APT dependencies - run: | - sudo apt-get update - sudo apt-get install libsdl2-dev + - uses: libsdl-org/setup-sdl@6574e20ac65ce362cd12f9c26b3a5e4d3cd31dee + if: runner.os == 'Linux' + with: + install-linux-dependencies: true + build-type: "Debug" + version: "3.2.14" - uses: actions/checkout@v4 with: fetch-depth: ${{ env.git-depth }} @@ -182,7 +191,7 @@ jobs: run: python -m sphinx -T -E -W --keep-going . _build/html tox: - needs: [ruff] + needs: [ruff, sdist] runs-on: ${{ matrix.os }} strategy: matrix: @@ -200,17 +209,18 @@ jobs: - name: Install Python dependencies run: | python -m pip install --upgrade pip tox - - name: Install APT dependencies + - uses: libsdl-org/setup-sdl@6574e20ac65ce362cd12f9c26b3a5e4d3cd31dee if: runner.os == 'Linux' - run: | - sudo apt-get update - sudo apt-get install libsdl2-dev + with: + install-linux-dependencies: true + build-type: "Debug" + version: "3.2.14" - name: Run tox run: | tox -vv linux-wheels: - needs: [ruff, mypy] + needs: [ruff, mypy, sdist] runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-latest'}} strategy: matrix: @@ -248,7 +258,7 @@ jobs: CIBW_BEFORE_ALL_LINUX: > yum install -y epel-release && yum-config-manager --enable epel && - yum install -y SDL2-devel + yum install -y SDL3-devel CIBW_BEFORE_TEST: pip install numpy CIBW_TEST_COMMAND: python -c "import tcod.context" # Skip test on emulated architectures @@ -267,7 +277,7 @@ jobs: compression-level: 0 build-macos: - needs: [ruff, mypy] + needs: [ruff, mypy, sdist] runs-on: "macos-14" strategy: fail-fast: true @@ -287,7 +297,7 @@ jobs: - name: Install Python dependencies run: pip install -r requirements.txt - name: Prepare package - # Downloads SDL2 for the later step. + # Downloads SDL for the later step. run: python build_sdl.py - name: Build wheels uses: pypa/cibuildwheel@v2.23.3 diff --git a/.gitignore b/.gitignore index 6ec1f7fb..28aabdcd 100644 --- a/.gitignore +++ b/.gitignore @@ -69,10 +69,10 @@ Release/ tcod/_*.c tcod/_*.pyd .benchmarks -dependencies/SDL2* +dependencies/SDL* tcod/x86 tcod/x64 -tcod/SDL2.framework +tcod/SDL?.framework deb_dist/ *.tar.gz tcod/version.py diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 81bb11ae..8d733f5e 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -5,11 +5,11 @@ version: 2 build: - os: ubuntu-22.04 + os: ubuntu-24.04 tools: python: "3.11" apt_packages: - - libsdl2-dev + - libsdl3-dev submodules: include: all diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ce0d62c..ed1cbba9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,20 @@ This project adheres to [Semantic Versioning](https://semver.org/) since version ## [Unreleased] +### Changed + +- Switched to SDL3. + This will cause several breaking changes such as the names of keyboard constants and other SDL enums. + ### Removed - Support dropped for Python 3.8 and 3.9. +- Removed `Joystick.get_current_power` due to SDL3 changes. +- `WindowFlags.FULLSCREEN_DESKTOP` is now just `WindowFlags.FULLSCREEN` + +### Fixed + +- `Joystick.get_ball` was broken. ## [18.1.0] - 2025-05-05 diff --git a/README.rst b/README.rst index 515c90a7..4a4f2f2d 100755 --- a/README.rst +++ b/README.rst @@ -48,7 +48,7 @@ For the most part it's just:: ============== * Python 3.10+ * Windows, Linux, or MacOS X 10.9+. -* On Linux, requires libsdl2 (2.0.10+). +* On Linux, requires libsdl3 (3.2.0+). =========== Changelog diff --git a/build_libtcod.py b/build_libtcod.py index 974904cc..0baa2295 100755 --- a/build_libtcod.py +++ b/build_libtcod.py @@ -13,6 +13,10 @@ from pathlib import Path from typing import Any, ClassVar +import attrs +import pycparser # type: ignore[import-untyped] +import pycparser.c_ast # type: ignore[import-untyped] +import pycparser.c_generator # type: ignore[import-untyped] from cffi import FFI # ruff: noqa: T201 @@ -204,15 +208,16 @@ def walk_sources(directory: str) -> Iterator[str]: extra_link_args.extend(GCC_CFLAGS[tdl_build]) ffi = FFI() -ffi.cdef(build_sdl.get_cdef()) +sdl_cdef = build_sdl.get_cdef() +ffi.cdef(sdl_cdef) for include in includes: try: ffi.cdef(include.header) - except Exception: + except Exception: # noqa: PERF203 # Print the source, for debugging. print(f"Error with: {include.path}") for i, line in enumerate(include.header.split("\n"), 1): - print("%03i %s" % (i, line)) + print(f"{i:03i} {line}") raise ffi.cdef( """ @@ -221,7 +226,10 @@ def walk_sources(directory: str) -> Iterator[str]: ) ffi.set_source( module_name, - "#include \n#include ", + """\ +#include +#define SDL_oldnames_h_ +#include """, include_dirs=include_dirs, library_dirs=library_dirs, sources=sources, @@ -380,10 +388,10 @@ def write_library_constants() -> None: f.write(f"""{parse_sdl_attrs("SDL_SCANCODE", None)[0]}\n""") f.write("\n# --- SDL keyboard symbols ---\n") - f.write(f"""{parse_sdl_attrs("SDLK", None)[0]}\n""") + f.write(f"""{parse_sdl_attrs("SDLK_", None)[0]}\n""") f.write("\n# --- SDL keyboard modifiers ---\n") - f.write("{}\n_REVERSE_MOD_TABLE = {}\n".format(*parse_sdl_attrs("KMOD", None))) + f.write("{}\n_REVERSE_MOD_TABLE = {}\n".format(*parse_sdl_attrs("SDL_KMOD", None))) f.write("\n# --- SDL wheel ---\n") f.write("{}\n_REVERSE_WHEEL_TABLE = {}\n".format(*parse_sdl_attrs("SDL_MOUSEWHEEL", all_names))) @@ -408,5 +416,220 @@ def write_library_constants() -> None: Path("tcod/event.py").write_text(event_py, encoding="utf-8") +def _fix_reserved_name(name: str) -> str: + """Add underscores to reserved Python keywords.""" + assert isinstance(name, str) + if name in ("def", "in"): + return name + "_" + return name + + +@attrs.define(frozen=True) +class ConvertedParam: + name: str = attrs.field(converter=_fix_reserved_name) + hint: str + original: str + + +def _type_from_names(names: list[str]) -> str: + if not names: + return "" + if names[-1] == "void": + return "None" + if names in (["unsigned", "char"], ["bool"]): + return "bool" + if names[-1] in ("size_t", "int", "ptrdiff_t"): + return "int" + return "Any" + + +def _param_as_hint(node: pycparser.c_ast.Node, default_name: str) -> ConvertedParam: + original = pycparser.c_generator.CGenerator().visit(node) + name: str + names: list[str] + match node: + case pycparser.c_ast.Typename(type=pycparser.c_ast.TypeDecl(type=pycparser.c_ast.IdentifierType(names=names))): + # Unnamed type + return ConvertedParam(default_name, _type_from_names(names), original) + case pycparser.c_ast.Decl( + name=name, type=pycparser.c_ast.TypeDecl(type=pycparser.c_ast.IdentifierType(names=names)) + ): + # Named type + return ConvertedParam(name, _type_from_names(names), original) + case pycparser.c_ast.Decl( + name=name, + type=pycparser.c_ast.ArrayDecl( + type=pycparser.c_ast.TypeDecl(type=pycparser.c_ast.IdentifierType(names=names)) + ), + ): + # Named array + return ConvertedParam(name, "Any", original) + case pycparser.c_ast.Decl(name=name, type=pycparser.c_ast.PtrDecl()): + # Named pointer + return ConvertedParam(name, "Any", original) + case pycparser.c_ast.Typename(name=name, type=pycparser.c_ast.PtrDecl()): + # Forwarded struct + return ConvertedParam(name or default_name, "Any", original) + case pycparser.c_ast.TypeDecl(type=pycparser.c_ast.IdentifierType(names=names)): + # Return type + return ConvertedParam(default_name, _type_from_names(names), original) + case pycparser.c_ast.PtrDecl(): + # Return pointer + return ConvertedParam(default_name, "Any", original) + case pycparser.c_ast.EllipsisParam(): + # C variable args + return ConvertedParam("*__args", "Any", original) + case _: + raise AssertionError + + +class DefinitionCollector(pycparser.c_ast.NodeVisitor): # type: ignore[misc] + """Gathers functions and names from C headers.""" + + def __init__(self) -> None: + """Initialize the object with empty values.""" + self.functions: list[str] = [] + """Indented Python function definitions.""" + self.variables: set[str] = set() + """Python variable definitions.""" + + def parse_defines(self, string: str, /) -> None: + """Parse C define directives into hinted names.""" + for match in re.finditer(r"#define\s+(\S+)\s+(\S+)\s*", string): + name, value = match.groups() + if value == "...": + self.variables.add(f"{name}: Final[int]") + else: + self.variables.add(f"{name}: Final[Literal[{value}]] = {value}") + + def visit_Decl(self, node: pycparser.c_ast.Decl) -> None: # noqa: N802 + """Parse C FFI functions into type hinted Python functions.""" + match node: + case pycparser.c_ast.Decl( + type=pycparser.c_ast.FuncDecl(), + ): + assert isinstance(node.type.args, pycparser.c_ast.ParamList), type(node.type.args) + arg_hints = [_param_as_hint(param, f"arg{i}") for i, param in enumerate(node.type.args.params)] + return_hint = _param_as_hint(node.type.type, "") + if len(arg_hints) == 1 and arg_hints[0].hint == "None": # Remove void parameter + arg_hints = [] + + python_params = [f"{p.name}: {p.hint}" for p in arg_hints] + if python_params: + if arg_hints[-1].name.startswith("*"): + python_params.insert(-1, "/") + else: + python_params.append("/") + c_def = pycparser.c_generator.CGenerator().visit(node) + python_def = f"""def {node.name}({", ".join(python_params)}) -> {return_hint.hint}:""" + self.functions.append(f''' {python_def}\n """{c_def}"""''') + + def visit_Enumerator(self, node: pycparser.c_ast.Enumerator) -> None: # noqa: N802 + """Parse C enums into hinted names.""" + name: str | None + value: str | int + match node: + case pycparser.c_ast.Enumerator(name=name, value=None): + self.variables.add(f"{name}: Final[int]") + case pycparser.c_ast.Enumerator(name=name, value=pycparser.c_ast.ID()): + self.variables.add(f"{name}: Final[int]") + case pycparser.c_ast.Enumerator(name=name, value=pycparser.c_ast.Constant(value=value)): + value = int(str(value).removesuffix("u"), base=0) + self.variables.add(f"{name}: Final[Literal[{value}]] = {value}") + case pycparser.c_ast.Enumerator( + name=name, value=pycparser.c_ast.UnaryOp(op="-", expr=pycparser.c_ast.Constant(value=value)) + ): + value = -int(str(value).removesuffix("u"), base=0) + self.variables.add(f"{name}: Final[Literal[{value}]] = {value}") + case pycparser.c_ast.Enumerator(name=name): + self.variables.add(f"{name}: Final[int]") + case _: + raise AssertionError + + +def write_hints() -> None: + """Write a custom _libtcod.pyi file from C definitions.""" + function_collector = DefinitionCollector() + c = pycparser.CParser() + + # Parse SDL headers + cdef = sdl_cdef + cdef = cdef.replace("int...", "int") + cdef = ( + """ +typedef int int8_t; +typedef int uint8_t; +typedef int int16_t; +typedef int uint16_t; +typedef int int32_t; +typedef int uint32_t; +typedef int int64_t; +typedef int uint64_t; +typedef int wchar_t; +typedef int intptr_t; +""" + + cdef + ) + cdef = re.sub(r"(typedef enum SDL_PixelFormat).*(SDL_PixelFormat;)", r"\1 \2", cdef, flags=re.DOTALL) + cdef = cdef.replace("padding[...]", "padding[]") + cdef = cdef.replace("...;} SDL_TouchFingerEvent;", "} SDL_TouchFingerEvent;") + function_collector.parse_defines(cdef) + cdef = re.sub(r"\n#define .*", "", cdef) + cdef = re.sub(r"""extern "Python" \{(.*?)\}""", r"\1", cdef, flags=re.DOTALL) + cdef = re.sub(r"//.*", "", cdef) + ast = c.parse(cdef) + function_collector.visit(ast) + + # Parse libtcod headers + cdef = "\n".join(include.header for include in includes) + function_collector.parse_defines(cdef) + cdef = re.sub(r"\n?#define .*", "", cdef) + cdef = re.sub(r"//.*", "", cdef) + cdef = ( + """ +typedef int int8_t; +typedef int uint8_t; +typedef int int16_t; +typedef int uint16_t; +typedef int int32_t; +typedef int uint32_t; +typedef int int64_t; +typedef int uint64_t; +typedef int wchar_t; +typedef int intptr_t; +typedef int ptrdiff_t; +typedef int size_t; +typedef unsigned char bool; +typedef void* SDL_PropertiesID; +""" + + cdef + ) + cdef = re.sub(r"""extern "Python" \{(.*?)\}""", r"\1", cdef, flags=re.DOTALL) + function_collector.visit(c.parse(cdef)) + + # Write PYI file + out_functions = """\n\n @staticmethod\n""".join(sorted(function_collector.functions)) + out_variables = "\n ".join(sorted(function_collector.variables)) + + pyi = f"""\ +# Autogenerated with build_libtcod.py +from typing import Any, Final, Literal + +# pyi files for CFFI ports are not standard +# ruff: noqa: A002, ANN401, D402, D403, D415, N801, N802, N803, N815, PLW0211, PYI021 + +class _lib: + @staticmethod +{out_functions} + + {out_variables} + +lib: _lib +ffi: Any +""" + Path("tcod/_libtcod.pyi").write_text(pyi) + + if __name__ == "__main__": + write_hints() write_library_constants() diff --git a/build_sdl.py b/build_sdl.py index e395c4d4..c8976fe5 100755 --- a/build_sdl.py +++ b/build_sdl.py @@ -12,6 +12,7 @@ import sys import zipfile from pathlib import Path +from tempfile import TemporaryDirectory from typing import Any import pcpp # type: ignore[import-untyped] @@ -23,11 +24,11 @@ BIT_SIZE, LINKAGE = platform.architecture() # Reject versions of SDL older than this, update the requirements in the readme if you change this. -SDL_MIN_VERSION = (2, 0, 10) -# The SDL2 version to parse and export symbols from. -SDL2_PARSE_VERSION = os.environ.get("SDL_VERSION", "2.0.20") -# The SDL2 version to include in binary distributions. -SDL2_BUNDLE_VERSION = os.environ.get("SDL_VERSION", "2.28.1") +SDL_MIN_VERSION = (3, 2, 0) +# The SDL version to parse and export symbols from. +SDL_PARSE_VERSION = os.environ.get("SDL_VERSION", "3.2.10") +# The SDL version to include in binary distributions. +SDL_BUNDLE_VERSION = os.environ.get("SDL_VERSION", "3.2.10") # Used to remove excessive newlines in debug outputs. @@ -41,7 +42,7 @@ # Most SDLK names need their values scrubbed. RE_SDLK = re.compile(r"(?PSDLK_\w+) =.*?(?=,\n|}\n)") # Remove compile time assertions from the cdef. -RE_ASSERT = re.compile(r"^.*SDL_compile_time_assert.*$", re.MULTILINE) +RE_ASSERT = re.compile(r"^.*SDL_COMPILE_TIME_ASSERT.*$", re.MULTILINE) # Padding values need to be scrubbed. RE_PADDING = re.compile(r"padding\[[^;]*\];") @@ -63,6 +64,9 @@ "SDL_HAS_FALLTHROUGH", "SDL_NO_THREAD_SAFETY_ANALYSIS", "SDL_SCOPED_CAPABILITY", + "SDL_NODISCARD", + "SDL_NOLONGLONG", + "SDL_WINAPI_FAMILY_PHONE", # Might show up in parsing and not in source. "SDL_ANDROID_EXTERNAL_STORAGE_READ", "SDL_ANDROID_EXTERNAL_STORAGE_WRITE", @@ -82,16 +86,18 @@ def check_sdl_version() -> None: - """Check the local SDL version on Linux distributions.""" + """Check the local SDL3 version on Linux distributions.""" if not sys.platform.startswith("linux"): return needed_version = f"{SDL_MIN_VERSION[0]}.{SDL_MIN_VERSION[1]}.{SDL_MIN_VERSION[2]}" try: - sdl_version_str = subprocess.check_output(["sdl2-config", "--version"], universal_newlines=True).strip() + sdl_version_str = subprocess.check_output( + ["pkg-config", "sdl3", "--modversion"], universal_newlines=True + ).strip() except FileNotFoundError as exc: msg = ( - "libsdl2-dev or equivalent must be installed on your system and must be at least version" - f" {needed_version}.\nsdl2-config must be on PATH." + "libsdl3-dev or equivalent must be installed on your system and must be at least version" + f" {needed_version}.\nsdl3-config must be on PATH." ) raise RuntimeError(msg) from exc print(f"Found SDL {sdl_version_str}.") @@ -101,44 +107,44 @@ def check_sdl_version() -> None: raise RuntimeError(msg) -def get_sdl2_file(version: str) -> Path: - """Return a path to an SDL2 archive for the current platform. The archive is downloaded if missing.""" +def get_sdl_file(version: str) -> Path: + """Return a path to an SDL3 archive for the current platform. The archive is downloaded if missing.""" if sys.platform == "win32": - sdl2_file = f"SDL2-devel-{version}-VC.zip" + sdl_archive = f"SDL3-devel-{version}-VC.zip" else: assert sys.platform == "darwin" - sdl2_file = f"SDL2-{version}.dmg" - sdl2_local_file = Path("dependencies", sdl2_file) - sdl2_remote_file = f"https://www.libsdl.org/release/{sdl2_file}" - if not sdl2_local_file.exists(): - print(f"Downloading {sdl2_remote_file}") + sdl_archive = f"SDL3-{version}.dmg" + sdl_local_file = Path("dependencies", sdl_archive) + sdl_remote_url = f"https://www.libsdl.org/release/{sdl_archive}" + if not sdl_local_file.exists(): + print(f"Downloading {sdl_remote_url}") Path("dependencies/").mkdir(parents=True, exist_ok=True) - with requests.get(sdl2_remote_file) as response: # noqa: S113 + with requests.get(sdl_remote_url) as response: # noqa: S113 response.raise_for_status() - sdl2_local_file.write_bytes(response.content) - return sdl2_local_file + sdl_local_file.write_bytes(response.content) + return sdl_local_file -def unpack_sdl2(version: str) -> Path: +def unpack_sdl(version: str) -> Path: """Return the path to an extracted SDL distribution. Creates it if missing.""" - sdl2_path = Path(f"dependencies/SDL2-{version}") + sdl_path = Path(f"dependencies/SDL3-{version}") if sys.platform == "darwin": - sdl2_dir = sdl2_path - sdl2_path /= "SDL2.framework" - if sdl2_path.exists(): - return sdl2_path - sdl2_arc = get_sdl2_file(version) - print(f"Extracting {sdl2_arc}") - if sdl2_arc.suffix == ".zip": - with zipfile.ZipFile(sdl2_arc) as zf: + sdl_dir = sdl_path + sdl_path /= "SDL3.framework" + if sdl_path.exists(): + return sdl_path + sdl_archive = get_sdl_file(version) + print(f"Extracting {sdl_archive}") + if sdl_archive.suffix == ".zip": + with zipfile.ZipFile(sdl_archive) as zf: zf.extractall("dependencies/") elif sys.platform == "darwin": - assert sdl2_arc.suffix == ".dmg" - subprocess.check_call(["hdiutil", "mount", sdl2_arc]) - subprocess.check_call(["mkdir", "-p", sdl2_dir]) - subprocess.check_call(["cp", "-r", "/Volumes/SDL2/SDL2.framework", sdl2_dir]) - subprocess.check_call(["hdiutil", "unmount", "/Volumes/SDL2"]) - return sdl2_path + assert sdl_archive.suffix == ".dmg" + subprocess.check_call(["hdiutil", "mount", sdl_archive]) + subprocess.check_call(["mkdir", "-p", sdl_dir]) + subprocess.check_call(["cp", "-r", "/Volumes/SDL3/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework", sdl_dir]) + subprocess.check_call(["hdiutil", "unmount", "/Volumes/SDL3"]) + return sdl_path class SDLParser(pcpp.Preprocessor): # type: ignore[misc] @@ -180,11 +186,9 @@ def _should_track_define(self, tokens: list[Any]) -> bool: return False # Value is a floating point number. if tokens[0].value.startswith("SDL_PR") and (tokens[0].value.endswith("32") or tokens[0].value.endswith("64")): return False # Data type for printing, which is not needed. - return bool( - tokens[0].value.startswith("KMOD_") - or tokens[0].value.startswith("SDL_") - or tokens[0].value.startswith("AUDIO_") - ) + if tokens[0].value.startswith("SDL_PLATFORM_"): + return False # Ignore platform definitions + return bool(str(tokens[0].value).startswith(("SDL_", "SDLK_"))) def on_directive_handle( self, @@ -197,6 +201,8 @@ def on_directive_handle( if directive.value == "define" and self._should_track_define(tokens): if tokens[2].type == "CPP_STRING": self.known_string_defines[tokens[0].value] = tokens[2].value + elif tokens[2].value in self.known_string_defines: + self.known_string_defines[tokens[0].value] = "..." else: self.known_defines.add(tokens[0].value) return super().on_directive_handle(directive, tokens, if_passthru, preceding_tokens) @@ -205,25 +211,25 @@ def on_directive_handle( check_sdl_version() if sys.platform == "win32" or sys.platform == "darwin": - SDL2_PARSE_PATH = unpack_sdl2(SDL2_PARSE_VERSION) - SDL2_BUNDLE_PATH = unpack_sdl2(SDL2_BUNDLE_VERSION) + SDL_PARSE_PATH = unpack_sdl(SDL_PARSE_VERSION) + SDL_BUNDLE_PATH = unpack_sdl(SDL_BUNDLE_VERSION) -SDL2_INCLUDE: Path +SDL_INCLUDE: Path if sys.platform == "win32": - SDL2_INCLUDE = SDL2_PARSE_PATH / "include" + SDL_INCLUDE = SDL_PARSE_PATH / "include" elif sys.platform == "darwin": - SDL2_INCLUDE = SDL2_PARSE_PATH / "Versions/A/Headers" + SDL_INCLUDE = SDL_PARSE_PATH / "Versions/A/Headers" else: # Unix matches = re.findall( r"-I(\S+)", - subprocess.check_output(["sdl2-config", "--cflags"], universal_newlines=True), + subprocess.check_output(["pkg-config", "sdl3", "--cflags"], universal_newlines=True), ) assert matches for match in matches: - if Path(match, "SDL_stdinc.h").is_file(): - SDL2_INCLUDE = match - assert SDL2_INCLUDE + if Path(match, "SDL3/SDL_stdinc.h").is_file(): + SDL_INCLUDE = match + assert SDL_INCLUDE EXTRA_CDEF = """ @@ -231,7 +237,7 @@ def on_directive_handle( extern "Python" { // SDL_AudioCallback callback. -void _sdl_audio_callback(void* userdata, Uint8* stream, int len); +void _sdl_audio_callback(void* userdata, uint8_t* stream, int len); // SDL to Python log function. void _sdl_log_output_function(void *userdata, int category, SDL_LogPriority priority, const char *message); // Generic event watcher callback. @@ -242,41 +248,45 @@ def on_directive_handle( def get_cdef() -> str: """Return the parsed code of SDL for CFFI.""" - parser = SDLParser() - parser.add_path(SDL2_INCLUDE) - parser.parse( + with TemporaryDirectory() as temp_dir: + # Add a false SDL_oldnames.h to prevent old symbols from being collected + fake_header_dir = Path(temp_dir, "SDL3") + fake_header_dir.mkdir() + (fake_header_dir / "SDL_oldnames.h").write_text("") + + parser = SDLParser() + parser.add_path(temp_dir) + parser.add_path(SDL_INCLUDE) + parser.parse( + """ + // Remove extern keyword. + #define extern + // Ignore some SDL assert statements. + #define DOXYGEN_SHOULD_IGNORE_THIS + #define SDL_COMPILE_TIME_ASSERT(x, y) + + #define _SIZE_T_DEFINED_ + typedef int... size_t; + + #define SDL_oldnames_h_ + + #include """ - // Remove extern keyword. - #define extern - // Ignore some SDL assert statements. - #define DOXYGEN_SHOULD_IGNORE_THIS - - #define _SIZE_T_DEFINED_ - typedef int... size_t; - - // Skip these headers. - #define SDL_atomic_h_ - #define SDL_thread_h_ - - #include - """ - ) - sdl2_cdef = parser.get_output() - sdl2_cdef = RE_VAFUNC.sub("", sdl2_cdef) - sdl2_cdef = RE_INLINE.sub("", sdl2_cdef) - sdl2_cdef = RE_PIXELFORMAT.sub(r"\g = ...", sdl2_cdef) - sdl2_cdef = RE_SDLK.sub(r"\g = ...", sdl2_cdef) - sdl2_cdef = RE_NEWLINES.sub("\n", sdl2_cdef) - sdl2_cdef = RE_ASSERT.sub("", sdl2_cdef) - sdl2_cdef = RE_PADDING.sub("padding[...];", sdl2_cdef) - sdl2_cdef = ( - sdl2_cdef.replace("int SDL_main(int argc, char *argv[]);", "") - .replace("typedef unsigned int uintptr_t;", "typedef int... uintptr_t;") - .replace("typedef unsigned int size_t;", "typedef int... size_t;") + ) + sdl_cdef = parser.get_output() + + sdl_cdef = RE_VAFUNC.sub("", sdl_cdef) + sdl_cdef = RE_INLINE.sub("", sdl_cdef) + sdl_cdef = RE_PIXELFORMAT.sub(r"\g = ...", sdl_cdef) + sdl_cdef = RE_SDLK.sub(r"\g = ...", sdl_cdef) + sdl_cdef = RE_NEWLINES.sub("\n", sdl_cdef) + sdl_cdef = RE_PADDING.sub("padding[...];", sdl_cdef) + sdl_cdef = sdl_cdef.replace("typedef unsigned int uintptr_t;", "typedef int... uintptr_t;").replace( + "typedef unsigned int size_t;", "typedef int... size_t;" ) for name in FLEXIBLE_STRUCTS: - sdl2_cdef = sdl2_cdef.replace(f"}} {name};", f"...;}} {name};") - return sdl2_cdef + EXTRA_CDEF + sdl_cdef = sdl_cdef.replace(f"}} {name};", f"...;}} {name};") + return sdl_cdef + EXTRA_CDEF include_dirs: list[str] = [] @@ -288,33 +298,37 @@ def get_cdef() -> str: if sys.platform == "darwin": - extra_link_args += ["-framework", "SDL2"] + extra_link_args += ["-framework", "SDL3"] else: - libraries += ["SDL2"] + libraries += ["SDL3"] -# Bundle the Windows SDL2 DLL. +# Bundle the Windows SDL DLL. if sys.platform == "win32": - include_dirs.append(str(SDL2_INCLUDE)) + include_dirs.append(str(SDL_INCLUDE)) ARCH_MAPPING = {"32bit": "x86", "64bit": "x64"} - SDL2_LIB_DIR = Path(SDL2_BUNDLE_PATH, "lib/", ARCH_MAPPING[BIT_SIZE]) - library_dirs.append(str(SDL2_LIB_DIR)) - SDL2_LIB_DEST = Path("tcod", ARCH_MAPPING[BIT_SIZE]) - SDL2_LIB_DEST.mkdir(exist_ok=True) - SDL2_LIB_DEST_FILE = SDL2_LIB_DEST / "SDL2.dll" - SDL2_LIB_FILE = SDL2_LIB_DIR / "SDL2.dll" - if not SDL2_LIB_DEST_FILE.exists() or SDL2_LIB_FILE.read_bytes() != SDL2_LIB_DEST_FILE.read_bytes(): - shutil.copy(SDL2_LIB_FILE, SDL2_LIB_DEST_FILE) - -# Link to the SDL2 framework on MacOS. + SDL_LIB_DIR = Path(SDL_BUNDLE_PATH, "lib/", ARCH_MAPPING[BIT_SIZE]) + library_dirs.append(str(SDL_LIB_DIR)) + SDL_LIB_DEST = Path("tcod", ARCH_MAPPING[BIT_SIZE]) + SDL_LIB_DEST.mkdir(exist_ok=True) + SDL_LIB_DEST_FILE = SDL_LIB_DEST / "SDL3.dll" + SDL_LIB_FILE = SDL_LIB_DIR / "SDL3.dll" + if not SDL_LIB_DEST_FILE.exists() or SDL_LIB_FILE.read_bytes() != SDL_LIB_DEST_FILE.read_bytes(): + shutil.copy(SDL_LIB_FILE, SDL_LIB_DEST_FILE) + +# Link to the SDL framework on MacOS. # Delocate will bundle the binaries in a later step. if sys.platform == "darwin": - HEADER_DIR = Path(SDL2_PARSE_PATH, "Headers") + HEADER_DIR = Path(SDL_PARSE_PATH, "Headers") include_dirs.append(HEADER_DIR) - extra_link_args += [f"-F{SDL2_BUNDLE_PATH}/.."] - extra_link_args += ["-rpath", f"{SDL2_BUNDLE_PATH}/.."] + extra_link_args += [f"-F{SDL_BUNDLE_PATH}/.."] + extra_link_args += ["-rpath", f"{SDL_BUNDLE_PATH}/.."] extra_link_args += ["-rpath", "/usr/local/opt/llvm/lib/"] -# Use sdl2-config to link to SDL2 on Linux. +# Use sdl-config to link to SDL on Linux. if sys.platform not in ["win32", "darwin"]: - extra_compile_args += subprocess.check_output(["sdl2-config", "--cflags"], universal_newlines=True).strip().split() - extra_link_args += subprocess.check_output(["sdl2-config", "--libs"], universal_newlines=True).strip().split() + extra_compile_args += ( + subprocess.check_output(["pkg-config", "sdl3", "--cflags"], universal_newlines=True).strip().split() + ) + extra_link_args += ( + subprocess.check_output(["pkg-config", "sdl3", "--libs"], universal_newlines=True).strip().split() + ) diff --git a/docs/tcod/event.rst b/docs/tcod/event.rst index 10aed249..7f2f059e 100644 --- a/docs/tcod/event.rst +++ b/docs/tcod/event.rst @@ -1,4 +1,4 @@ -SDL2 Event Handling ``tcod.event`` +SDL Event Handling ``tcod.event`` ================================== .. automodule:: tcod.event diff --git a/libtcod b/libtcod index 747b2e9d..ffa44720 160000 --- a/libtcod +++ b/libtcod @@ -1 +1 @@ -Subproject commit 747b2e9db06fca0f1281ba0ca6de173fbcb32eec +Subproject commit ffa447202e9b354691386e91f1288fd69dc1eaba diff --git a/pyproject.toml b/pyproject.toml index eac81af3..0e49f515 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,6 +10,7 @@ requires = [ "pycparser>=2.14", "pcpp==1.30", "requests>=2.28.1", + "attrs", ] build-backend = "setuptools.build_meta" diff --git a/setup.py b/setup.py index a98b64b3..6a835e5b 100755 --- a/setup.py +++ b/setup.py @@ -12,7 +12,7 @@ # ruff: noqa: T201 -SDL_VERSION_NEEDED = (2, 0, 5) +SDL_VERSION_NEEDED = (3, 2, 0) SETUP_DIR = Path(__file__).parent # setup.py current directory @@ -28,11 +28,11 @@ def get_package_data() -> list[str]: ] if "win32" in sys.platform: if bit_size == "32bit": - files += ["x86/SDL2.dll"] + files += ["x86/SDL3.dll"] else: - files += ["x64/SDL2.dll"] + files += ["x64/SDL3.dll"] if sys.platform == "darwin": - files += ["SDL2.framework/Versions/A/SDL2"] + files += ["SDL3.framework/Versions/A/SDL3"] return files @@ -42,13 +42,19 @@ def check_sdl_version() -> None: return needed_version = "{}.{}.{}".format(*SDL_VERSION_NEEDED) try: - sdl_version_str = subprocess.check_output(["sdl2-config", "--version"], universal_newlines=True).strip() # noqa: S603, S607 - except FileNotFoundError as exc: - msg = ( - f"libsdl2-dev or equivalent must be installed on your system and must be at least version {needed_version}." - "\nsdl2-config must be on PATH." - ) - raise RuntimeError(msg) from exc + sdl_version_str = subprocess.check_output( + ["pkg-config", "sdl3", "--modversion"], # noqa: S607 + universal_newlines=True, + ).strip() + except FileNotFoundError: + try: + sdl_version_str = subprocess.check_output(["sdl3-config", "--version"], universal_newlines=True).strip() # noqa: S603, S607 + except FileNotFoundError as exc: + msg = ( + f"libsdl3-dev or equivalent must be installed on your system and must be at least version {needed_version}." + "\nsdl3-config must be on PATH." + ) + raise RuntimeError(msg) from exc print(f"Found SDL {sdl_version_str}.") sdl_version = tuple(int(s) for s in sdl_version_str.split(".")) if sdl_version < SDL_VERSION_NEEDED: diff --git a/tcod/_libtcod.pyi b/tcod/_libtcod.pyi new file mode 100644 index 00000000..eaf13cb5 --- /dev/null +++ b/tcod/_libtcod.pyi @@ -0,0 +1,9622 @@ +# Autogenerated with build_libtcod.py +from typing import Any, Final, Literal + +# pyi files for CFFI ports are not standard +# ruff: noqa: A002, ANN401, D402, D403, D415, N801, N802, N803, N815, PLW0211, PYI021 + +class _lib: + @staticmethod + def NoiseGetSample(noise: Any, xyzw: Any, /) -> Any: + """float NoiseGetSample(TDLNoise *noise, float *xyzw)""" + + @staticmethod + def NoiseSampleMeshGrid(noise: Any, len: Any, in_: Any, out: Any, /) -> None: + """void NoiseSampleMeshGrid(TDLNoise *noise, const long len, const float *in, float *out)""" + + @staticmethod + def NoiseSampleOpenMeshGrid(noise: Any, ndim: int, shape: Any, ogrid_in: Any, out: Any, /) -> None: + """void NoiseSampleOpenMeshGrid(TDLNoise *noise, const int ndim, const long *shape, const float **ogrid_in, float *out)""" + + @staticmethod + def PathCostArrayFloat32(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayFloat32(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayInt16(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayInt16(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayInt32(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayInt32(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayInt8(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayInt8(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayUInt16(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayUInt16(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayUInt32(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayUInt32(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def PathCostArrayUInt8(x1: int, y1: int, x2: int, y2: int, map: Any, /) -> Any: + """float PathCostArrayUInt8(int x1, int y1, int x2, int y2, const struct PathCostArray *map)""" + + @staticmethod + def SDL_AcquireCameraFrame(camera: Any, timestampNS: Any, /) -> Any: + """SDL_Surface *SDL_AcquireCameraFrame(SDL_Camera *camera, Uint64 *timestampNS)""" + + @staticmethod + def SDL_AcquireGPUCommandBuffer(device: Any, /) -> Any: + """SDL_GPUCommandBuffer *SDL_AcquireGPUCommandBuffer(SDL_GPUDevice *device)""" + + @staticmethod + def SDL_AcquireGPUSwapchainTexture( + command_buffer: Any, + window: Any, + swapchain_texture: Any, + swapchain_texture_width: Any, + swapchain_texture_height: Any, + /, + ) -> bool: + """unsigned char SDL_AcquireGPUSwapchainTexture(SDL_GPUCommandBuffer *command_buffer, SDL_Window *window, SDL_GPUTexture **swapchain_texture, Uint32 *swapchain_texture_width, Uint32 *swapchain_texture_height)""" + + @staticmethod + def SDL_AddAtomicInt(a: Any, v: int, /) -> int: + """int SDL_AddAtomicInt(SDL_AtomicInt *a, int v)""" + + @staticmethod + def SDL_AddEventWatch(filter: Any, userdata: Any, /) -> bool: + """unsigned char SDL_AddEventWatch(SDL_EventFilter filter, void *userdata)""" + + @staticmethod + def SDL_AddGamepadMapping(mapping: Any, /) -> int: + """int SDL_AddGamepadMapping(const char *mapping)""" + + @staticmethod + def SDL_AddGamepadMappingsFromFile(file: Any, /) -> int: + """int SDL_AddGamepadMappingsFromFile(const char *file)""" + + @staticmethod + def SDL_AddGamepadMappingsFromIO(src: Any, closeio: bool, /) -> int: + """int SDL_AddGamepadMappingsFromIO(SDL_IOStream *src, unsigned char closeio)""" + + @staticmethod + def SDL_AddHintCallback(name: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_AddHintCallback(const char *name, SDL_HintCallback callback, void *userdata)""" + + @staticmethod + def SDL_AddSurfaceAlternateImage(surface: Any, image: Any, /) -> bool: + """unsigned char SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image)""" + + @staticmethod + def SDL_AddTimer(interval: Any, callback: Any, userdata: Any, /) -> Any: + """SDL_TimerID SDL_AddTimer(Uint32 interval, SDL_TimerCallback callback, void *userdata)""" + + @staticmethod + def SDL_AddTimerNS(interval: Any, callback: Any, userdata: Any, /) -> Any: + """SDL_TimerID SDL_AddTimerNS(Uint64 interval, SDL_NSTimerCallback callback, void *userdata)""" + + @staticmethod + def SDL_AddVulkanRenderSemaphores( + renderer: Any, wait_stage_mask: Any, wait_semaphore: Any, signal_semaphore: Any, / + ) -> bool: + """unsigned char SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore)""" + + @staticmethod + def SDL_AsyncIOFromFile(file: Any, mode: Any, /) -> Any: + """SDL_AsyncIO *SDL_AsyncIOFromFile(const char *file, const char *mode)""" + + @staticmethod + def SDL_AttachVirtualJoystick(desc: Any, /) -> Any: + """SDL_JoystickID SDL_AttachVirtualJoystick(const SDL_VirtualJoystickDesc *desc)""" + + @staticmethod + def SDL_AudioDevicePaused(devid: Any, /) -> bool: + """unsigned char SDL_AudioDevicePaused(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_AudioStreamDevicePaused(stream: Any, /) -> bool: + """unsigned char SDL_AudioStreamDevicePaused(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_BeginGPUComputePass( + command_buffer: Any, + storage_texture_bindings: Any, + num_storage_texture_bindings: Any, + storage_buffer_bindings: Any, + num_storage_buffer_bindings: Any, + /, + ) -> Any: + """SDL_GPUComputePass *SDL_BeginGPUComputePass(SDL_GPUCommandBuffer *command_buffer, const SDL_GPUStorageTextureReadWriteBinding *storage_texture_bindings, Uint32 num_storage_texture_bindings, const SDL_GPUStorageBufferReadWriteBinding *storage_buffer_bindings, Uint32 num_storage_buffer_bindings)""" + + @staticmethod + def SDL_BeginGPUCopyPass(command_buffer: Any, /) -> Any: + """SDL_GPUCopyPass *SDL_BeginGPUCopyPass(SDL_GPUCommandBuffer *command_buffer)""" + + @staticmethod + def SDL_BeginGPURenderPass( + command_buffer: Any, color_target_infos: Any, num_color_targets: Any, depth_stencil_target_info: Any, / + ) -> Any: + """SDL_GPURenderPass *SDL_BeginGPURenderPass(SDL_GPUCommandBuffer *command_buffer, const SDL_GPUColorTargetInfo *color_target_infos, Uint32 num_color_targets, const SDL_GPUDepthStencilTargetInfo *depth_stencil_target_info)""" + + @staticmethod + def SDL_BindAudioStream(devid: Any, stream: Any, /) -> bool: + """unsigned char SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream)""" + + @staticmethod + def SDL_BindAudioStreams(devid: Any, streams: Any, num_streams: int, /) -> bool: + """unsigned char SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream * const *streams, int num_streams)""" + + @staticmethod + def SDL_BindGPUComputePipeline(compute_pass: Any, compute_pipeline: Any, /) -> None: + """void SDL_BindGPUComputePipeline(SDL_GPUComputePass *compute_pass, SDL_GPUComputePipeline *compute_pipeline)""" + + @staticmethod + def SDL_BindGPUComputeSamplers( + compute_pass: Any, first_slot: Any, texture_sampler_bindings: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUComputeSamplers(SDL_GPUComputePass *compute_pass, Uint32 first_slot, const SDL_GPUTextureSamplerBinding *texture_sampler_bindings, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUComputeStorageBuffers( + compute_pass: Any, first_slot: Any, storage_buffers: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUComputeStorageBuffers(SDL_GPUComputePass *compute_pass, Uint32 first_slot, SDL_GPUBuffer * const *storage_buffers, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUComputeStorageTextures( + compute_pass: Any, first_slot: Any, storage_textures: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUComputeStorageTextures(SDL_GPUComputePass *compute_pass, Uint32 first_slot, SDL_GPUTexture * const *storage_textures, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUFragmentSamplers( + render_pass: Any, first_slot: Any, texture_sampler_bindings: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUFragmentSamplers(SDL_GPURenderPass *render_pass, Uint32 first_slot, const SDL_GPUTextureSamplerBinding *texture_sampler_bindings, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUFragmentStorageBuffers( + render_pass: Any, first_slot: Any, storage_buffers: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUFragmentStorageBuffers(SDL_GPURenderPass *render_pass, Uint32 first_slot, SDL_GPUBuffer * const *storage_buffers, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUFragmentStorageTextures( + render_pass: Any, first_slot: Any, storage_textures: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUFragmentStorageTextures(SDL_GPURenderPass *render_pass, Uint32 first_slot, SDL_GPUTexture * const *storage_textures, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUGraphicsPipeline(render_pass: Any, graphics_pipeline: Any, /) -> None: + """void SDL_BindGPUGraphicsPipeline(SDL_GPURenderPass *render_pass, SDL_GPUGraphicsPipeline *graphics_pipeline)""" + + @staticmethod + def SDL_BindGPUIndexBuffer(render_pass: Any, binding: Any, index_element_size: Any, /) -> None: + """void SDL_BindGPUIndexBuffer(SDL_GPURenderPass *render_pass, const SDL_GPUBufferBinding *binding, SDL_GPUIndexElementSize index_element_size)""" + + @staticmethod + def SDL_BindGPUVertexBuffers(render_pass: Any, first_slot: Any, bindings: Any, num_bindings: Any, /) -> None: + """void SDL_BindGPUVertexBuffers(SDL_GPURenderPass *render_pass, Uint32 first_slot, const SDL_GPUBufferBinding *bindings, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUVertexSamplers( + render_pass: Any, first_slot: Any, texture_sampler_bindings: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUVertexSamplers(SDL_GPURenderPass *render_pass, Uint32 first_slot, const SDL_GPUTextureSamplerBinding *texture_sampler_bindings, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUVertexStorageBuffers( + render_pass: Any, first_slot: Any, storage_buffers: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUVertexStorageBuffers(SDL_GPURenderPass *render_pass, Uint32 first_slot, SDL_GPUBuffer * const *storage_buffers, Uint32 num_bindings)""" + + @staticmethod + def SDL_BindGPUVertexStorageTextures( + render_pass: Any, first_slot: Any, storage_textures: Any, num_bindings: Any, / + ) -> None: + """void SDL_BindGPUVertexStorageTextures(SDL_GPURenderPass *render_pass, Uint32 first_slot, SDL_GPUTexture * const *storage_textures, Uint32 num_bindings)""" + + @staticmethod + def SDL_BlitGPUTexture(command_buffer: Any, info: Any, /) -> None: + """void SDL_BlitGPUTexture(SDL_GPUCommandBuffer *command_buffer, const SDL_GPUBlitInfo *info)""" + + @staticmethod + def SDL_BlitSurface(src: Any, srcrect: Any, dst: Any, dstrect: Any, /) -> bool: + """unsigned char SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect)""" + + @staticmethod + def SDL_BlitSurface9Grid( + src: Any, + srcrect: Any, + left_width: int, + right_width: int, + top_height: int, + bottom_height: int, + scale: Any, + scaleMode: Any, + dst: Any, + dstrect: Any, + /, + ) -> bool: + """unsigned char SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect)""" + + @staticmethod + def SDL_BlitSurfaceScaled(src: Any, srcrect: Any, dst: Any, dstrect: Any, scaleMode: Any, /) -> bool: + """unsigned char SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode)""" + + @staticmethod + def SDL_BlitSurfaceTiled(src: Any, srcrect: Any, dst: Any, dstrect: Any, /) -> bool: + """unsigned char SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect)""" + + @staticmethod + def SDL_BlitSurfaceTiledWithScale( + src: Any, srcrect: Any, scale: Any, scaleMode: Any, dst: Any, dstrect: Any, / + ) -> bool: + """unsigned char SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect)""" + + @staticmethod + def SDL_BlitSurfaceUnchecked(src: Any, srcrect: Any, dst: Any, dstrect: Any, /) -> bool: + """unsigned char SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect)""" + + @staticmethod + def SDL_BlitSurfaceUncheckedScaled(src: Any, srcrect: Any, dst: Any, dstrect: Any, scaleMode: Any, /) -> bool: + """unsigned char SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode)""" + + @staticmethod + def SDL_BroadcastCondition(cond: Any, /) -> None: + """void SDL_BroadcastCondition(SDL_Condition *cond)""" + + @staticmethod + def SDL_CalculateGPUTextureFormatSize(format: Any, width: Any, height: Any, depth_or_layer_count: Any, /) -> Any: + """Uint32 SDL_CalculateGPUTextureFormatSize(SDL_GPUTextureFormat format, Uint32 width, Uint32 height, Uint32 depth_or_layer_count)""" + + @staticmethod + def SDL_CancelGPUCommandBuffer(command_buffer: Any, /) -> bool: + """unsigned char SDL_CancelGPUCommandBuffer(SDL_GPUCommandBuffer *command_buffer)""" + + @staticmethod + def SDL_CaptureMouse(enabled: bool, /) -> bool: + """unsigned char SDL_CaptureMouse(unsigned char enabled)""" + + @staticmethod + def SDL_ClaimWindowForGPUDevice(device: Any, window: Any, /) -> bool: + """unsigned char SDL_ClaimWindowForGPUDevice(SDL_GPUDevice *device, SDL_Window *window)""" + + @staticmethod + def SDL_CleanupTLS() -> None: + """void SDL_CleanupTLS(void)""" + + @staticmethod + def SDL_ClearAudioStream(stream: Any, /) -> bool: + """unsigned char SDL_ClearAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_ClearClipboardData() -> bool: + """unsigned char SDL_ClearClipboardData(void)""" + + @staticmethod + def SDL_ClearComposition(window: Any, /) -> bool: + """unsigned char SDL_ClearComposition(SDL_Window *window)""" + + @staticmethod + def SDL_ClearError() -> bool: + """unsigned char SDL_ClearError(void)""" + + @staticmethod + def SDL_ClearProperty(props: Any, name: Any, /) -> bool: + """unsigned char SDL_ClearProperty(SDL_PropertiesID props, const char *name)""" + + @staticmethod + def SDL_ClearSurface(surface: Any, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a)""" + + @staticmethod + def SDL_ClickTrayEntry(entry: Any, /) -> None: + """void SDL_ClickTrayEntry(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_CloseAsyncIO(asyncio: Any, flush: bool, queue: Any, userdata: Any, /) -> bool: + """unsigned char SDL_CloseAsyncIO(SDL_AsyncIO *asyncio, unsigned char flush, SDL_AsyncIOQueue *queue, void *userdata)""" + + @staticmethod + def SDL_CloseAudioDevice(devid: Any, /) -> None: + """void SDL_CloseAudioDevice(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_CloseCamera(camera: Any, /) -> None: + """void SDL_CloseCamera(SDL_Camera *camera)""" + + @staticmethod + def SDL_CloseGamepad(gamepad: Any, /) -> None: + """void SDL_CloseGamepad(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_CloseHaptic(haptic: Any, /) -> None: + """void SDL_CloseHaptic(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_CloseIO(context: Any, /) -> bool: + """unsigned char SDL_CloseIO(SDL_IOStream *context)""" + + @staticmethod + def SDL_CloseJoystick(joystick: Any, /) -> None: + """void SDL_CloseJoystick(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_CloseSensor(sensor: Any, /) -> None: + """void SDL_CloseSensor(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_CloseStorage(storage: Any, /) -> bool: + """unsigned char SDL_CloseStorage(SDL_Storage *storage)""" + + @staticmethod + def SDL_CompareAndSwapAtomicInt(a: Any, oldval: int, newval: int, /) -> bool: + """unsigned char SDL_CompareAndSwapAtomicInt(SDL_AtomicInt *a, int oldval, int newval)""" + + @staticmethod + def SDL_CompareAndSwapAtomicPointer(a: Any, oldval: Any, newval: Any, /) -> bool: + """unsigned char SDL_CompareAndSwapAtomicPointer(void **a, void *oldval, void *newval)""" + + @staticmethod + def SDL_CompareAndSwapAtomicU32(a: Any, oldval: Any, newval: Any, /) -> bool: + """unsigned char SDL_CompareAndSwapAtomicU32(SDL_AtomicU32 *a, Uint32 oldval, Uint32 newval)""" + + @staticmethod + def SDL_ComposeCustomBlendMode( + srcColorFactor: Any, + dstColorFactor: Any, + colorOperation: Any, + srcAlphaFactor: Any, + dstAlphaFactor: Any, + alphaOperation: Any, + /, + ) -> Any: + """SDL_BlendMode SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor, SDL_BlendFactor dstColorFactor, SDL_BlendOperation colorOperation, SDL_BlendFactor srcAlphaFactor, SDL_BlendFactor dstAlphaFactor, SDL_BlendOperation alphaOperation)""" + + @staticmethod + def SDL_ConvertAudioSamples( + src_spec: Any, src_data: Any, src_len: int, dst_spec: Any, dst_data: Any, dst_len: Any, / + ) -> bool: + """unsigned char SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, const Uint8 *src_data, int src_len, const SDL_AudioSpec *dst_spec, Uint8 **dst_data, int *dst_len)""" + + @staticmethod + def SDL_ConvertEventToRenderCoordinates(renderer: Any, event: Any, /) -> bool: + """unsigned char SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event)""" + + @staticmethod + def SDL_ConvertPixels( + width: int, height: int, src_format: Any, src: Any, src_pitch: int, dst_format: Any, dst: Any, dst_pitch: int, / + ) -> bool: + """unsigned char SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch)""" + + @staticmethod + def SDL_ConvertPixelsAndColorspace( + width: int, + height: int, + src_format: Any, + src_colorspace: Any, + src_properties: Any, + src: Any, + src_pitch: int, + dst_format: Any, + dst_colorspace: Any, + dst_properties: Any, + dst: Any, + dst_pitch: int, + /, + ) -> bool: + """unsigned char SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch)""" + + @staticmethod + def SDL_ConvertSurface(surface: Any, format: Any, /) -> Any: + """SDL_Surface *SDL_ConvertSurface(SDL_Surface *surface, SDL_PixelFormat format)""" + + @staticmethod + def SDL_ConvertSurfaceAndColorspace(surface: Any, format: Any, palette: Any, colorspace: Any, props: Any, /) -> Any: + """SDL_Surface *SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelFormat format, SDL_Palette *palette, SDL_Colorspace colorspace, SDL_PropertiesID props)""" + + @staticmethod + def SDL_CopyFile(oldpath: Any, newpath: Any, /) -> bool: + """unsigned char SDL_CopyFile(const char *oldpath, const char *newpath)""" + + @staticmethod + def SDL_CopyGPUBufferToBuffer(copy_pass: Any, source: Any, destination: Any, size: Any, cycle: bool, /) -> None: + """void SDL_CopyGPUBufferToBuffer(SDL_GPUCopyPass *copy_pass, const SDL_GPUBufferLocation *source, const SDL_GPUBufferLocation *destination, Uint32 size, unsigned char cycle)""" + + @staticmethod + def SDL_CopyGPUTextureToTexture( + copy_pass: Any, source: Any, destination: Any, w: Any, h: Any, d: Any, cycle: bool, / + ) -> None: + """void SDL_CopyGPUTextureToTexture(SDL_GPUCopyPass *copy_pass, const SDL_GPUTextureLocation *source, const SDL_GPUTextureLocation *destination, Uint32 w, Uint32 h, Uint32 d, unsigned char cycle)""" + + @staticmethod + def SDL_CopyProperties(src: Any, dst: Any, /) -> bool: + """unsigned char SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst)""" + + @staticmethod + def SDL_CopyStorageFile(storage: Any, oldpath: Any, newpath: Any, /) -> bool: + """unsigned char SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath)""" + + @staticmethod + def SDL_CreateAsyncIOQueue() -> Any: + """SDL_AsyncIOQueue *SDL_CreateAsyncIOQueue(void)""" + + @staticmethod + def SDL_CreateAudioStream(src_spec: Any, dst_spec: Any, /) -> Any: + """SDL_AudioStream *SDL_CreateAudioStream(const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec)""" + + @staticmethod + def SDL_CreateColorCursor(surface: Any, hot_x: int, hot_y: int, /) -> Any: + """SDL_Cursor *SDL_CreateColorCursor(SDL_Surface *surface, int hot_x, int hot_y)""" + + @staticmethod + def SDL_CreateCondition() -> Any: + """SDL_Condition *SDL_CreateCondition(void)""" + + @staticmethod + def SDL_CreateCursor(data: Any, mask: Any, w: int, h: int, hot_x: int, hot_y: int, /) -> Any: + """SDL_Cursor *SDL_CreateCursor(const Uint8 *data, const Uint8 *mask, int w, int h, int hot_x, int hot_y)""" + + @staticmethod + def SDL_CreateDirectory(path: Any, /) -> bool: + """unsigned char SDL_CreateDirectory(const char *path)""" + + @staticmethod + def SDL_CreateEnvironment(populated: bool, /) -> Any: + """SDL_Environment *SDL_CreateEnvironment(unsigned char populated)""" + + @staticmethod + def SDL_CreateGPUBuffer(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUBuffer *SDL_CreateGPUBuffer(SDL_GPUDevice *device, const SDL_GPUBufferCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUComputePipeline(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUComputePipeline *SDL_CreateGPUComputePipeline(SDL_GPUDevice *device, const SDL_GPUComputePipelineCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUDevice(format_flags: Any, debug_mode: bool, name: Any, /) -> Any: + """SDL_GPUDevice *SDL_CreateGPUDevice(SDL_GPUShaderFormat format_flags, unsigned char debug_mode, const char *name)""" + + @staticmethod + def SDL_CreateGPUDeviceWithProperties(props: Any, /) -> Any: + """SDL_GPUDevice *SDL_CreateGPUDeviceWithProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_CreateGPUGraphicsPipeline(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUGraphicsPipeline *SDL_CreateGPUGraphicsPipeline(SDL_GPUDevice *device, const SDL_GPUGraphicsPipelineCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUSampler(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUSampler *SDL_CreateGPUSampler(SDL_GPUDevice *device, const SDL_GPUSamplerCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUShader(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUShader *SDL_CreateGPUShader(SDL_GPUDevice *device, const SDL_GPUShaderCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUTexture(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUTexture *SDL_CreateGPUTexture(SDL_GPUDevice *device, const SDL_GPUTextureCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateGPUTransferBuffer(device: Any, createinfo: Any, /) -> Any: + """SDL_GPUTransferBuffer *SDL_CreateGPUTransferBuffer(SDL_GPUDevice *device, const SDL_GPUTransferBufferCreateInfo *createinfo)""" + + @staticmethod + def SDL_CreateHapticEffect(haptic: Any, effect: Any, /) -> int: + """int SDL_CreateHapticEffect(SDL_Haptic *haptic, const SDL_HapticEffect *effect)""" + + @staticmethod + def SDL_CreateMutex() -> Any: + """SDL_Mutex *SDL_CreateMutex(void)""" + + @staticmethod + def SDL_CreatePalette(ncolors: int, /) -> Any: + """SDL_Palette *SDL_CreatePalette(int ncolors)""" + + @staticmethod + def SDL_CreatePopupWindow(parent: Any, offset_x: int, offset_y: int, w: int, h: int, flags: Any, /) -> Any: + """SDL_Window *SDL_CreatePopupWindow(SDL_Window *parent, int offset_x, int offset_y, int w, int h, SDL_WindowFlags flags)""" + + @staticmethod + def SDL_CreateProcess(args: Any, pipe_stdio: bool, /) -> Any: + """SDL_Process *SDL_CreateProcess(const char * const *args, unsigned char pipe_stdio)""" + + @staticmethod + def SDL_CreateProcessWithProperties(props: Any, /) -> Any: + """SDL_Process *SDL_CreateProcessWithProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_CreateProperties() -> Any: + """SDL_PropertiesID SDL_CreateProperties(void)""" + + @staticmethod + def SDL_CreateRWLock() -> Any: + """SDL_RWLock *SDL_CreateRWLock(void)""" + + @staticmethod + def SDL_CreateRenderer(window: Any, name: Any, /) -> Any: + """SDL_Renderer *SDL_CreateRenderer(SDL_Window *window, const char *name)""" + + @staticmethod + def SDL_CreateRendererWithProperties(props: Any, /) -> Any: + """SDL_Renderer *SDL_CreateRendererWithProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_CreateSemaphore(initial_value: Any, /) -> Any: + """SDL_Semaphore *SDL_CreateSemaphore(Uint32 initial_value)""" + + @staticmethod + def SDL_CreateSoftwareRenderer(surface: Any, /) -> Any: + """SDL_Renderer *SDL_CreateSoftwareRenderer(SDL_Surface *surface)""" + + @staticmethod + def SDL_CreateStorageDirectory(storage: Any, path: Any, /) -> bool: + """unsigned char SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path)""" + + @staticmethod + def SDL_CreateSurface(width: int, height: int, format: Any, /) -> Any: + """SDL_Surface *SDL_CreateSurface(int width, int height, SDL_PixelFormat format)""" + + @staticmethod + def SDL_CreateSurfaceFrom(width: int, height: int, format: Any, pixels: Any, pitch: int, /) -> Any: + """SDL_Surface *SDL_CreateSurfaceFrom(int width, int height, SDL_PixelFormat format, void *pixels, int pitch)""" + + @staticmethod + def SDL_CreateSurfacePalette(surface: Any, /) -> Any: + """SDL_Palette *SDL_CreateSurfacePalette(SDL_Surface *surface)""" + + @staticmethod + def SDL_CreateSystemCursor(id: Any, /) -> Any: + """SDL_Cursor *SDL_CreateSystemCursor(SDL_SystemCursor id)""" + + @staticmethod + def SDL_CreateTexture(renderer: Any, format: Any, access: Any, w: int, h: int, /) -> Any: + """SDL_Texture *SDL_CreateTexture(SDL_Renderer *renderer, SDL_PixelFormat format, SDL_TextureAccess access, int w, int h)""" + + @staticmethod + def SDL_CreateTextureFromSurface(renderer: Any, surface: Any, /) -> Any: + """SDL_Texture *SDL_CreateTextureFromSurface(SDL_Renderer *renderer, SDL_Surface *surface)""" + + @staticmethod + def SDL_CreateTextureWithProperties(renderer: Any, props: Any, /) -> Any: + """SDL_Texture *SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props)""" + + @staticmethod + def SDL_CreateThreadRuntime(fn: Any, name: Any, data: Any, pfnBeginThread: Any, pfnEndThread: Any, /) -> Any: + """SDL_Thread *SDL_CreateThreadRuntime(SDL_ThreadFunction fn, const char *name, void *data, SDL_FunctionPointer pfnBeginThread, SDL_FunctionPointer pfnEndThread)""" + + @staticmethod + def SDL_CreateThreadWithPropertiesRuntime(props: Any, pfnBeginThread: Any, pfnEndThread: Any, /) -> Any: + """SDL_Thread *SDL_CreateThreadWithPropertiesRuntime(SDL_PropertiesID props, SDL_FunctionPointer pfnBeginThread, SDL_FunctionPointer pfnEndThread)""" + + @staticmethod + def SDL_CreateTray(icon: Any, tooltip: Any, /) -> Any: + """SDL_Tray *SDL_CreateTray(SDL_Surface *icon, const char *tooltip)""" + + @staticmethod + def SDL_CreateTrayMenu(tray: Any, /) -> Any: + """SDL_TrayMenu *SDL_CreateTrayMenu(SDL_Tray *tray)""" + + @staticmethod + def SDL_CreateTraySubmenu(entry: Any, /) -> Any: + """SDL_TrayMenu *SDL_CreateTraySubmenu(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_CreateWindow(title: Any, w: int, h: int, flags: Any, /) -> Any: + """SDL_Window *SDL_CreateWindow(const char *title, int w, int h, SDL_WindowFlags flags)""" + + @staticmethod + def SDL_CreateWindowAndRenderer( + title: Any, width: int, height: int, window_flags: Any, window: Any, renderer: Any, / + ) -> bool: + """unsigned char SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer)""" + + @staticmethod + def SDL_CreateWindowWithProperties(props: Any, /) -> Any: + """SDL_Window *SDL_CreateWindowWithProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_CursorVisible() -> bool: + """unsigned char SDL_CursorVisible(void)""" + + @staticmethod + def SDL_DateTimeToTime(dt: Any, ticks: Any, /) -> bool: + """unsigned char SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks)""" + + @staticmethod + def SDL_Delay(ms: Any, /) -> None: + """void SDL_Delay(Uint32 ms)""" + + @staticmethod + def SDL_DelayNS(ns: Any, /) -> None: + """void SDL_DelayNS(Uint64 ns)""" + + @staticmethod + def SDL_DelayPrecise(ns: Any, /) -> None: + """void SDL_DelayPrecise(Uint64 ns)""" + + @staticmethod + def SDL_DestroyAsyncIOQueue(queue: Any, /) -> None: + """void SDL_DestroyAsyncIOQueue(SDL_AsyncIOQueue *queue)""" + + @staticmethod + def SDL_DestroyAudioStream(stream: Any, /) -> None: + """void SDL_DestroyAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_DestroyCondition(cond: Any, /) -> None: + """void SDL_DestroyCondition(SDL_Condition *cond)""" + + @staticmethod + def SDL_DestroyCursor(cursor: Any, /) -> None: + """void SDL_DestroyCursor(SDL_Cursor *cursor)""" + + @staticmethod + def SDL_DestroyEnvironment(env: Any, /) -> None: + """void SDL_DestroyEnvironment(SDL_Environment *env)""" + + @staticmethod + def SDL_DestroyGPUDevice(device: Any, /) -> None: + """void SDL_DestroyGPUDevice(SDL_GPUDevice *device)""" + + @staticmethod + def SDL_DestroyHapticEffect(haptic: Any, effect: int, /) -> None: + """void SDL_DestroyHapticEffect(SDL_Haptic *haptic, int effect)""" + + @staticmethod + def SDL_DestroyMutex(mutex: Any, /) -> None: + """void SDL_DestroyMutex(SDL_Mutex *mutex)""" + + @staticmethod + def SDL_DestroyPalette(palette: Any, /) -> None: + """void SDL_DestroyPalette(SDL_Palette *palette)""" + + @staticmethod + def SDL_DestroyProcess(process: Any, /) -> None: + """void SDL_DestroyProcess(SDL_Process *process)""" + + @staticmethod + def SDL_DestroyProperties(props: Any, /) -> None: + """void SDL_DestroyProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_DestroyRWLock(rwlock: Any, /) -> None: + """void SDL_DestroyRWLock(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_DestroyRenderer(renderer: Any, /) -> None: + """void SDL_DestroyRenderer(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_DestroySemaphore(sem: Any, /) -> None: + """void SDL_DestroySemaphore(SDL_Semaphore *sem)""" + + @staticmethod + def SDL_DestroySurface(surface: Any, /) -> None: + """void SDL_DestroySurface(SDL_Surface *surface)""" + + @staticmethod + def SDL_DestroyTexture(texture: Any, /) -> None: + """void SDL_DestroyTexture(SDL_Texture *texture)""" + + @staticmethod + def SDL_DestroyTray(tray: Any, /) -> None: + """void SDL_DestroyTray(SDL_Tray *tray)""" + + @staticmethod + def SDL_DestroyWindow(window: Any, /) -> None: + """void SDL_DestroyWindow(SDL_Window *window)""" + + @staticmethod + def SDL_DestroyWindowSurface(window: Any, /) -> bool: + """unsigned char SDL_DestroyWindowSurface(SDL_Window *window)""" + + @staticmethod + def SDL_DetachThread(thread: Any, /) -> None: + """void SDL_DetachThread(SDL_Thread *thread)""" + + @staticmethod + def SDL_DetachVirtualJoystick(instance_id: Any, /) -> bool: + """unsigned char SDL_DetachVirtualJoystick(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_DisableScreenSaver() -> bool: + """unsigned char SDL_DisableScreenSaver(void)""" + + @staticmethod + def SDL_DispatchGPUCompute(compute_pass: Any, groupcount_x: Any, groupcount_y: Any, groupcount_z: Any, /) -> None: + """void SDL_DispatchGPUCompute(SDL_GPUComputePass *compute_pass, Uint32 groupcount_x, Uint32 groupcount_y, Uint32 groupcount_z)""" + + @staticmethod + def SDL_DispatchGPUComputeIndirect(compute_pass: Any, buffer: Any, offset: Any, /) -> None: + """void SDL_DispatchGPUComputeIndirect(SDL_GPUComputePass *compute_pass, SDL_GPUBuffer *buffer, Uint32 offset)""" + + @staticmethod + def SDL_DownloadFromGPUBuffer(copy_pass: Any, source: Any, destination: Any, /) -> None: + """void SDL_DownloadFromGPUBuffer(SDL_GPUCopyPass *copy_pass, const SDL_GPUBufferRegion *source, const SDL_GPUTransferBufferLocation *destination)""" + + @staticmethod + def SDL_DownloadFromGPUTexture(copy_pass: Any, source: Any, destination: Any, /) -> None: + """void SDL_DownloadFromGPUTexture(SDL_GPUCopyPass *copy_pass, const SDL_GPUTextureRegion *source, const SDL_GPUTextureTransferInfo *destination)""" + + @staticmethod + def SDL_DrawGPUIndexedPrimitives( + render_pass: Any, + num_indices: Any, + num_instances: Any, + first_index: Any, + vertex_offset: Any, + first_instance: Any, + /, + ) -> None: + """void SDL_DrawGPUIndexedPrimitives(SDL_GPURenderPass *render_pass, Uint32 num_indices, Uint32 num_instances, Uint32 first_index, Sint32 vertex_offset, Uint32 first_instance)""" + + @staticmethod + def SDL_DrawGPUIndexedPrimitivesIndirect(render_pass: Any, buffer: Any, offset: Any, draw_count: Any, /) -> None: + """void SDL_DrawGPUIndexedPrimitivesIndirect(SDL_GPURenderPass *render_pass, SDL_GPUBuffer *buffer, Uint32 offset, Uint32 draw_count)""" + + @staticmethod + def SDL_DrawGPUPrimitives( + render_pass: Any, num_vertices: Any, num_instances: Any, first_vertex: Any, first_instance: Any, / + ) -> None: + """void SDL_DrawGPUPrimitives(SDL_GPURenderPass *render_pass, Uint32 num_vertices, Uint32 num_instances, Uint32 first_vertex, Uint32 first_instance)""" + + @staticmethod + def SDL_DrawGPUPrimitivesIndirect(render_pass: Any, buffer: Any, offset: Any, draw_count: Any, /) -> None: + """void SDL_DrawGPUPrimitivesIndirect(SDL_GPURenderPass *render_pass, SDL_GPUBuffer *buffer, Uint32 offset, Uint32 draw_count)""" + + @staticmethod + def SDL_DuplicateSurface(surface: Any, /) -> Any: + """SDL_Surface *SDL_DuplicateSurface(SDL_Surface *surface)""" + + @staticmethod + def SDL_EGL_GetCurrentConfig() -> Any: + """SDL_EGLConfig SDL_EGL_GetCurrentConfig(void)""" + + @staticmethod + def SDL_EGL_GetCurrentDisplay() -> Any: + """SDL_EGLDisplay SDL_EGL_GetCurrentDisplay(void)""" + + @staticmethod + def SDL_EGL_GetProcAddress(proc: Any, /) -> Any: + """SDL_FunctionPointer SDL_EGL_GetProcAddress(const char *proc)""" + + @staticmethod + def SDL_EGL_GetWindowSurface(window: Any, /) -> Any: + """SDL_EGLSurface SDL_EGL_GetWindowSurface(SDL_Window *window)""" + + @staticmethod + def SDL_EGL_SetAttributeCallbacks( + platformAttribCallback: Any, surfaceAttribCallback: Any, contextAttribCallback: Any, userdata: Any, / + ) -> None: + """void SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArrayCallback platformAttribCallback, SDL_EGLIntArrayCallback surfaceAttribCallback, SDL_EGLIntArrayCallback contextAttribCallback, void *userdata)""" + + @staticmethod + def SDL_EnableScreenSaver() -> bool: + """unsigned char SDL_EnableScreenSaver(void)""" + + @staticmethod + def SDL_EndGPUComputePass(compute_pass: Any, /) -> None: + """void SDL_EndGPUComputePass(SDL_GPUComputePass *compute_pass)""" + + @staticmethod + def SDL_EndGPUCopyPass(copy_pass: Any, /) -> None: + """void SDL_EndGPUCopyPass(SDL_GPUCopyPass *copy_pass)""" + + @staticmethod + def SDL_EndGPURenderPass(render_pass: Any, /) -> None: + """void SDL_EndGPURenderPass(SDL_GPURenderPass *render_pass)""" + + @staticmethod + def SDL_EnumerateDirectory(path: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata)""" + + @staticmethod + def SDL_EnumerateProperties(props: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata)""" + + @staticmethod + def SDL_EnumerateStorageDirectory(storage: Any, path: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata)""" + + @staticmethod + def SDL_EventEnabled(type: Any, /) -> bool: + """unsigned char SDL_EventEnabled(Uint32 type)""" + + @staticmethod + def SDL_FillSurfaceRect(dst: Any, rect: Any, color: Any, /) -> bool: + """unsigned char SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color)""" + + @staticmethod + def SDL_FillSurfaceRects(dst: Any, rects: Any, count: int, color: Any, /) -> bool: + """unsigned char SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color)""" + + @staticmethod + def SDL_FilterEvents(filter: Any, userdata: Any, /) -> None: + """void SDL_FilterEvents(SDL_EventFilter filter, void *userdata)""" + + @staticmethod + def SDL_FlashWindow(window: Any, operation: Any, /) -> bool: + """unsigned char SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation)""" + + @staticmethod + def SDL_FlipSurface(surface: Any, flip: Any, /) -> bool: + """unsigned char SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip)""" + + @staticmethod + def SDL_FlushAudioStream(stream: Any, /) -> bool: + """unsigned char SDL_FlushAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_FlushEvent(type: Any, /) -> None: + """void SDL_FlushEvent(Uint32 type)""" + + @staticmethod + def SDL_FlushEvents(minType: Any, maxType: Any, /) -> None: + """void SDL_FlushEvents(Uint32 minType, Uint32 maxType)""" + + @staticmethod + def SDL_FlushIO(context: Any, /) -> bool: + """unsigned char SDL_FlushIO(SDL_IOStream *context)""" + + @staticmethod + def SDL_FlushRenderer(renderer: Any, /) -> bool: + """unsigned char SDL_FlushRenderer(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GL_CreateContext(window: Any, /) -> Any: + """SDL_GLContext SDL_GL_CreateContext(SDL_Window *window)""" + + @staticmethod + def SDL_GL_DestroyContext(context: Any, /) -> bool: + """unsigned char SDL_GL_DestroyContext(SDL_GLContext context)""" + + @staticmethod + def SDL_GL_ExtensionSupported(extension: Any, /) -> bool: + """unsigned char SDL_GL_ExtensionSupported(const char *extension)""" + + @staticmethod + def SDL_GL_GetAttribute(attr: Any, value: Any, /) -> bool: + """unsigned char SDL_GL_GetAttribute(SDL_GLAttr attr, int *value)""" + + @staticmethod + def SDL_GL_GetCurrentContext() -> Any: + """SDL_GLContext SDL_GL_GetCurrentContext(void)""" + + @staticmethod + def SDL_GL_GetCurrentWindow() -> Any: + """SDL_Window *SDL_GL_GetCurrentWindow(void)""" + + @staticmethod + def SDL_GL_GetProcAddress(proc: Any, /) -> Any: + """SDL_FunctionPointer SDL_GL_GetProcAddress(const char *proc)""" + + @staticmethod + def SDL_GL_GetSwapInterval(interval: Any, /) -> bool: + """unsigned char SDL_GL_GetSwapInterval(int *interval)""" + + @staticmethod + def SDL_GL_LoadLibrary(path: Any, /) -> bool: + """unsigned char SDL_GL_LoadLibrary(const char *path)""" + + @staticmethod + def SDL_GL_MakeCurrent(window: Any, context: Any, /) -> bool: + """unsigned char SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context)""" + + @staticmethod + def SDL_GL_ResetAttributes() -> None: + """void SDL_GL_ResetAttributes(void)""" + + @staticmethod + def SDL_GL_SetAttribute(attr: Any, value: int, /) -> bool: + """unsigned char SDL_GL_SetAttribute(SDL_GLAttr attr, int value)""" + + @staticmethod + def SDL_GL_SetSwapInterval(interval: int, /) -> bool: + """unsigned char SDL_GL_SetSwapInterval(int interval)""" + + @staticmethod + def SDL_GL_SwapWindow(window: Any, /) -> bool: + """unsigned char SDL_GL_SwapWindow(SDL_Window *window)""" + + @staticmethod + def SDL_GL_UnloadLibrary() -> None: + """void SDL_GL_UnloadLibrary(void)""" + + @staticmethod + def SDL_GPUSupportsProperties(props: Any, /) -> bool: + """unsigned char SDL_GPUSupportsProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_GPUSupportsShaderFormats(format_flags: Any, name: Any, /) -> bool: + """unsigned char SDL_GPUSupportsShaderFormats(SDL_GPUShaderFormat format_flags, const char *name)""" + + @staticmethod + def SDL_GPUTextureFormatTexelBlockSize(format: Any, /) -> Any: + """Uint32 SDL_GPUTextureFormatTexelBlockSize(SDL_GPUTextureFormat format)""" + + @staticmethod + def SDL_GPUTextureSupportsFormat(device: Any, format: Any, type: Any, usage: Any, /) -> bool: + """unsigned char SDL_GPUTextureSupportsFormat(SDL_GPUDevice *device, SDL_GPUTextureFormat format, SDL_GPUTextureType type, SDL_GPUTextureUsageFlags usage)""" + + @staticmethod + def SDL_GPUTextureSupportsSampleCount(device: Any, format: Any, sample_count: Any, /) -> bool: + """unsigned char SDL_GPUTextureSupportsSampleCount(SDL_GPUDevice *device, SDL_GPUTextureFormat format, SDL_GPUSampleCount sample_count)""" + + @staticmethod + def SDL_GUIDToString(guid: Any, pszGUID: Any, cbGUID: int, /) -> None: + """void SDL_GUIDToString(SDL_GUID guid, char *pszGUID, int cbGUID)""" + + @staticmethod + def SDL_GamepadConnected(gamepad: Any, /) -> bool: + """unsigned char SDL_GamepadConnected(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GamepadEventsEnabled() -> bool: + """unsigned char SDL_GamepadEventsEnabled(void)""" + + @staticmethod + def SDL_GamepadHasAxis(gamepad: Any, axis: Any, /) -> bool: + """unsigned char SDL_GamepadHasAxis(SDL_Gamepad *gamepad, SDL_GamepadAxis axis)""" + + @staticmethod + def SDL_GamepadHasButton(gamepad: Any, button: Any, /) -> bool: + """unsigned char SDL_GamepadHasButton(SDL_Gamepad *gamepad, SDL_GamepadButton button)""" + + @staticmethod + def SDL_GamepadHasSensor(gamepad: Any, type: Any, /) -> bool: + """unsigned char SDL_GamepadHasSensor(SDL_Gamepad *gamepad, SDL_SensorType type)""" + + @staticmethod + def SDL_GamepadSensorEnabled(gamepad: Any, type: Any, /) -> bool: + """unsigned char SDL_GamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type)""" + + @staticmethod + def SDL_GenerateMipmapsForGPUTexture(command_buffer: Any, texture: Any, /) -> None: + """void SDL_GenerateMipmapsForGPUTexture(SDL_GPUCommandBuffer *command_buffer, SDL_GPUTexture *texture)""" + + @staticmethod + def SDL_GetAppMetadataProperty(name: Any, /) -> Any: + """const char *SDL_GetAppMetadataProperty(const char *name)""" + + @staticmethod + def SDL_GetAssertionHandler(puserdata: Any, /) -> Any: + """SDL_AssertionHandler SDL_GetAssertionHandler(void **puserdata)""" + + @staticmethod + def SDL_GetAssertionReport() -> Any: + """const SDL_AssertData *SDL_GetAssertionReport(void)""" + + @staticmethod + def SDL_GetAsyncIOResult(queue: Any, outcome: Any, /) -> bool: + """unsigned char SDL_GetAsyncIOResult(SDL_AsyncIOQueue *queue, SDL_AsyncIOOutcome *outcome)""" + + @staticmethod + def SDL_GetAsyncIOSize(asyncio: Any, /) -> Any: + """Sint64 SDL_GetAsyncIOSize(SDL_AsyncIO *asyncio)""" + + @staticmethod + def SDL_GetAtomicInt(a: Any, /) -> int: + """int SDL_GetAtomicInt(SDL_AtomicInt *a)""" + + @staticmethod + def SDL_GetAtomicPointer(a: Any, /) -> Any: + """void *SDL_GetAtomicPointer(void **a)""" + + @staticmethod + def SDL_GetAtomicU32(a: Any, /) -> Any: + """Uint32 SDL_GetAtomicU32(SDL_AtomicU32 *a)""" + + @staticmethod + def SDL_GetAudioDeviceChannelMap(devid: Any, count: Any, /) -> Any: + """int *SDL_GetAudioDeviceChannelMap(SDL_AudioDeviceID devid, int *count)""" + + @staticmethod + def SDL_GetAudioDeviceFormat(devid: Any, spec: Any, sample_frames: Any, /) -> bool: + """unsigned char SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames)""" + + @staticmethod + def SDL_GetAudioDeviceGain(devid: Any, /) -> Any: + """float SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_GetAudioDeviceName(devid: Any, /) -> Any: + """const char *SDL_GetAudioDeviceName(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_GetAudioDriver(index: int, /) -> Any: + """const char *SDL_GetAudioDriver(int index)""" + + @staticmethod + def SDL_GetAudioFormatName(format: Any, /) -> Any: + """const char *SDL_GetAudioFormatName(SDL_AudioFormat format)""" + + @staticmethod + def SDL_GetAudioPlaybackDevices(count: Any, /) -> Any: + """SDL_AudioDeviceID *SDL_GetAudioPlaybackDevices(int *count)""" + + @staticmethod + def SDL_GetAudioRecordingDevices(count: Any, /) -> Any: + """SDL_AudioDeviceID *SDL_GetAudioRecordingDevices(int *count)""" + + @staticmethod + def SDL_GetAudioStreamAvailable(stream: Any, /) -> int: + """int SDL_GetAudioStreamAvailable(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetAudioStreamData(stream: Any, buf: Any, len: int, /) -> int: + """int SDL_GetAudioStreamData(SDL_AudioStream *stream, void *buf, int len)""" + + @staticmethod + def SDL_GetAudioStreamDevice(stream: Any, /) -> Any: + """SDL_AudioDeviceID SDL_GetAudioStreamDevice(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetAudioStreamFormat(stream: Any, src_spec: Any, dst_spec: Any, /) -> bool: + """unsigned char SDL_GetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioSpec *src_spec, SDL_AudioSpec *dst_spec)""" + + @staticmethod + def SDL_GetAudioStreamFrequencyRatio(stream: Any, /) -> Any: + """float SDL_GetAudioStreamFrequencyRatio(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetAudioStreamGain(stream: Any, /) -> Any: + """float SDL_GetAudioStreamGain(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetAudioStreamInputChannelMap(stream: Any, count: Any, /) -> Any: + """int *SDL_GetAudioStreamInputChannelMap(SDL_AudioStream *stream, int *count)""" + + @staticmethod + def SDL_GetAudioStreamOutputChannelMap(stream: Any, count: Any, /) -> Any: + """int *SDL_GetAudioStreamOutputChannelMap(SDL_AudioStream *stream, int *count)""" + + @staticmethod + def SDL_GetAudioStreamProperties(stream: Any, /) -> Any: + """SDL_PropertiesID SDL_GetAudioStreamProperties(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetAudioStreamQueued(stream: Any, /) -> int: + """int SDL_GetAudioStreamQueued(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_GetBasePath() -> Any: + """const char *SDL_GetBasePath(void)""" + + @staticmethod + def SDL_GetBooleanProperty(props: Any, name: Any, default_value: bool, /) -> bool: + """unsigned char SDL_GetBooleanProperty(SDL_PropertiesID props, const char *name, unsigned char default_value)""" + + @staticmethod + def SDL_GetCPUCacheLineSize() -> int: + """int SDL_GetCPUCacheLineSize(void)""" + + @staticmethod + def SDL_GetCameraDriver(index: int, /) -> Any: + """const char *SDL_GetCameraDriver(int index)""" + + @staticmethod + def SDL_GetCameraFormat(camera: Any, spec: Any, /) -> bool: + """unsigned char SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec)""" + + @staticmethod + def SDL_GetCameraID(camera: Any, /) -> Any: + """SDL_CameraID SDL_GetCameraID(SDL_Camera *camera)""" + + @staticmethod + def SDL_GetCameraName(instance_id: Any, /) -> Any: + """const char *SDL_GetCameraName(SDL_CameraID instance_id)""" + + @staticmethod + def SDL_GetCameraPermissionState(camera: Any, /) -> int: + """int SDL_GetCameraPermissionState(SDL_Camera *camera)""" + + @staticmethod + def SDL_GetCameraPosition(instance_id: Any, /) -> Any: + """SDL_CameraPosition SDL_GetCameraPosition(SDL_CameraID instance_id)""" + + @staticmethod + def SDL_GetCameraProperties(camera: Any, /) -> Any: + """SDL_PropertiesID SDL_GetCameraProperties(SDL_Camera *camera)""" + + @staticmethod + def SDL_GetCameraSupportedFormats(instance_id: Any, count: Any, /) -> Any: + """SDL_CameraSpec **SDL_GetCameraSupportedFormats(SDL_CameraID instance_id, int *count)""" + + @staticmethod + def SDL_GetCameras(count: Any, /) -> Any: + """SDL_CameraID *SDL_GetCameras(int *count)""" + + @staticmethod + def SDL_GetClipboardData(mime_type: Any, size: Any, /) -> Any: + """void *SDL_GetClipboardData(const char *mime_type, size_t *size)""" + + @staticmethod + def SDL_GetClipboardMimeTypes(num_mime_types: Any, /) -> Any: + """char **SDL_GetClipboardMimeTypes(size_t *num_mime_types)""" + + @staticmethod + def SDL_GetClipboardText() -> Any: + """char *SDL_GetClipboardText(void)""" + + @staticmethod + def SDL_GetClosestFullscreenDisplayMode( + displayID: Any, w: int, h: int, refresh_rate: Any, include_high_density_modes: bool, closest: Any, / + ) -> bool: + """unsigned char SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, unsigned char include_high_density_modes, SDL_DisplayMode *closest)""" + + @staticmethod + def SDL_GetCurrentAudioDriver() -> Any: + """const char *SDL_GetCurrentAudioDriver(void)""" + + @staticmethod + def SDL_GetCurrentCameraDriver() -> Any: + """const char *SDL_GetCurrentCameraDriver(void)""" + + @staticmethod + def SDL_GetCurrentDirectory() -> Any: + """char *SDL_GetCurrentDirectory(void)""" + + @staticmethod + def SDL_GetCurrentDisplayMode(displayID: Any, /) -> Any: + """const SDL_DisplayMode *SDL_GetCurrentDisplayMode(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetCurrentDisplayOrientation(displayID: Any, /) -> Any: + """SDL_DisplayOrientation SDL_GetCurrentDisplayOrientation(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetCurrentRenderOutputSize(renderer: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h)""" + + @staticmethod + def SDL_GetCurrentThreadID() -> Any: + """SDL_ThreadID SDL_GetCurrentThreadID(void)""" + + @staticmethod + def SDL_GetCurrentTime(ticks: Any, /) -> bool: + """unsigned char SDL_GetCurrentTime(SDL_Time *ticks)""" + + @staticmethod + def SDL_GetCurrentVideoDriver() -> Any: + """const char *SDL_GetCurrentVideoDriver(void)""" + + @staticmethod + def SDL_GetCursor() -> Any: + """SDL_Cursor *SDL_GetCursor(void)""" + + @staticmethod + def SDL_GetDateTimeLocalePreferences(dateFormat: Any, timeFormat: Any, /) -> bool: + """unsigned char SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat)""" + + @staticmethod + def SDL_GetDayOfWeek(year: int, month: int, day: int, /) -> int: + """int SDL_GetDayOfWeek(int year, int month, int day)""" + + @staticmethod + def SDL_GetDayOfYear(year: int, month: int, day: int, /) -> int: + """int SDL_GetDayOfYear(int year, int month, int day)""" + + @staticmethod + def SDL_GetDaysInMonth(year: int, month: int, /) -> int: + """int SDL_GetDaysInMonth(int year, int month)""" + + @staticmethod + def SDL_GetDefaultAssertionHandler() -> Any: + """SDL_AssertionHandler SDL_GetDefaultAssertionHandler(void)""" + + @staticmethod + def SDL_GetDefaultCursor() -> Any: + """SDL_Cursor *SDL_GetDefaultCursor(void)""" + + @staticmethod + def SDL_GetDefaultLogOutputFunction() -> Any: + """SDL_LogOutputFunction SDL_GetDefaultLogOutputFunction(void)""" + + @staticmethod + def SDL_GetDesktopDisplayMode(displayID: Any, /) -> Any: + """const SDL_DisplayMode *SDL_GetDesktopDisplayMode(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetDisplayBounds(displayID: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetDisplayContentScale(displayID: Any, /) -> Any: + """float SDL_GetDisplayContentScale(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetDisplayForPoint(point: Any, /) -> Any: + """SDL_DisplayID SDL_GetDisplayForPoint(const SDL_Point *point)""" + + @staticmethod + def SDL_GetDisplayForRect(rect: Any, /) -> Any: + """SDL_DisplayID SDL_GetDisplayForRect(const SDL_Rect *rect)""" + + @staticmethod + def SDL_GetDisplayForWindow(window: Any, /) -> Any: + """SDL_DisplayID SDL_GetDisplayForWindow(SDL_Window *window)""" + + @staticmethod + def SDL_GetDisplayName(displayID: Any, /) -> Any: + """const char *SDL_GetDisplayName(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetDisplayProperties(displayID: Any, /) -> Any: + """SDL_PropertiesID SDL_GetDisplayProperties(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetDisplayUsableBounds(displayID: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetDisplays(count: Any, /) -> Any: + """SDL_DisplayID *SDL_GetDisplays(int *count)""" + + @staticmethod + def SDL_GetEnvironment() -> Any: + """SDL_Environment *SDL_GetEnvironment(void)""" + + @staticmethod + def SDL_GetEnvironmentVariable(env: Any, name: Any, /) -> Any: + """const char *SDL_GetEnvironmentVariable(SDL_Environment *env, const char *name)""" + + @staticmethod + def SDL_GetEnvironmentVariables(env: Any, /) -> Any: + """char **SDL_GetEnvironmentVariables(SDL_Environment *env)""" + + @staticmethod + def SDL_GetError() -> Any: + """const char *SDL_GetError(void)""" + + @staticmethod + def SDL_GetEventFilter(filter: Any, userdata: Any, /) -> bool: + """unsigned char SDL_GetEventFilter(SDL_EventFilter *filter, void **userdata)""" + + @staticmethod + def SDL_GetFloatProperty(props: Any, name: Any, default_value: Any, /) -> Any: + """float SDL_GetFloatProperty(SDL_PropertiesID props, const char *name, float default_value)""" + + @staticmethod + def SDL_GetFullscreenDisplayModes(displayID: Any, count: Any, /) -> Any: + """SDL_DisplayMode **SDL_GetFullscreenDisplayModes(SDL_DisplayID displayID, int *count)""" + + @staticmethod + def SDL_GetGPUDeviceDriver(device: Any, /) -> Any: + """const char *SDL_GetGPUDeviceDriver(SDL_GPUDevice *device)""" + + @staticmethod + def SDL_GetGPUDriver(index: int, /) -> Any: + """const char *SDL_GetGPUDriver(int index)""" + + @staticmethod + def SDL_GetGPUShaderFormats(device: Any, /) -> Any: + """SDL_GPUShaderFormat SDL_GetGPUShaderFormats(SDL_GPUDevice *device)""" + + @staticmethod + def SDL_GetGPUSwapchainTextureFormat(device: Any, window: Any, /) -> Any: + """SDL_GPUTextureFormat SDL_GetGPUSwapchainTextureFormat(SDL_GPUDevice *device, SDL_Window *window)""" + + @staticmethod + def SDL_GetGamepadAppleSFSymbolsNameForAxis(gamepad: Any, axis: Any, /) -> Any: + """const char *SDL_GetGamepadAppleSFSymbolsNameForAxis(SDL_Gamepad *gamepad, SDL_GamepadAxis axis)""" + + @staticmethod + def SDL_GetGamepadAppleSFSymbolsNameForButton(gamepad: Any, button: Any, /) -> Any: + """const char *SDL_GetGamepadAppleSFSymbolsNameForButton(SDL_Gamepad *gamepad, SDL_GamepadButton button)""" + + @staticmethod + def SDL_GetGamepadAxis(gamepad: Any, axis: Any, /) -> Any: + """Sint16 SDL_GetGamepadAxis(SDL_Gamepad *gamepad, SDL_GamepadAxis axis)""" + + @staticmethod + def SDL_GetGamepadAxisFromString(str: Any, /) -> Any: + """SDL_GamepadAxis SDL_GetGamepadAxisFromString(const char *str)""" + + @staticmethod + def SDL_GetGamepadBindings(gamepad: Any, count: Any, /) -> Any: + """SDL_GamepadBinding **SDL_GetGamepadBindings(SDL_Gamepad *gamepad, int *count)""" + + @staticmethod + def SDL_GetGamepadButton(gamepad: Any, button: Any, /) -> bool: + """unsigned char SDL_GetGamepadButton(SDL_Gamepad *gamepad, SDL_GamepadButton button)""" + + @staticmethod + def SDL_GetGamepadButtonFromString(str: Any, /) -> Any: + """SDL_GamepadButton SDL_GetGamepadButtonFromString(const char *str)""" + + @staticmethod + def SDL_GetGamepadButtonLabel(gamepad: Any, button: Any, /) -> Any: + """SDL_GamepadButtonLabel SDL_GetGamepadButtonLabel(SDL_Gamepad *gamepad, SDL_GamepadButton button)""" + + @staticmethod + def SDL_GetGamepadButtonLabelForType(type: Any, button: Any, /) -> Any: + """SDL_GamepadButtonLabel SDL_GetGamepadButtonLabelForType(SDL_GamepadType type, SDL_GamepadButton button)""" + + @staticmethod + def SDL_GetGamepadConnectionState(gamepad: Any, /) -> Any: + """SDL_JoystickConnectionState SDL_GetGamepadConnectionState(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadFirmwareVersion(gamepad: Any, /) -> Any: + """Uint16 SDL_GetGamepadFirmwareVersion(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadFromID(instance_id: Any, /) -> Any: + """SDL_Gamepad *SDL_GetGamepadFromID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadFromPlayerIndex(player_index: int, /) -> Any: + """SDL_Gamepad *SDL_GetGamepadFromPlayerIndex(int player_index)""" + + @staticmethod + def SDL_GetGamepadGUIDForID(instance_id: Any, /) -> Any: + """SDL_GUID SDL_GetGamepadGUIDForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadID(gamepad: Any, /) -> Any: + """SDL_JoystickID SDL_GetGamepadID(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadJoystick(gamepad: Any, /) -> Any: + """SDL_Joystick *SDL_GetGamepadJoystick(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadMapping(gamepad: Any, /) -> Any: + """char *SDL_GetGamepadMapping(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadMappingForGUID(guid: Any, /) -> Any: + """char *SDL_GetGamepadMappingForGUID(SDL_GUID guid)""" + + @staticmethod + def SDL_GetGamepadMappingForID(instance_id: Any, /) -> Any: + """char *SDL_GetGamepadMappingForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadMappings(count: Any, /) -> Any: + """char **SDL_GetGamepadMappings(int *count)""" + + @staticmethod + def SDL_GetGamepadName(gamepad: Any, /) -> Any: + """const char *SDL_GetGamepadName(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetGamepadNameForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadPath(gamepad: Any, /) -> Any: + """const char *SDL_GetGamepadPath(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadPathForID(instance_id: Any, /) -> Any: + """const char *SDL_GetGamepadPathForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadPlayerIndex(gamepad: Any, /) -> int: + """int SDL_GetGamepadPlayerIndex(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadPlayerIndexForID(instance_id: Any, /) -> int: + """int SDL_GetGamepadPlayerIndexForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadPowerInfo(gamepad: Any, percent: Any, /) -> Any: + """SDL_PowerState SDL_GetGamepadPowerInfo(SDL_Gamepad *gamepad, int *percent)""" + + @staticmethod + def SDL_GetGamepadProduct(gamepad: Any, /) -> Any: + """Uint16 SDL_GetGamepadProduct(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadProductForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetGamepadProductForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadProductVersion(gamepad: Any, /) -> Any: + """Uint16 SDL_GetGamepadProductVersion(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadProductVersionForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetGamepadProductVersionForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadProperties(gamepad: Any, /) -> Any: + """SDL_PropertiesID SDL_GetGamepadProperties(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadSensorData(gamepad: Any, type: Any, data: Any, num_values: int, /) -> bool: + """unsigned char SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values)""" + + @staticmethod + def SDL_GetGamepadSensorDataRate(gamepad: Any, type: Any, /) -> Any: + """float SDL_GetGamepadSensorDataRate(SDL_Gamepad *gamepad, SDL_SensorType type)""" + + @staticmethod + def SDL_GetGamepadSerial(gamepad: Any, /) -> Any: + """const char *SDL_GetGamepadSerial(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadSteamHandle(gamepad: Any, /) -> Any: + """Uint64 SDL_GetGamepadSteamHandle(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadStringForAxis(axis: Any, /) -> Any: + """const char *SDL_GetGamepadStringForAxis(SDL_GamepadAxis axis)""" + + @staticmethod + def SDL_GetGamepadStringForButton(button: Any, /) -> Any: + """const char *SDL_GetGamepadStringForButton(SDL_GamepadButton button)""" + + @staticmethod + def SDL_GetGamepadStringForType(type: Any, /) -> Any: + """const char *SDL_GetGamepadStringForType(SDL_GamepadType type)""" + + @staticmethod + def SDL_GetGamepadTouchpadFinger( + gamepad: Any, touchpad: int, finger: int, down: Any, x: Any, y: Any, pressure: Any, / + ) -> bool: + """unsigned char SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, unsigned char *down, float *x, float *y, float *pressure)""" + + @staticmethod + def SDL_GetGamepadType(gamepad: Any, /) -> Any: + """SDL_GamepadType SDL_GetGamepadType(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadTypeForID(instance_id: Any, /) -> Any: + """SDL_GamepadType SDL_GetGamepadTypeForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepadTypeFromString(str: Any, /) -> Any: + """SDL_GamepadType SDL_GetGamepadTypeFromString(const char *str)""" + + @staticmethod + def SDL_GetGamepadVendor(gamepad: Any, /) -> Any: + """Uint16 SDL_GetGamepadVendor(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetGamepadVendorForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetGamepadVendorForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetGamepads(count: Any, /) -> Any: + """SDL_JoystickID *SDL_GetGamepads(int *count)""" + + @staticmethod + def SDL_GetGlobalMouseState(x: Any, y: Any, /) -> Any: + """SDL_MouseButtonFlags SDL_GetGlobalMouseState(float *x, float *y)""" + + @staticmethod + def SDL_GetGlobalProperties() -> Any: + """SDL_PropertiesID SDL_GetGlobalProperties(void)""" + + @staticmethod + def SDL_GetGrabbedWindow() -> Any: + """SDL_Window *SDL_GetGrabbedWindow(void)""" + + @staticmethod + def SDL_GetHapticEffectStatus(haptic: Any, effect: int, /) -> bool: + """unsigned char SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect)""" + + @staticmethod + def SDL_GetHapticFeatures(haptic: Any, /) -> Any: + """Uint32 SDL_GetHapticFeatures(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetHapticFromID(instance_id: Any, /) -> Any: + """SDL_Haptic *SDL_GetHapticFromID(SDL_HapticID instance_id)""" + + @staticmethod + def SDL_GetHapticID(haptic: Any, /) -> Any: + """SDL_HapticID SDL_GetHapticID(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetHapticName(haptic: Any, /) -> Any: + """const char *SDL_GetHapticName(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetHapticNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetHapticNameForID(SDL_HapticID instance_id)""" + + @staticmethod + def SDL_GetHaptics(count: Any, /) -> Any: + """SDL_HapticID *SDL_GetHaptics(int *count)""" + + @staticmethod + def SDL_GetHint(name: Any, /) -> Any: + """const char *SDL_GetHint(const char *name)""" + + @staticmethod + def SDL_GetHintBoolean(name: Any, default_value: bool, /) -> bool: + """unsigned char SDL_GetHintBoolean(const char *name, unsigned char default_value)""" + + @staticmethod + def SDL_GetIOProperties(context: Any, /) -> Any: + """SDL_PropertiesID SDL_GetIOProperties(SDL_IOStream *context)""" + + @staticmethod + def SDL_GetIOSize(context: Any, /) -> Any: + """Sint64 SDL_GetIOSize(SDL_IOStream *context)""" + + @staticmethod + def SDL_GetIOStatus(context: Any, /) -> Any: + """SDL_IOStatus SDL_GetIOStatus(SDL_IOStream *context)""" + + @staticmethod + def SDL_GetJoystickAxis(joystick: Any, axis: int, /) -> Any: + """Sint16 SDL_GetJoystickAxis(SDL_Joystick *joystick, int axis)""" + + @staticmethod + def SDL_GetJoystickAxisInitialState(joystick: Any, axis: int, state: Any, /) -> bool: + """unsigned char SDL_GetJoystickAxisInitialState(SDL_Joystick *joystick, int axis, Sint16 *state)""" + + @staticmethod + def SDL_GetJoystickBall(joystick: Any, ball: int, dx: Any, dy: Any, /) -> bool: + """unsigned char SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy)""" + + @staticmethod + def SDL_GetJoystickButton(joystick: Any, button: int, /) -> bool: + """unsigned char SDL_GetJoystickButton(SDL_Joystick *joystick, int button)""" + + @staticmethod + def SDL_GetJoystickConnectionState(joystick: Any, /) -> Any: + """SDL_JoystickConnectionState SDL_GetJoystickConnectionState(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickFirmwareVersion(joystick: Any, /) -> Any: + """Uint16 SDL_GetJoystickFirmwareVersion(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickFromID(instance_id: Any, /) -> Any: + """SDL_Joystick *SDL_GetJoystickFromID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickFromPlayerIndex(player_index: int, /) -> Any: + """SDL_Joystick *SDL_GetJoystickFromPlayerIndex(int player_index)""" + + @staticmethod + def SDL_GetJoystickGUID(joystick: Any, /) -> Any: + """SDL_GUID SDL_GetJoystickGUID(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickGUIDForID(instance_id: Any, /) -> Any: + """SDL_GUID SDL_GetJoystickGUIDForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickGUIDInfo(guid: Any, vendor: Any, product: Any, version: Any, crc16: Any, /) -> None: + """void SDL_GetJoystickGUIDInfo(SDL_GUID guid, Uint16 *vendor, Uint16 *product, Uint16 *version, Uint16 *crc16)""" + + @staticmethod + def SDL_GetJoystickHat(joystick: Any, hat: int, /) -> Any: + """Uint8 SDL_GetJoystickHat(SDL_Joystick *joystick, int hat)""" + + @staticmethod + def SDL_GetJoystickID(joystick: Any, /) -> Any: + """SDL_JoystickID SDL_GetJoystickID(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickName(joystick: Any, /) -> Any: + """const char *SDL_GetJoystickName(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetJoystickNameForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickPath(joystick: Any, /) -> Any: + """const char *SDL_GetJoystickPath(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickPathForID(instance_id: Any, /) -> Any: + """const char *SDL_GetJoystickPathForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickPlayerIndex(joystick: Any, /) -> int: + """int SDL_GetJoystickPlayerIndex(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickPlayerIndexForID(instance_id: Any, /) -> int: + """int SDL_GetJoystickPlayerIndexForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickPowerInfo(joystick: Any, percent: Any, /) -> Any: + """SDL_PowerState SDL_GetJoystickPowerInfo(SDL_Joystick *joystick, int *percent)""" + + @staticmethod + def SDL_GetJoystickProduct(joystick: Any, /) -> Any: + """Uint16 SDL_GetJoystickProduct(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickProductForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetJoystickProductForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickProductVersion(joystick: Any, /) -> Any: + """Uint16 SDL_GetJoystickProductVersion(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickProductVersionForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetJoystickProductVersionForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickProperties(joystick: Any, /) -> Any: + """SDL_PropertiesID SDL_GetJoystickProperties(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickSerial(joystick: Any, /) -> Any: + """const char *SDL_GetJoystickSerial(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickType(joystick: Any, /) -> Any: + """SDL_JoystickType SDL_GetJoystickType(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickTypeForID(instance_id: Any, /) -> Any: + """SDL_JoystickType SDL_GetJoystickTypeForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoystickVendor(joystick: Any, /) -> Any: + """Uint16 SDL_GetJoystickVendor(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetJoystickVendorForID(instance_id: Any, /) -> Any: + """Uint16 SDL_GetJoystickVendorForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetJoysticks(count: Any, /) -> Any: + """SDL_JoystickID *SDL_GetJoysticks(int *count)""" + + @staticmethod + def SDL_GetKeyFromName(name: Any, /) -> Any: + """SDL_Keycode SDL_GetKeyFromName(const char *name)""" + + @staticmethod + def SDL_GetKeyFromScancode(scancode: Any, modstate: Any, key_event: bool, /) -> Any: + """SDL_Keycode SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate, unsigned char key_event)""" + + @staticmethod + def SDL_GetKeyName(key: Any, /) -> Any: + """const char *SDL_GetKeyName(SDL_Keycode key)""" + + @staticmethod + def SDL_GetKeyboardFocus() -> Any: + """SDL_Window *SDL_GetKeyboardFocus(void)""" + + @staticmethod + def SDL_GetKeyboardNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetKeyboardNameForID(SDL_KeyboardID instance_id)""" + + @staticmethod + def SDL_GetKeyboardState(numkeys: Any, /) -> Any: + """const unsigned char *SDL_GetKeyboardState(int *numkeys)""" + + @staticmethod + def SDL_GetKeyboards(count: Any, /) -> Any: + """SDL_KeyboardID *SDL_GetKeyboards(int *count)""" + + @staticmethod + def SDL_GetLogOutputFunction(callback: Any, userdata: Any, /) -> None: + """void SDL_GetLogOutputFunction(SDL_LogOutputFunction *callback, void **userdata)""" + + @staticmethod + def SDL_GetLogPriority(category: int, /) -> Any: + """SDL_LogPriority SDL_GetLogPriority(int category)""" + + @staticmethod + def SDL_GetMasksForPixelFormat(format: Any, bpp: Any, Rmask: Any, Gmask: Any, Bmask: Any, Amask: Any, /) -> bool: + """unsigned char SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask)""" + + @staticmethod + def SDL_GetMaxHapticEffects(haptic: Any, /) -> int: + """int SDL_GetMaxHapticEffects(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetMaxHapticEffectsPlaying(haptic: Any, /) -> int: + """int SDL_GetMaxHapticEffectsPlaying(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetMemoryFunctions(malloc_func: Any, calloc_func: Any, realloc_func: Any, free_func: Any, /) -> None: + """void SDL_GetMemoryFunctions(SDL_malloc_func *malloc_func, SDL_calloc_func *calloc_func, SDL_realloc_func *realloc_func, SDL_free_func *free_func)""" + + @staticmethod + def SDL_GetMice(count: Any, /) -> Any: + """SDL_MouseID *SDL_GetMice(int *count)""" + + @staticmethod + def SDL_GetModState() -> Any: + """SDL_Keymod SDL_GetModState(void)""" + + @staticmethod + def SDL_GetMouseFocus() -> Any: + """SDL_Window *SDL_GetMouseFocus(void)""" + + @staticmethod + def SDL_GetMouseNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetMouseNameForID(SDL_MouseID instance_id)""" + + @staticmethod + def SDL_GetMouseState(x: Any, y: Any, /) -> Any: + """SDL_MouseButtonFlags SDL_GetMouseState(float *x, float *y)""" + + @staticmethod + def SDL_GetNaturalDisplayOrientation(displayID: Any, /) -> Any: + """SDL_DisplayOrientation SDL_GetNaturalDisplayOrientation(SDL_DisplayID displayID)""" + + @staticmethod + def SDL_GetNumAllocations() -> int: + """int SDL_GetNumAllocations(void)""" + + @staticmethod + def SDL_GetNumAudioDrivers() -> int: + """int SDL_GetNumAudioDrivers(void)""" + + @staticmethod + def SDL_GetNumCameraDrivers() -> int: + """int SDL_GetNumCameraDrivers(void)""" + + @staticmethod + def SDL_GetNumGPUDrivers() -> int: + """int SDL_GetNumGPUDrivers(void)""" + + @staticmethod + def SDL_GetNumGamepadTouchpadFingers(gamepad: Any, touchpad: int, /) -> int: + """int SDL_GetNumGamepadTouchpadFingers(SDL_Gamepad *gamepad, int touchpad)""" + + @staticmethod + def SDL_GetNumGamepadTouchpads(gamepad: Any, /) -> int: + """int SDL_GetNumGamepadTouchpads(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetNumHapticAxes(haptic: Any, /) -> int: + """int SDL_GetNumHapticAxes(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_GetNumJoystickAxes(joystick: Any, /) -> int: + """int SDL_GetNumJoystickAxes(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetNumJoystickBalls(joystick: Any, /) -> int: + """int SDL_GetNumJoystickBalls(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetNumJoystickButtons(joystick: Any, /) -> int: + """int SDL_GetNumJoystickButtons(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetNumJoystickHats(joystick: Any, /) -> int: + """int SDL_GetNumJoystickHats(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_GetNumLogicalCPUCores() -> int: + """int SDL_GetNumLogicalCPUCores(void)""" + + @staticmethod + def SDL_GetNumRenderDrivers() -> int: + """int SDL_GetNumRenderDrivers(void)""" + + @staticmethod + def SDL_GetNumVideoDrivers() -> int: + """int SDL_GetNumVideoDrivers(void)""" + + @staticmethod + def SDL_GetNumberProperty(props: Any, name: Any, default_value: Any, /) -> Any: + """Sint64 SDL_GetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 default_value)""" + + @staticmethod + def SDL_GetOriginalMemoryFunctions( + malloc_func: Any, calloc_func: Any, realloc_func: Any, free_func: Any, / + ) -> None: + """void SDL_GetOriginalMemoryFunctions(SDL_malloc_func *malloc_func, SDL_calloc_func *calloc_func, SDL_realloc_func *realloc_func, SDL_free_func *free_func)""" + + @staticmethod + def SDL_GetPathInfo(path: Any, info: Any, /) -> bool: + """unsigned char SDL_GetPathInfo(const char *path, SDL_PathInfo *info)""" + + @staticmethod + def SDL_GetPerformanceCounter() -> Any: + """Uint64 SDL_GetPerformanceCounter(void)""" + + @staticmethod + def SDL_GetPerformanceFrequency() -> Any: + """Uint64 SDL_GetPerformanceFrequency(void)""" + + @staticmethod + def SDL_GetPixelFormatDetails(format: Any, /) -> Any: + """const SDL_PixelFormatDetails *SDL_GetPixelFormatDetails(SDL_PixelFormat format)""" + + @staticmethod + def SDL_GetPixelFormatForMasks(bpp: int, Rmask: Any, Gmask: Any, Bmask: Any, Amask: Any, /) -> Any: + """SDL_PixelFormat SDL_GetPixelFormatForMasks(int bpp, Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask)""" + + @staticmethod + def SDL_GetPixelFormatName(format: Any, /) -> Any: + """const char *SDL_GetPixelFormatName(SDL_PixelFormat format)""" + + @staticmethod + def SDL_GetPlatform() -> Any: + """const char *SDL_GetPlatform(void)""" + + @staticmethod + def SDL_GetPointerProperty(props: Any, name: Any, default_value: Any, /) -> Any: + """void *SDL_GetPointerProperty(SDL_PropertiesID props, const char *name, void *default_value)""" + + @staticmethod + def SDL_GetPowerInfo(seconds: Any, percent: Any, /) -> Any: + """SDL_PowerState SDL_GetPowerInfo(int *seconds, int *percent)""" + + @staticmethod + def SDL_GetPrefPath(org: Any, app: Any, /) -> Any: + """char *SDL_GetPrefPath(const char *org, const char *app)""" + + @staticmethod + def SDL_GetPreferredLocales(count: Any, /) -> Any: + """SDL_Locale **SDL_GetPreferredLocales(int *count)""" + + @staticmethod + def SDL_GetPrimaryDisplay() -> Any: + """SDL_DisplayID SDL_GetPrimaryDisplay(void)""" + + @staticmethod + def SDL_GetPrimarySelectionText() -> Any: + """char *SDL_GetPrimarySelectionText(void)""" + + @staticmethod + def SDL_GetProcessInput(process: Any, /) -> Any: + """SDL_IOStream *SDL_GetProcessInput(SDL_Process *process)""" + + @staticmethod + def SDL_GetProcessOutput(process: Any, /) -> Any: + """SDL_IOStream *SDL_GetProcessOutput(SDL_Process *process)""" + + @staticmethod + def SDL_GetProcessProperties(process: Any, /) -> Any: + """SDL_PropertiesID SDL_GetProcessProperties(SDL_Process *process)""" + + @staticmethod + def SDL_GetPropertyType(props: Any, name: Any, /) -> Any: + """SDL_PropertyType SDL_GetPropertyType(SDL_PropertiesID props, const char *name)""" + + @staticmethod + def SDL_GetRGB(pixel: Any, format: Any, palette: Any, r: Any, g: Any, b: Any, /) -> None: + """void SDL_GetRGB(Uint32 pixel, const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 *r, Uint8 *g, Uint8 *b)""" + + @staticmethod + def SDL_GetRGBA(pixel: Any, format: Any, palette: Any, r: Any, g: Any, b: Any, a: Any, /) -> None: + """void SDL_GetRGBA(Uint32 pixel, const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a)""" + + @staticmethod + def SDL_GetRealGamepadType(gamepad: Any, /) -> Any: + """SDL_GamepadType SDL_GetRealGamepadType(SDL_Gamepad *gamepad)""" + + @staticmethod + def SDL_GetRealGamepadTypeForID(instance_id: Any, /) -> Any: + """SDL_GamepadType SDL_GetRealGamepadTypeForID(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_GetRectAndLineIntersection(rect: Any, X1: Any, Y1: Any, X2: Any, Y2: Any, /) -> bool: + """unsigned char SDL_GetRectAndLineIntersection(const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2)""" + + @staticmethod + def SDL_GetRectAndLineIntersectionFloat(rect: Any, X1: Any, Y1: Any, X2: Any, Y2: Any, /) -> bool: + """unsigned char SDL_GetRectAndLineIntersectionFloat(const SDL_FRect *rect, float *X1, float *Y1, float *X2, float *Y2)""" + + @staticmethod + def SDL_GetRectEnclosingPoints(points: Any, count: int, clip: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectEnclosingPoints(const SDL_Point *points, int count, const SDL_Rect *clip, SDL_Rect *result)""" + + @staticmethod + def SDL_GetRectEnclosingPointsFloat(points: Any, count: int, clip: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectEnclosingPointsFloat(const SDL_FPoint *points, int count, const SDL_FRect *clip, SDL_FRect *result)""" + + @staticmethod + def SDL_GetRectIntersection(A: Any, B: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectIntersection(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result)""" + + @staticmethod + def SDL_GetRectIntersectionFloat(A: Any, B: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result)""" + + @staticmethod + def SDL_GetRectUnion(A: Any, B: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectUnion(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result)""" + + @staticmethod + def SDL_GetRectUnionFloat(A: Any, B: Any, result: Any, /) -> bool: + """unsigned char SDL_GetRectUnionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result)""" + + @staticmethod + def SDL_GetRelativeMouseState(x: Any, y: Any, /) -> Any: + """SDL_MouseButtonFlags SDL_GetRelativeMouseState(float *x, float *y)""" + + @staticmethod + def SDL_GetRenderClipRect(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetRenderColorScale(renderer: Any, scale: Any, /) -> bool: + """unsigned char SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale)""" + + @staticmethod + def SDL_GetRenderDrawBlendMode(renderer: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode)""" + + @staticmethod + def SDL_GetRenderDrawColor(renderer: Any, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a)""" + + @staticmethod + def SDL_GetRenderDrawColorFloat(renderer: Any, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a)""" + + @staticmethod + def SDL_GetRenderDriver(index: int, /) -> Any: + """const char *SDL_GetRenderDriver(int index)""" + + @staticmethod + def SDL_GetRenderLogicalPresentation(renderer: Any, w: Any, h: Any, mode: Any, /) -> bool: + """unsigned char SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode)""" + + @staticmethod + def SDL_GetRenderLogicalPresentationRect(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect)""" + + @staticmethod + def SDL_GetRenderMetalCommandEncoder(renderer: Any, /) -> Any: + """void *SDL_GetRenderMetalCommandEncoder(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRenderMetalLayer(renderer: Any, /) -> Any: + """void *SDL_GetRenderMetalLayer(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRenderOutputSize(renderer: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h)""" + + @staticmethod + def SDL_GetRenderSafeArea(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetRenderScale(renderer: Any, scaleX: Any, scaleY: Any, /) -> bool: + """unsigned char SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY)""" + + @staticmethod + def SDL_GetRenderTarget(renderer: Any, /) -> Any: + """SDL_Texture *SDL_GetRenderTarget(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRenderVSync(renderer: Any, vsync: Any, /) -> bool: + """unsigned char SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync)""" + + @staticmethod + def SDL_GetRenderViewport(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetRenderWindow(renderer: Any, /) -> Any: + """SDL_Window *SDL_GetRenderWindow(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRenderer(window: Any, /) -> Any: + """SDL_Renderer *SDL_GetRenderer(SDL_Window *window)""" + + @staticmethod + def SDL_GetRendererFromTexture(texture: Any, /) -> Any: + """SDL_Renderer *SDL_GetRendererFromTexture(SDL_Texture *texture)""" + + @staticmethod + def SDL_GetRendererName(renderer: Any, /) -> Any: + """const char *SDL_GetRendererName(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRendererProperties(renderer: Any, /) -> Any: + """SDL_PropertiesID SDL_GetRendererProperties(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_GetRevision() -> Any: + """const char *SDL_GetRevision(void)""" + + @staticmethod + def SDL_GetSIMDAlignment() -> int: + """size_t SDL_GetSIMDAlignment(void)""" + + @staticmethod + def SDL_GetSandbox() -> Any: + """SDL_Sandbox SDL_GetSandbox(void)""" + + @staticmethod + def SDL_GetScancodeFromKey(key: Any, modstate: Any, /) -> Any: + """SDL_Scancode SDL_GetScancodeFromKey(SDL_Keycode key, SDL_Keymod *modstate)""" + + @staticmethod + def SDL_GetScancodeFromName(name: Any, /) -> Any: + """SDL_Scancode SDL_GetScancodeFromName(const char *name)""" + + @staticmethod + def SDL_GetScancodeName(scancode: Any, /) -> Any: + """const char *SDL_GetScancodeName(SDL_Scancode scancode)""" + + @staticmethod + def SDL_GetSemaphoreValue(sem: Any, /) -> Any: + """Uint32 SDL_GetSemaphoreValue(SDL_Semaphore *sem)""" + + @staticmethod + def SDL_GetSensorData(sensor: Any, data: Any, num_values: int, /) -> bool: + """unsigned char SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values)""" + + @staticmethod + def SDL_GetSensorFromID(instance_id: Any, /) -> Any: + """SDL_Sensor *SDL_GetSensorFromID(SDL_SensorID instance_id)""" + + @staticmethod + def SDL_GetSensorID(sensor: Any, /) -> Any: + """SDL_SensorID SDL_GetSensorID(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_GetSensorName(sensor: Any, /) -> Any: + """const char *SDL_GetSensorName(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_GetSensorNameForID(instance_id: Any, /) -> Any: + """const char *SDL_GetSensorNameForID(SDL_SensorID instance_id)""" + + @staticmethod + def SDL_GetSensorNonPortableType(sensor: Any, /) -> int: + """int SDL_GetSensorNonPortableType(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_GetSensorNonPortableTypeForID(instance_id: Any, /) -> int: + """int SDL_GetSensorNonPortableTypeForID(SDL_SensorID instance_id)""" + + @staticmethod + def SDL_GetSensorProperties(sensor: Any, /) -> Any: + """SDL_PropertiesID SDL_GetSensorProperties(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_GetSensorType(sensor: Any, /) -> Any: + """SDL_SensorType SDL_GetSensorType(SDL_Sensor *sensor)""" + + @staticmethod + def SDL_GetSensorTypeForID(instance_id: Any, /) -> Any: + """SDL_SensorType SDL_GetSensorTypeForID(SDL_SensorID instance_id)""" + + @staticmethod + def SDL_GetSensors(count: Any, /) -> Any: + """SDL_SensorID *SDL_GetSensors(int *count)""" + + @staticmethod + def SDL_GetSilenceValueForFormat(format: Any, /) -> int: + """int SDL_GetSilenceValueForFormat(SDL_AudioFormat format)""" + + @staticmethod + def SDL_GetStorageFileSize(storage: Any, path: Any, length: Any, /) -> bool: + """unsigned char SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length)""" + + @staticmethod + def SDL_GetStoragePathInfo(storage: Any, path: Any, info: Any, /) -> bool: + """unsigned char SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info)""" + + @staticmethod + def SDL_GetStorageSpaceRemaining(storage: Any, /) -> Any: + """Uint64 SDL_GetStorageSpaceRemaining(SDL_Storage *storage)""" + + @staticmethod + def SDL_GetStringProperty(props: Any, name: Any, default_value: Any, /) -> Any: + """const char *SDL_GetStringProperty(SDL_PropertiesID props, const char *name, const char *default_value)""" + + @staticmethod + def SDL_GetSurfaceAlphaMod(surface: Any, alpha: Any, /) -> bool: + """unsigned char SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha)""" + + @staticmethod + def SDL_GetSurfaceBlendMode(surface: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode)""" + + @staticmethod + def SDL_GetSurfaceClipRect(surface: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetSurfaceColorKey(surface: Any, key: Any, /) -> bool: + """unsigned char SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key)""" + + @staticmethod + def SDL_GetSurfaceColorMod(surface: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b)""" + + @staticmethod + def SDL_GetSurfaceColorspace(surface: Any, /) -> Any: + """SDL_Colorspace SDL_GetSurfaceColorspace(SDL_Surface *surface)""" + + @staticmethod + def SDL_GetSurfaceImages(surface: Any, count: Any, /) -> Any: + """SDL_Surface **SDL_GetSurfaceImages(SDL_Surface *surface, int *count)""" + + @staticmethod + def SDL_GetSurfacePalette(surface: Any, /) -> Any: + """SDL_Palette *SDL_GetSurfacePalette(SDL_Surface *surface)""" + + @staticmethod + def SDL_GetSurfaceProperties(surface: Any, /) -> Any: + """SDL_PropertiesID SDL_GetSurfaceProperties(SDL_Surface *surface)""" + + @staticmethod + def SDL_GetSystemRAM() -> int: + """int SDL_GetSystemRAM(void)""" + + @staticmethod + def SDL_GetSystemTheme() -> Any: + """SDL_SystemTheme SDL_GetSystemTheme(void)""" + + @staticmethod + def SDL_GetTLS(id: Any, /) -> Any: + """void *SDL_GetTLS(SDL_TLSID *id)""" + + @staticmethod + def SDL_GetTextInputArea(window: Any, rect: Any, cursor: Any, /) -> bool: + """unsigned char SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor)""" + + @staticmethod + def SDL_GetTextureAlphaMod(texture: Any, alpha: Any, /) -> bool: + """unsigned char SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha)""" + + @staticmethod + def SDL_GetTextureAlphaModFloat(texture: Any, alpha: Any, /) -> bool: + """unsigned char SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha)""" + + @staticmethod + def SDL_GetTextureBlendMode(texture: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode)""" + + @staticmethod + def SDL_GetTextureColorMod(texture: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b)""" + + @staticmethod + def SDL_GetTextureColorModFloat(texture: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b)""" + + @staticmethod + def SDL_GetTextureProperties(texture: Any, /) -> Any: + """SDL_PropertiesID SDL_GetTextureProperties(SDL_Texture *texture)""" + + @staticmethod + def SDL_GetTextureScaleMode(texture: Any, scaleMode: Any, /) -> bool: + """unsigned char SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode)""" + + @staticmethod + def SDL_GetTextureSize(texture: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h)""" + + @staticmethod + def SDL_GetThreadID(thread: Any, /) -> Any: + """SDL_ThreadID SDL_GetThreadID(SDL_Thread *thread)""" + + @staticmethod + def SDL_GetThreadName(thread: Any, /) -> Any: + """const char *SDL_GetThreadName(SDL_Thread *thread)""" + + @staticmethod + def SDL_GetThreadState(thread: Any, /) -> Any: + """SDL_ThreadState SDL_GetThreadState(SDL_Thread *thread)""" + + @staticmethod + def SDL_GetTicks() -> Any: + """Uint64 SDL_GetTicks(void)""" + + @staticmethod + def SDL_GetTicksNS() -> Any: + """Uint64 SDL_GetTicksNS(void)""" + + @staticmethod + def SDL_GetTouchDeviceName(touchID: Any, /) -> Any: + """const char *SDL_GetTouchDeviceName(SDL_TouchID touchID)""" + + @staticmethod + def SDL_GetTouchDeviceType(touchID: Any, /) -> Any: + """SDL_TouchDeviceType SDL_GetTouchDeviceType(SDL_TouchID touchID)""" + + @staticmethod + def SDL_GetTouchDevices(count: Any, /) -> Any: + """SDL_TouchID *SDL_GetTouchDevices(int *count)""" + + @staticmethod + def SDL_GetTouchFingers(touchID: Any, count: Any, /) -> Any: + """SDL_Finger **SDL_GetTouchFingers(SDL_TouchID touchID, int *count)""" + + @staticmethod + def SDL_GetTrayEntries(menu: Any, count: Any, /) -> Any: + """const SDL_TrayEntry **SDL_GetTrayEntries(SDL_TrayMenu *menu, int *count)""" + + @staticmethod + def SDL_GetTrayEntryChecked(entry: Any, /) -> bool: + """unsigned char SDL_GetTrayEntryChecked(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_GetTrayEntryEnabled(entry: Any, /) -> bool: + """unsigned char SDL_GetTrayEntryEnabled(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_GetTrayEntryLabel(entry: Any, /) -> Any: + """const char *SDL_GetTrayEntryLabel(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_GetTrayEntryParent(entry: Any, /) -> Any: + """SDL_TrayMenu *SDL_GetTrayEntryParent(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_GetTrayMenu(tray: Any, /) -> Any: + """SDL_TrayMenu *SDL_GetTrayMenu(SDL_Tray *tray)""" + + @staticmethod + def SDL_GetTrayMenuParentEntry(menu: Any, /) -> Any: + """SDL_TrayEntry *SDL_GetTrayMenuParentEntry(SDL_TrayMenu *menu)""" + + @staticmethod + def SDL_GetTrayMenuParentTray(menu: Any, /) -> Any: + """SDL_Tray *SDL_GetTrayMenuParentTray(SDL_TrayMenu *menu)""" + + @staticmethod + def SDL_GetTraySubmenu(entry: Any, /) -> Any: + """SDL_TrayMenu *SDL_GetTraySubmenu(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_GetUserFolder(folder: Any, /) -> Any: + """const char *SDL_GetUserFolder(SDL_Folder folder)""" + + @staticmethod + def SDL_GetVersion() -> int: + """int SDL_GetVersion(void)""" + + @staticmethod + def SDL_GetVideoDriver(index: int, /) -> Any: + """const char *SDL_GetVideoDriver(int index)""" + + @staticmethod + def SDL_GetWindowAspectRatio(window: Any, min_aspect: Any, max_aspect: Any, /) -> bool: + """unsigned char SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect)""" + + @staticmethod + def SDL_GetWindowBordersSize(window: Any, top: Any, left: Any, bottom: Any, right: Any, /) -> bool: + """unsigned char SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right)""" + + @staticmethod + def SDL_GetWindowDisplayScale(window: Any, /) -> Any: + """float SDL_GetWindowDisplayScale(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowFlags(window: Any, /) -> Any: + """SDL_WindowFlags SDL_GetWindowFlags(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowFromEvent(event: Any, /) -> Any: + """SDL_Window *SDL_GetWindowFromEvent(const SDL_Event *event)""" + + @staticmethod + def SDL_GetWindowFromID(id: Any, /) -> Any: + """SDL_Window *SDL_GetWindowFromID(SDL_WindowID id)""" + + @staticmethod + def SDL_GetWindowFullscreenMode(window: Any, /) -> Any: + """const SDL_DisplayMode *SDL_GetWindowFullscreenMode(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowICCProfile(window: Any, size: Any, /) -> Any: + """void *SDL_GetWindowICCProfile(SDL_Window *window, size_t *size)""" + + @staticmethod + def SDL_GetWindowID(window: Any, /) -> Any: + """SDL_WindowID SDL_GetWindowID(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowKeyboardGrab(window: Any, /) -> bool: + """unsigned char SDL_GetWindowKeyboardGrab(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowMaximumSize(window: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h)""" + + @staticmethod + def SDL_GetWindowMinimumSize(window: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h)""" + + @staticmethod + def SDL_GetWindowMouseGrab(window: Any, /) -> bool: + """unsigned char SDL_GetWindowMouseGrab(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowMouseRect(window: Any, /) -> Any: + """const SDL_Rect *SDL_GetWindowMouseRect(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowOpacity(window: Any, /) -> Any: + """float SDL_GetWindowOpacity(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowParent(window: Any, /) -> Any: + """SDL_Window *SDL_GetWindowParent(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowPixelDensity(window: Any, /) -> Any: + """float SDL_GetWindowPixelDensity(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowPixelFormat(window: Any, /) -> Any: + """SDL_PixelFormat SDL_GetWindowPixelFormat(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowPosition(window: Any, x: Any, y: Any, /) -> bool: + """unsigned char SDL_GetWindowPosition(SDL_Window *window, int *x, int *y)""" + + @staticmethod + def SDL_GetWindowProperties(window: Any, /) -> Any: + """SDL_PropertiesID SDL_GetWindowProperties(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowRelativeMouseMode(window: Any, /) -> bool: + """unsigned char SDL_GetWindowRelativeMouseMode(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowSafeArea(window: Any, rect: Any, /) -> bool: + """unsigned char SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect)""" + + @staticmethod + def SDL_GetWindowSize(window: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetWindowSize(SDL_Window *window, int *w, int *h)""" + + @staticmethod + def SDL_GetWindowSizeInPixels(window: Any, w: Any, h: Any, /) -> bool: + """unsigned char SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h)""" + + @staticmethod + def SDL_GetWindowSurface(window: Any, /) -> Any: + """SDL_Surface *SDL_GetWindowSurface(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindowSurfaceVSync(window: Any, vsync: Any, /) -> bool: + """unsigned char SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync)""" + + @staticmethod + def SDL_GetWindowTitle(window: Any, /) -> Any: + """const char *SDL_GetWindowTitle(SDL_Window *window)""" + + @staticmethod + def SDL_GetWindows(count: Any, /) -> Any: + """SDL_Window **SDL_GetWindows(int *count)""" + + @staticmethod + def SDL_GlobDirectory(path: Any, pattern: Any, flags: Any, count: Any, /) -> Any: + """char **SDL_GlobDirectory(const char *path, const char *pattern, SDL_GlobFlags flags, int *count)""" + + @staticmethod + def SDL_GlobStorageDirectory(storage: Any, path: Any, pattern: Any, flags: Any, count: Any, /) -> Any: + """char **SDL_GlobStorageDirectory(SDL_Storage *storage, const char *path, const char *pattern, SDL_GlobFlags flags, int *count)""" + + @staticmethod + def SDL_HapticEffectSupported(haptic: Any, effect: Any, /) -> bool: + """unsigned char SDL_HapticEffectSupported(SDL_Haptic *haptic, const SDL_HapticEffect *effect)""" + + @staticmethod + def SDL_HapticRumbleSupported(haptic: Any, /) -> bool: + """unsigned char SDL_HapticRumbleSupported(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_HasARMSIMD() -> bool: + """unsigned char SDL_HasARMSIMD(void)""" + + @staticmethod + def SDL_HasAVX() -> bool: + """unsigned char SDL_HasAVX(void)""" + + @staticmethod + def SDL_HasAVX2() -> bool: + """unsigned char SDL_HasAVX2(void)""" + + @staticmethod + def SDL_HasAVX512F() -> bool: + """unsigned char SDL_HasAVX512F(void)""" + + @staticmethod + def SDL_HasAltiVec() -> bool: + """unsigned char SDL_HasAltiVec(void)""" + + @staticmethod + def SDL_HasClipboardData(mime_type: Any, /) -> bool: + """unsigned char SDL_HasClipboardData(const char *mime_type)""" + + @staticmethod + def SDL_HasClipboardText() -> bool: + """unsigned char SDL_HasClipboardText(void)""" + + @staticmethod + def SDL_HasEvent(type: Any, /) -> bool: + """unsigned char SDL_HasEvent(Uint32 type)""" + + @staticmethod + def SDL_HasEvents(minType: Any, maxType: Any, /) -> bool: + """unsigned char SDL_HasEvents(Uint32 minType, Uint32 maxType)""" + + @staticmethod + def SDL_HasGamepad() -> bool: + """unsigned char SDL_HasGamepad(void)""" + + @staticmethod + def SDL_HasJoystick() -> bool: + """unsigned char SDL_HasJoystick(void)""" + + @staticmethod + def SDL_HasKeyboard() -> bool: + """unsigned char SDL_HasKeyboard(void)""" + + @staticmethod + def SDL_HasLASX() -> bool: + """unsigned char SDL_HasLASX(void)""" + + @staticmethod + def SDL_HasLSX() -> bool: + """unsigned char SDL_HasLSX(void)""" + + @staticmethod + def SDL_HasMMX() -> bool: + """unsigned char SDL_HasMMX(void)""" + + @staticmethod + def SDL_HasMouse() -> bool: + """unsigned char SDL_HasMouse(void)""" + + @staticmethod + def SDL_HasNEON() -> bool: + """unsigned char SDL_HasNEON(void)""" + + @staticmethod + def SDL_HasPrimarySelectionText() -> bool: + """unsigned char SDL_HasPrimarySelectionText(void)""" + + @staticmethod + def SDL_HasProperty(props: Any, name: Any, /) -> bool: + """unsigned char SDL_HasProperty(SDL_PropertiesID props, const char *name)""" + + @staticmethod + def SDL_HasRectIntersection(A: Any, B: Any, /) -> bool: + """unsigned char SDL_HasRectIntersection(const SDL_Rect *A, const SDL_Rect *B)""" + + @staticmethod + def SDL_HasRectIntersectionFloat(A: Any, B: Any, /) -> bool: + """unsigned char SDL_HasRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B)""" + + @staticmethod + def SDL_HasSSE() -> bool: + """unsigned char SDL_HasSSE(void)""" + + @staticmethod + def SDL_HasSSE2() -> bool: + """unsigned char SDL_HasSSE2(void)""" + + @staticmethod + def SDL_HasSSE3() -> bool: + """unsigned char SDL_HasSSE3(void)""" + + @staticmethod + def SDL_HasSSE41() -> bool: + """unsigned char SDL_HasSSE41(void)""" + + @staticmethod + def SDL_HasSSE42() -> bool: + """unsigned char SDL_HasSSE42(void)""" + + @staticmethod + def SDL_HasScreenKeyboardSupport() -> bool: + """unsigned char SDL_HasScreenKeyboardSupport(void)""" + + @staticmethod + def SDL_HideCursor() -> bool: + """unsigned char SDL_HideCursor(void)""" + + @staticmethod + def SDL_HideWindow(window: Any, /) -> bool: + """unsigned char SDL_HideWindow(SDL_Window *window)""" + + @staticmethod + def SDL_IOFromConstMem(mem: Any, size: int, /) -> Any: + """SDL_IOStream *SDL_IOFromConstMem(const void *mem, size_t size)""" + + @staticmethod + def SDL_IOFromDynamicMem() -> Any: + """SDL_IOStream *SDL_IOFromDynamicMem(void)""" + + @staticmethod + def SDL_IOFromFile(file: Any, mode: Any, /) -> Any: + """SDL_IOStream *SDL_IOFromFile(const char *file, const char *mode)""" + + @staticmethod + def SDL_IOFromMem(mem: Any, size: int, /) -> Any: + """SDL_IOStream *SDL_IOFromMem(void *mem, size_t size)""" + + @staticmethod + def SDL_IOprintf(context: Any, fmt: Any, /, *__args: Any) -> int: + """size_t SDL_IOprintf(SDL_IOStream *context, const char *fmt, ...)""" + + @staticmethod + def SDL_Init(flags: Any, /) -> bool: + """unsigned char SDL_Init(SDL_InitFlags flags)""" + + @staticmethod + def SDL_InitHapticRumble(haptic: Any, /) -> bool: + """unsigned char SDL_InitHapticRumble(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_InitSubSystem(flags: Any, /) -> bool: + """unsigned char SDL_InitSubSystem(SDL_InitFlags flags)""" + + @staticmethod + def SDL_InsertGPUDebugLabel(command_buffer: Any, text: Any, /) -> None: + """void SDL_InsertGPUDebugLabel(SDL_GPUCommandBuffer *command_buffer, const char *text)""" + + @staticmethod + def SDL_InsertTrayEntryAt(menu: Any, pos: int, label: Any, flags: Any, /) -> Any: + """SDL_TrayEntry *SDL_InsertTrayEntryAt(SDL_TrayMenu *menu, int pos, const char *label, SDL_TrayEntryFlags flags)""" + + @staticmethod + def SDL_IsAudioDevicePhysical(devid: Any, /) -> bool: + """unsigned char SDL_IsAudioDevicePhysical(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_IsAudioDevicePlayback(devid: Any, /) -> bool: + """unsigned char SDL_IsAudioDevicePlayback(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_IsGamepad(instance_id: Any, /) -> bool: + """unsigned char SDL_IsGamepad(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_IsJoystickHaptic(joystick: Any, /) -> bool: + """unsigned char SDL_IsJoystickHaptic(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_IsJoystickVirtual(instance_id: Any, /) -> bool: + """unsigned char SDL_IsJoystickVirtual(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_IsMainThread() -> bool: + """unsigned char SDL_IsMainThread(void)""" + + @staticmethod + def SDL_IsMouseHaptic() -> bool: + """unsigned char SDL_IsMouseHaptic(void)""" + + @staticmethod + def SDL_IsTV() -> bool: + """unsigned char SDL_IsTV(void)""" + + @staticmethod + def SDL_IsTablet() -> bool: + """unsigned char SDL_IsTablet(void)""" + + @staticmethod + def SDL_JoystickConnected(joystick: Any, /) -> bool: + """unsigned char SDL_JoystickConnected(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_JoystickEventsEnabled() -> bool: + """unsigned char SDL_JoystickEventsEnabled(void)""" + + @staticmethod + def SDL_KillProcess(process: Any, force: bool, /) -> bool: + """unsigned char SDL_KillProcess(SDL_Process *process, unsigned char force)""" + + @staticmethod + def SDL_LoadBMP(file: Any, /) -> Any: + """SDL_Surface *SDL_LoadBMP(const char *file)""" + + @staticmethod + def SDL_LoadBMP_IO(src: Any, closeio: bool, /) -> Any: + """SDL_Surface *SDL_LoadBMP_IO(SDL_IOStream *src, unsigned char closeio)""" + + @staticmethod + def SDL_LoadFile(file: Any, datasize: Any, /) -> Any: + """void *SDL_LoadFile(const char *file, size_t *datasize)""" + + @staticmethod + def SDL_LoadFileAsync(file: Any, queue: Any, userdata: Any, /) -> bool: + """unsigned char SDL_LoadFileAsync(const char *file, SDL_AsyncIOQueue *queue, void *userdata)""" + + @staticmethod + def SDL_LoadFile_IO(src: Any, datasize: Any, closeio: bool, /) -> Any: + """void *SDL_LoadFile_IO(SDL_IOStream *src, size_t *datasize, unsigned char closeio)""" + + @staticmethod + def SDL_LoadFunction(handle: Any, name: Any, /) -> Any: + """SDL_FunctionPointer SDL_LoadFunction(SDL_SharedObject *handle, const char *name)""" + + @staticmethod + def SDL_LoadObject(sofile: Any, /) -> Any: + """SDL_SharedObject *SDL_LoadObject(const char *sofile)""" + + @staticmethod + def SDL_LoadWAV(path: Any, spec: Any, audio_buf: Any, audio_len: Any, /) -> bool: + """unsigned char SDL_LoadWAV(const char *path, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len)""" + + @staticmethod + def SDL_LoadWAV_IO(src: Any, closeio: bool, spec: Any, audio_buf: Any, audio_len: Any, /) -> bool: + """unsigned char SDL_LoadWAV_IO(SDL_IOStream *src, unsigned char closeio, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len)""" + + @staticmethod + def SDL_LockAudioStream(stream: Any, /) -> bool: + """unsigned char SDL_LockAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_LockJoysticks() -> None: + """void SDL_LockJoysticks(void)""" + + @staticmethod + def SDL_LockMutex(mutex: Any, /) -> None: + """void SDL_LockMutex(SDL_Mutex *mutex)""" + + @staticmethod + def SDL_LockProperties(props: Any, /) -> bool: + """unsigned char SDL_LockProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_LockRWLockForReading(rwlock: Any, /) -> None: + """void SDL_LockRWLockForReading(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_LockRWLockForWriting(rwlock: Any, /) -> None: + """void SDL_LockRWLockForWriting(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_LockSpinlock(lock: Any, /) -> None: + """void SDL_LockSpinlock(SDL_SpinLock *lock)""" + + @staticmethod + def SDL_LockSurface(surface: Any, /) -> bool: + """unsigned char SDL_LockSurface(SDL_Surface *surface)""" + + @staticmethod + def SDL_LockTexture(texture: Any, rect: Any, pixels: Any, pitch: Any, /) -> bool: + """unsigned char SDL_LockTexture(SDL_Texture *texture, const SDL_Rect *rect, void **pixels, int *pitch)""" + + @staticmethod + def SDL_LockTextureToSurface(texture: Any, rect: Any, surface: Any, /) -> bool: + """unsigned char SDL_LockTextureToSurface(SDL_Texture *texture, const SDL_Rect *rect, SDL_Surface **surface)""" + + @staticmethod + def SDL_Log(fmt: Any, /, *__args: Any) -> None: + """void SDL_Log(const char *fmt, ...)""" + + @staticmethod + def SDL_LogCritical(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogCritical(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogDebug(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogDebug(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogError(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogError(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogInfo(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogInfo(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogMessage(category: int, priority: Any, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogMessage(int category, SDL_LogPriority priority, const char *fmt, ...)""" + + @staticmethod + def SDL_LogTrace(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogTrace(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogVerbose(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogVerbose(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_LogWarn(category: int, fmt: Any, /, *__args: Any) -> None: + """void SDL_LogWarn(int category, const char *fmt, ...)""" + + @staticmethod + def SDL_MapGPUTransferBuffer(device: Any, transfer_buffer: Any, cycle: bool, /) -> Any: + """void *SDL_MapGPUTransferBuffer(SDL_GPUDevice *device, SDL_GPUTransferBuffer *transfer_buffer, unsigned char cycle)""" + + @staticmethod + def SDL_MapRGB(format: Any, palette: Any, r: Any, g: Any, b: Any, /) -> Any: + """Uint32 SDL_MapRGB(const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 r, Uint8 g, Uint8 b)""" + + @staticmethod + def SDL_MapRGBA(format: Any, palette: Any, r: Any, g: Any, b: Any, a: Any, /) -> Any: + """Uint32 SDL_MapRGBA(const SDL_PixelFormatDetails *format, const SDL_Palette *palette, Uint8 r, Uint8 g, Uint8 b, Uint8 a)""" + + @staticmethod + def SDL_MapSurfaceRGB(surface: Any, r: Any, g: Any, b: Any, /) -> Any: + """Uint32 SDL_MapSurfaceRGB(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b)""" + + @staticmethod + def SDL_MapSurfaceRGBA(surface: Any, r: Any, g: Any, b: Any, a: Any, /) -> Any: + """Uint32 SDL_MapSurfaceRGBA(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b, Uint8 a)""" + + @staticmethod + def SDL_MaximizeWindow(window: Any, /) -> bool: + """unsigned char SDL_MaximizeWindow(SDL_Window *window)""" + + @staticmethod + def SDL_MemoryBarrierAcquireFunction() -> None: + """void SDL_MemoryBarrierAcquireFunction(void)""" + + @staticmethod + def SDL_MemoryBarrierReleaseFunction() -> None: + """void SDL_MemoryBarrierReleaseFunction(void)""" + + @staticmethod + def SDL_Metal_CreateView(window: Any, /) -> Any: + """SDL_MetalView SDL_Metal_CreateView(SDL_Window *window)""" + + @staticmethod + def SDL_Metal_DestroyView(view: Any, /) -> None: + """void SDL_Metal_DestroyView(SDL_MetalView view)""" + + @staticmethod + def SDL_Metal_GetLayer(view: Any, /) -> Any: + """void *SDL_Metal_GetLayer(SDL_MetalView view)""" + + @staticmethod + def SDL_MinimizeWindow(window: Any, /) -> bool: + """unsigned char SDL_MinimizeWindow(SDL_Window *window)""" + + @staticmethod + def SDL_MixAudio(dst: Any, src: Any, format: Any, len: Any, volume: Any, /) -> bool: + """unsigned char SDL_MixAudio(Uint8 *dst, const Uint8 *src, SDL_AudioFormat format, Uint32 len, float volume)""" + + @staticmethod + def SDL_OnApplicationDidEnterBackground() -> None: + """void SDL_OnApplicationDidEnterBackground(void)""" + + @staticmethod + def SDL_OnApplicationDidEnterForeground() -> None: + """void SDL_OnApplicationDidEnterForeground(void)""" + + @staticmethod + def SDL_OnApplicationDidReceiveMemoryWarning() -> None: + """void SDL_OnApplicationDidReceiveMemoryWarning(void)""" + + @staticmethod + def SDL_OnApplicationWillEnterBackground() -> None: + """void SDL_OnApplicationWillEnterBackground(void)""" + + @staticmethod + def SDL_OnApplicationWillEnterForeground() -> None: + """void SDL_OnApplicationWillEnterForeground(void)""" + + @staticmethod + def SDL_OnApplicationWillTerminate() -> None: + """void SDL_OnApplicationWillTerminate(void)""" + + @staticmethod + def SDL_OpenAudioDevice(devid: Any, spec: Any, /) -> Any: + """SDL_AudioDeviceID SDL_OpenAudioDevice(SDL_AudioDeviceID devid, const SDL_AudioSpec *spec)""" + + @staticmethod + def SDL_OpenAudioDeviceStream(devid: Any, spec: Any, callback: Any, userdata: Any, /) -> Any: + """SDL_AudioStream *SDL_OpenAudioDeviceStream(SDL_AudioDeviceID devid, const SDL_AudioSpec *spec, SDL_AudioStreamCallback callback, void *userdata)""" + + @staticmethod + def SDL_OpenCamera(instance_id: Any, spec: Any, /) -> Any: + """SDL_Camera *SDL_OpenCamera(SDL_CameraID instance_id, const SDL_CameraSpec *spec)""" + + @staticmethod + def SDL_OpenFileStorage(path: Any, /) -> Any: + """SDL_Storage *SDL_OpenFileStorage(const char *path)""" + + @staticmethod + def SDL_OpenGamepad(instance_id: Any, /) -> Any: + """SDL_Gamepad *SDL_OpenGamepad(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_OpenHaptic(instance_id: Any, /) -> Any: + """SDL_Haptic *SDL_OpenHaptic(SDL_HapticID instance_id)""" + + @staticmethod + def SDL_OpenHapticFromJoystick(joystick: Any, /) -> Any: + """SDL_Haptic *SDL_OpenHapticFromJoystick(SDL_Joystick *joystick)""" + + @staticmethod + def SDL_OpenHapticFromMouse() -> Any: + """SDL_Haptic *SDL_OpenHapticFromMouse(void)""" + + @staticmethod + def SDL_OpenIO(iface: Any, userdata: Any, /) -> Any: + """SDL_IOStream *SDL_OpenIO(const SDL_IOStreamInterface *iface, void *userdata)""" + + @staticmethod + def SDL_OpenJoystick(instance_id: Any, /) -> Any: + """SDL_Joystick *SDL_OpenJoystick(SDL_JoystickID instance_id)""" + + @staticmethod + def SDL_OpenSensor(instance_id: Any, /) -> Any: + """SDL_Sensor *SDL_OpenSensor(SDL_SensorID instance_id)""" + + @staticmethod + def SDL_OpenStorage(iface: Any, userdata: Any, /) -> Any: + """SDL_Storage *SDL_OpenStorage(const SDL_StorageInterface *iface, void *userdata)""" + + @staticmethod + def SDL_OpenTitleStorage(override: Any, props: Any, /) -> Any: + """SDL_Storage *SDL_OpenTitleStorage(const char *override, SDL_PropertiesID props)""" + + @staticmethod + def SDL_OpenURL(url: Any, /) -> bool: + """unsigned char SDL_OpenURL(const char *url)""" + + @staticmethod + def SDL_OpenUserStorage(org: Any, app: Any, props: Any, /) -> Any: + """SDL_Storage *SDL_OpenUserStorage(const char *org, const char *app, SDL_PropertiesID props)""" + + @staticmethod + def SDL_OutOfMemory() -> bool: + """unsigned char SDL_OutOfMemory(void)""" + + @staticmethod + def SDL_PauseAudioDevice(devid: Any, /) -> bool: + """unsigned char SDL_PauseAudioDevice(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_PauseAudioStreamDevice(stream: Any, /) -> bool: + """unsigned char SDL_PauseAudioStreamDevice(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_PauseHaptic(haptic: Any, /) -> bool: + """unsigned char SDL_PauseHaptic(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_PeepEvents(events: Any, numevents: int, action: Any, minType: Any, maxType: Any, /) -> int: + """int SDL_PeepEvents(SDL_Event *events, int numevents, SDL_EventAction action, Uint32 minType, Uint32 maxType)""" + + @staticmethod + def SDL_PlayHapticRumble(haptic: Any, strength: Any, length: Any, /) -> bool: + """unsigned char SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length)""" + + @staticmethod + def SDL_PollEvent(event: Any, /) -> bool: + """unsigned char SDL_PollEvent(SDL_Event *event)""" + + @staticmethod + def SDL_PopGPUDebugGroup(command_buffer: Any, /) -> None: + """void SDL_PopGPUDebugGroup(SDL_GPUCommandBuffer *command_buffer)""" + + @staticmethod + def SDL_PremultiplyAlpha( + width: int, + height: int, + src_format: Any, + src: Any, + src_pitch: int, + dst_format: Any, + dst: Any, + dst_pitch: int, + linear: bool, + /, + ) -> bool: + """unsigned char SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, unsigned char linear)""" + + @staticmethod + def SDL_PremultiplySurfaceAlpha(surface: Any, linear: bool, /) -> bool: + """unsigned char SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, unsigned char linear)""" + + @staticmethod + def SDL_PumpEvents() -> None: + """void SDL_PumpEvents(void)""" + + @staticmethod + def SDL_PushEvent(event: Any, /) -> bool: + """unsigned char SDL_PushEvent(SDL_Event *event)""" + + @staticmethod + def SDL_PushGPUComputeUniformData(command_buffer: Any, slot_index: Any, data: Any, length: Any, /) -> None: + """void SDL_PushGPUComputeUniformData(SDL_GPUCommandBuffer *command_buffer, Uint32 slot_index, const void *data, Uint32 length)""" + + @staticmethod + def SDL_PushGPUDebugGroup(command_buffer: Any, name: Any, /) -> None: + """void SDL_PushGPUDebugGroup(SDL_GPUCommandBuffer *command_buffer, const char *name)""" + + @staticmethod + def SDL_PushGPUFragmentUniformData(command_buffer: Any, slot_index: Any, data: Any, length: Any, /) -> None: + """void SDL_PushGPUFragmentUniformData(SDL_GPUCommandBuffer *command_buffer, Uint32 slot_index, const void *data, Uint32 length)""" + + @staticmethod + def SDL_PushGPUVertexUniformData(command_buffer: Any, slot_index: Any, data: Any, length: Any, /) -> None: + """void SDL_PushGPUVertexUniformData(SDL_GPUCommandBuffer *command_buffer, Uint32 slot_index, const void *data, Uint32 length)""" + + @staticmethod + def SDL_PutAudioStreamData(stream: Any, buf: Any, len: int, /) -> bool: + """unsigned char SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len)""" + + @staticmethod + def SDL_QueryGPUFence(device: Any, fence: Any, /) -> bool: + """unsigned char SDL_QueryGPUFence(SDL_GPUDevice *device, SDL_GPUFence *fence)""" + + @staticmethod + def SDL_Quit() -> None: + """void SDL_Quit(void)""" + + @staticmethod + def SDL_QuitSubSystem(flags: Any, /) -> None: + """void SDL_QuitSubSystem(SDL_InitFlags flags)""" + + @staticmethod + def SDL_RaiseWindow(window: Any, /) -> bool: + """unsigned char SDL_RaiseWindow(SDL_Window *window)""" + + @staticmethod + def SDL_ReadAsyncIO(asyncio: Any, ptr: Any, offset: Any, size: Any, queue: Any, userdata: Any, /) -> bool: + """unsigned char SDL_ReadAsyncIO(SDL_AsyncIO *asyncio, void *ptr, Uint64 offset, Uint64 size, SDL_AsyncIOQueue *queue, void *userdata)""" + + @staticmethod + def SDL_ReadIO(context: Any, ptr: Any, size: int, /) -> int: + """size_t SDL_ReadIO(SDL_IOStream *context, void *ptr, size_t size)""" + + @staticmethod + def SDL_ReadProcess(process: Any, datasize: Any, exitcode: Any, /) -> Any: + """void *SDL_ReadProcess(SDL_Process *process, size_t *datasize, int *exitcode)""" + + @staticmethod + def SDL_ReadS16BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS16BE(SDL_IOStream *src, Sint16 *value)""" + + @staticmethod + def SDL_ReadS16LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS16LE(SDL_IOStream *src, Sint16 *value)""" + + @staticmethod + def SDL_ReadS32BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS32BE(SDL_IOStream *src, Sint32 *value)""" + + @staticmethod + def SDL_ReadS32LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS32LE(SDL_IOStream *src, Sint32 *value)""" + + @staticmethod + def SDL_ReadS64BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS64BE(SDL_IOStream *src, Sint64 *value)""" + + @staticmethod + def SDL_ReadS64LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS64LE(SDL_IOStream *src, Sint64 *value)""" + + @staticmethod + def SDL_ReadS8(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadS8(SDL_IOStream *src, Sint8 *value)""" + + @staticmethod + def SDL_ReadStorageFile(storage: Any, path: Any, destination: Any, length: Any, /) -> bool: + """unsigned char SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length)""" + + @staticmethod + def SDL_ReadSurfacePixel(surface: Any, x: int, y: int, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a)""" + + @staticmethod + def SDL_ReadSurfacePixelFloat(surface: Any, x: int, y: int, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a)""" + + @staticmethod + def SDL_ReadU16BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU16BE(SDL_IOStream *src, Uint16 *value)""" + + @staticmethod + def SDL_ReadU16LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU16LE(SDL_IOStream *src, Uint16 *value)""" + + @staticmethod + def SDL_ReadU32BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU32BE(SDL_IOStream *src, Uint32 *value)""" + + @staticmethod + def SDL_ReadU32LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU32LE(SDL_IOStream *src, Uint32 *value)""" + + @staticmethod + def SDL_ReadU64BE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU64BE(SDL_IOStream *src, Uint64 *value)""" + + @staticmethod + def SDL_ReadU64LE(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU64LE(SDL_IOStream *src, Uint64 *value)""" + + @staticmethod + def SDL_ReadU8(src: Any, value: Any, /) -> bool: + """unsigned char SDL_ReadU8(SDL_IOStream *src, Uint8 *value)""" + + @staticmethod + def SDL_RegisterEvents(numevents: int, /) -> Any: + """Uint32 SDL_RegisterEvents(int numevents)""" + + @staticmethod + def SDL_ReleaseCameraFrame(camera: Any, frame: Any, /) -> None: + """void SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame)""" + + @staticmethod + def SDL_ReleaseGPUBuffer(device: Any, buffer: Any, /) -> None: + """void SDL_ReleaseGPUBuffer(SDL_GPUDevice *device, SDL_GPUBuffer *buffer)""" + + @staticmethod + def SDL_ReleaseGPUComputePipeline(device: Any, compute_pipeline: Any, /) -> None: + """void SDL_ReleaseGPUComputePipeline(SDL_GPUDevice *device, SDL_GPUComputePipeline *compute_pipeline)""" + + @staticmethod + def SDL_ReleaseGPUFence(device: Any, fence: Any, /) -> None: + """void SDL_ReleaseGPUFence(SDL_GPUDevice *device, SDL_GPUFence *fence)""" + + @staticmethod + def SDL_ReleaseGPUGraphicsPipeline(device: Any, graphics_pipeline: Any, /) -> None: + """void SDL_ReleaseGPUGraphicsPipeline(SDL_GPUDevice *device, SDL_GPUGraphicsPipeline *graphics_pipeline)""" + + @staticmethod + def SDL_ReleaseGPUSampler(device: Any, sampler: Any, /) -> None: + """void SDL_ReleaseGPUSampler(SDL_GPUDevice *device, SDL_GPUSampler *sampler)""" + + @staticmethod + def SDL_ReleaseGPUShader(device: Any, shader: Any, /) -> None: + """void SDL_ReleaseGPUShader(SDL_GPUDevice *device, SDL_GPUShader *shader)""" + + @staticmethod + def SDL_ReleaseGPUTexture(device: Any, texture: Any, /) -> None: + """void SDL_ReleaseGPUTexture(SDL_GPUDevice *device, SDL_GPUTexture *texture)""" + + @staticmethod + def SDL_ReleaseGPUTransferBuffer(device: Any, transfer_buffer: Any, /) -> None: + """void SDL_ReleaseGPUTransferBuffer(SDL_GPUDevice *device, SDL_GPUTransferBuffer *transfer_buffer)""" + + @staticmethod + def SDL_ReleaseWindowFromGPUDevice(device: Any, window: Any, /) -> None: + """void SDL_ReleaseWindowFromGPUDevice(SDL_GPUDevice *device, SDL_Window *window)""" + + @staticmethod + def SDL_ReloadGamepadMappings() -> bool: + """unsigned char SDL_ReloadGamepadMappings(void)""" + + @staticmethod + def SDL_RemoveEventWatch(filter: Any, userdata: Any, /) -> None: + """void SDL_RemoveEventWatch(SDL_EventFilter filter, void *userdata)""" + + @staticmethod + def SDL_RemoveHintCallback(name: Any, callback: Any, userdata: Any, /) -> None: + """void SDL_RemoveHintCallback(const char *name, SDL_HintCallback callback, void *userdata)""" + + @staticmethod + def SDL_RemovePath(path: Any, /) -> bool: + """unsigned char SDL_RemovePath(const char *path)""" + + @staticmethod + def SDL_RemoveStoragePath(storage: Any, path: Any, /) -> bool: + """unsigned char SDL_RemoveStoragePath(SDL_Storage *storage, const char *path)""" + + @staticmethod + def SDL_RemoveSurfaceAlternateImages(surface: Any, /) -> None: + """void SDL_RemoveSurfaceAlternateImages(SDL_Surface *surface)""" + + @staticmethod + def SDL_RemoveTimer(id: Any, /) -> bool: + """unsigned char SDL_RemoveTimer(SDL_TimerID id)""" + + @staticmethod + def SDL_RemoveTrayEntry(entry: Any, /) -> None: + """void SDL_RemoveTrayEntry(SDL_TrayEntry *entry)""" + + @staticmethod + def SDL_RenamePath(oldpath: Any, newpath: Any, /) -> bool: + """unsigned char SDL_RenamePath(const char *oldpath, const char *newpath)""" + + @staticmethod + def SDL_RenameStoragePath(storage: Any, oldpath: Any, newpath: Any, /) -> bool: + """unsigned char SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath)""" + + @staticmethod + def SDL_RenderClear(renderer: Any, /) -> bool: + """unsigned char SDL_RenderClear(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_RenderClipEnabled(renderer: Any, /) -> bool: + """unsigned char SDL_RenderClipEnabled(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_RenderCoordinatesFromWindow(renderer: Any, window_x: Any, window_y: Any, x: Any, y: Any, /) -> bool: + """unsigned char SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y)""" + + @staticmethod + def SDL_RenderCoordinatesToWindow(renderer: Any, x: Any, y: Any, window_x: Any, window_y: Any, /) -> bool: + """unsigned char SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y)""" + + @staticmethod + def SDL_RenderDebugText(renderer: Any, x: Any, y: Any, str: Any, /) -> bool: + """unsigned char SDL_RenderDebugText(SDL_Renderer *renderer, float x, float y, const char *str)""" + + @staticmethod + def SDL_RenderDebugTextFormat(renderer: Any, x: Any, y: Any, fmt: Any, /, *__args: Any) -> bool: + """unsigned char SDL_RenderDebugTextFormat(SDL_Renderer *renderer, float x, float y, const char *fmt, ...)""" + + @staticmethod + def SDL_RenderFillRect(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect)""" + + @staticmethod + def SDL_RenderFillRects(renderer: Any, rects: Any, count: int, /) -> bool: + """unsigned char SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count)""" + + @staticmethod + def SDL_RenderGeometry( + renderer: Any, texture: Any, vertices: Any, num_vertices: int, indices: Any, num_indices: int, / + ) -> bool: + """unsigned char SDL_RenderGeometry(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_Vertex *vertices, int num_vertices, const int *indices, int num_indices)""" + + @staticmethod + def SDL_RenderGeometryRaw( + renderer: Any, + texture: Any, + xy: Any, + xy_stride: int, + color: Any, + color_stride: int, + uv: Any, + uv_stride: int, + num_vertices: int, + indices: Any, + num_indices: int, + size_indices: int, + /, + ) -> bool: + """unsigned char SDL_RenderGeometryRaw(SDL_Renderer *renderer, SDL_Texture *texture, const float *xy, int xy_stride, const SDL_FColor *color, int color_stride, const float *uv, int uv_stride, int num_vertices, const void *indices, int num_indices, int size_indices)""" + + @staticmethod + def SDL_RenderLine(renderer: Any, x1: Any, y1: Any, x2: Any, y2: Any, /) -> bool: + """unsigned char SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2)""" + + @staticmethod + def SDL_RenderLines(renderer: Any, points: Any, count: int, /) -> bool: + """unsigned char SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count)""" + + @staticmethod + def SDL_RenderPoint(renderer: Any, x: Any, y: Any, /) -> bool: + """unsigned char SDL_RenderPoint(SDL_Renderer *renderer, float x, float y)""" + + @staticmethod + def SDL_RenderPoints(renderer: Any, points: Any, count: int, /) -> bool: + """unsigned char SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count)""" + + @staticmethod + def SDL_RenderPresent(renderer: Any, /) -> bool: + """unsigned char SDL_RenderPresent(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_RenderReadPixels(renderer: Any, rect: Any, /) -> Any: + """SDL_Surface *SDL_RenderReadPixels(SDL_Renderer *renderer, const SDL_Rect *rect)""" + + @staticmethod + def SDL_RenderRect(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect)""" + + @staticmethod + def SDL_RenderRects(renderer: Any, rects: Any, count: int, /) -> bool: + """unsigned char SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count)""" + + @staticmethod + def SDL_RenderTexture(renderer: Any, texture: Any, srcrect: Any, dstrect: Any, /) -> bool: + """unsigned char SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect)""" + + @staticmethod + def SDL_RenderTexture9Grid( + renderer: Any, + texture: Any, + srcrect: Any, + left_width: Any, + right_width: Any, + top_height: Any, + bottom_height: Any, + scale: Any, + dstrect: Any, + /, + ) -> bool: + """unsigned char SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect)""" + + @staticmethod + def SDL_RenderTextureAffine( + renderer: Any, texture: Any, srcrect: Any, origin: Any, right: Any, down: Any, / + ) -> bool: + """unsigned char SDL_RenderTextureAffine(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FPoint *origin, const SDL_FPoint *right, const SDL_FPoint *down)""" + + @staticmethod + def SDL_RenderTextureRotated( + renderer: Any, texture: Any, srcrect: Any, dstrect: Any, angle: Any, center: Any, flip: Any, / + ) -> bool: + """unsigned char SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect, double angle, const SDL_FPoint *center, SDL_FlipMode flip)""" + + @staticmethod + def SDL_RenderTextureTiled(renderer: Any, texture: Any, srcrect: Any, scale: Any, dstrect: Any, /) -> bool: + """unsigned char SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect)""" + + @staticmethod + def SDL_RenderViewportSet(renderer: Any, /) -> bool: + """unsigned char SDL_RenderViewportSet(SDL_Renderer *renderer)""" + + @staticmethod + def SDL_ReportAssertion(data: Any, func: Any, file: Any, line: int, /) -> Any: + """SDL_AssertState SDL_ReportAssertion(SDL_AssertData *data, const char *func, const char *file, int line)""" + + @staticmethod + def SDL_ResetAssertionReport() -> None: + """void SDL_ResetAssertionReport(void)""" + + @staticmethod + def SDL_ResetHint(name: Any, /) -> bool: + """unsigned char SDL_ResetHint(const char *name)""" + + @staticmethod + def SDL_ResetHints() -> None: + """void SDL_ResetHints(void)""" + + @staticmethod + def SDL_ResetKeyboard() -> None: + """void SDL_ResetKeyboard(void)""" + + @staticmethod + def SDL_ResetLogPriorities() -> None: + """void SDL_ResetLogPriorities(void)""" + + @staticmethod + def SDL_RestoreWindow(window: Any, /) -> bool: + """unsigned char SDL_RestoreWindow(SDL_Window *window)""" + + @staticmethod + def SDL_ResumeAudioDevice(devid: Any, /) -> bool: + """unsigned char SDL_ResumeAudioDevice(SDL_AudioDeviceID devid)""" + + @staticmethod + def SDL_ResumeAudioStreamDevice(stream: Any, /) -> bool: + """unsigned char SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_ResumeHaptic(haptic: Any, /) -> bool: + """unsigned char SDL_ResumeHaptic(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_RumbleGamepad( + gamepad: Any, low_frequency_rumble: Any, high_frequency_rumble: Any, duration_ms: Any, / + ) -> bool: + """unsigned char SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms)""" + + @staticmethod + def SDL_RumbleGamepadTriggers(gamepad: Any, left_rumble: Any, right_rumble: Any, duration_ms: Any, /) -> bool: + """unsigned char SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms)""" + + @staticmethod + def SDL_RumbleJoystick( + joystick: Any, low_frequency_rumble: Any, high_frequency_rumble: Any, duration_ms: Any, / + ) -> bool: + """unsigned char SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms)""" + + @staticmethod + def SDL_RumbleJoystickTriggers(joystick: Any, left_rumble: Any, right_rumble: Any, duration_ms: Any, /) -> bool: + """unsigned char SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms)""" + + @staticmethod + def SDL_RunHapticEffect(haptic: Any, effect: int, iterations: Any, /) -> bool: + """unsigned char SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations)""" + + @staticmethod + def SDL_RunOnMainThread(callback: Any, userdata: Any, wait_complete: bool, /) -> bool: + """unsigned char SDL_RunOnMainThread(SDL_MainThreadCallback callback, void *userdata, unsigned char wait_complete)""" + + @staticmethod + def SDL_SaveBMP(surface: Any, file: Any, /) -> bool: + """unsigned char SDL_SaveBMP(SDL_Surface *surface, const char *file)""" + + @staticmethod + def SDL_SaveBMP_IO(surface: Any, dst: Any, closeio: bool, /) -> bool: + """unsigned char SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, unsigned char closeio)""" + + @staticmethod + def SDL_SaveFile(file: Any, data: Any, datasize: int, /) -> bool: + """unsigned char SDL_SaveFile(const char *file, const void *data, size_t datasize)""" + + @staticmethod + def SDL_SaveFile_IO(src: Any, data: Any, datasize: int, closeio: bool, /) -> bool: + """unsigned char SDL_SaveFile_IO(SDL_IOStream *src, const void *data, size_t datasize, unsigned char closeio)""" + + @staticmethod + def SDL_ScaleSurface(surface: Any, width: int, height: int, scaleMode: Any, /) -> Any: + """SDL_Surface *SDL_ScaleSurface(SDL_Surface *surface, int width, int height, SDL_ScaleMode scaleMode)""" + + @staticmethod + def SDL_ScreenKeyboardShown(window: Any, /) -> bool: + """unsigned char SDL_ScreenKeyboardShown(SDL_Window *window)""" + + @staticmethod + def SDL_ScreenSaverEnabled() -> bool: + """unsigned char SDL_ScreenSaverEnabled(void)""" + + @staticmethod + def SDL_SeekIO(context: Any, offset: Any, whence: Any, /) -> Any: + """Sint64 SDL_SeekIO(SDL_IOStream *context, Sint64 offset, SDL_IOWhence whence)""" + + @staticmethod + def SDL_SendGamepadEffect(gamepad: Any, data: Any, size: int, /) -> bool: + """unsigned char SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size)""" + + @staticmethod + def SDL_SendJoystickEffect(joystick: Any, data: Any, size: int, /) -> bool: + """unsigned char SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size)""" + + @staticmethod + def SDL_SendJoystickVirtualSensorData( + joystick: Any, type: Any, sensor_timestamp: Any, data: Any, num_values: int, / + ) -> bool: + """unsigned char SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values)""" + + @staticmethod + def SDL_SetAppMetadata(appname: Any, appversion: Any, appidentifier: Any, /) -> bool: + """unsigned char SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier)""" + + @staticmethod + def SDL_SetAppMetadataProperty(name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetAppMetadataProperty(const char *name, const char *value)""" + + @staticmethod + def SDL_SetAssertionHandler(handler: Any, userdata: Any, /) -> None: + """void SDL_SetAssertionHandler(SDL_AssertionHandler handler, void *userdata)""" + + @staticmethod + def SDL_SetAtomicInt(a: Any, v: int, /) -> int: + """int SDL_SetAtomicInt(SDL_AtomicInt *a, int v)""" + + @staticmethod + def SDL_SetAtomicPointer(a: Any, v: Any, /) -> Any: + """void *SDL_SetAtomicPointer(void **a, void *v)""" + + @staticmethod + def SDL_SetAtomicU32(a: Any, v: Any, /) -> Any: + """Uint32 SDL_SetAtomicU32(SDL_AtomicU32 *a, Uint32 v)""" + + @staticmethod + def SDL_SetAudioDeviceGain(devid: Any, gain: Any, /) -> bool: + """unsigned char SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain)""" + + @staticmethod + def SDL_SetAudioPostmixCallback(devid: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata)""" + + @staticmethod + def SDL_SetAudioStreamFormat(stream: Any, src_spec: Any, dst_spec: Any, /) -> bool: + """unsigned char SDL_SetAudioStreamFormat(SDL_AudioStream *stream, const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec)""" + + @staticmethod + def SDL_SetAudioStreamFrequencyRatio(stream: Any, ratio: Any, /) -> bool: + """unsigned char SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio)""" + + @staticmethod + def SDL_SetAudioStreamGain(stream: Any, gain: Any, /) -> bool: + """unsigned char SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain)""" + + @staticmethod + def SDL_SetAudioStreamGetCallback(stream: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata)""" + + @staticmethod + def SDL_SetAudioStreamInputChannelMap(stream: Any, chmap: Any, count: int, /) -> bool: + """unsigned char SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count)""" + + @staticmethod + def SDL_SetAudioStreamOutputChannelMap(stream: Any, chmap: Any, count: int, /) -> bool: + """unsigned char SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count)""" + + @staticmethod + def SDL_SetAudioStreamPutCallback(stream: Any, callback: Any, userdata: Any, /) -> bool: + """unsigned char SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata)""" + + @staticmethod + def SDL_SetBooleanProperty(props: Any, name: Any, value: bool, /) -> bool: + """unsigned char SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, unsigned char value)""" + + @staticmethod + def SDL_SetClipboardData( + callback: Any, cleanup: Any, userdata: Any, mime_types: Any, num_mime_types: int, / + ) -> bool: + """unsigned char SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types)""" + + @staticmethod + def SDL_SetClipboardText(text: Any, /) -> bool: + """unsigned char SDL_SetClipboardText(const char *text)""" + + @staticmethod + def SDL_SetCurrentThreadPriority(priority: Any, /) -> bool: + """unsigned char SDL_SetCurrentThreadPriority(SDL_ThreadPriority priority)""" + + @staticmethod + def SDL_SetCursor(cursor: Any, /) -> bool: + """unsigned char SDL_SetCursor(SDL_Cursor *cursor)""" + + @staticmethod + def SDL_SetEnvironmentVariable(env: Any, name: Any, value: Any, overwrite: bool, /) -> bool: + """unsigned char SDL_SetEnvironmentVariable(SDL_Environment *env, const char *name, const char *value, unsigned char overwrite)""" + + @staticmethod + def SDL_SetError(fmt: Any, /, *__args: Any) -> bool: + """unsigned char SDL_SetError(const char *fmt, ...)""" + + @staticmethod + def SDL_SetEventEnabled(type: Any, enabled: bool, /) -> None: + """void SDL_SetEventEnabled(Uint32 type, unsigned char enabled)""" + + @staticmethod + def SDL_SetEventFilter(filter: Any, userdata: Any, /) -> None: + """void SDL_SetEventFilter(SDL_EventFilter filter, void *userdata)""" + + @staticmethod + def SDL_SetFloatProperty(props: Any, name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value)""" + + @staticmethod + def SDL_SetGPUAllowedFramesInFlight(device: Any, allowed_frames_in_flight: Any, /) -> bool: + """unsigned char SDL_SetGPUAllowedFramesInFlight(SDL_GPUDevice *device, Uint32 allowed_frames_in_flight)""" + + @staticmethod + def SDL_SetGPUBlendConstants(render_pass: Any, blend_constants: Any, /) -> None: + """void SDL_SetGPUBlendConstants(SDL_GPURenderPass *render_pass, SDL_FColor blend_constants)""" + + @staticmethod + def SDL_SetGPUBufferName(device: Any, buffer: Any, text: Any, /) -> None: + """void SDL_SetGPUBufferName(SDL_GPUDevice *device, SDL_GPUBuffer *buffer, const char *text)""" + + @staticmethod + def SDL_SetGPUScissor(render_pass: Any, scissor: Any, /) -> None: + """void SDL_SetGPUScissor(SDL_GPURenderPass *render_pass, const SDL_Rect *scissor)""" + + @staticmethod + def SDL_SetGPUStencilReference(render_pass: Any, reference: Any, /) -> None: + """void SDL_SetGPUStencilReference(SDL_GPURenderPass *render_pass, Uint8 reference)""" + + @staticmethod + def SDL_SetGPUSwapchainParameters( + device: Any, window: Any, swapchain_composition: Any, present_mode: Any, / + ) -> bool: + """unsigned char SDL_SetGPUSwapchainParameters(SDL_GPUDevice *device, SDL_Window *window, SDL_GPUSwapchainComposition swapchain_composition, SDL_GPUPresentMode present_mode)""" + + @staticmethod + def SDL_SetGPUTextureName(device: Any, texture: Any, text: Any, /) -> None: + """void SDL_SetGPUTextureName(SDL_GPUDevice *device, SDL_GPUTexture *texture, const char *text)""" + + @staticmethod + def SDL_SetGPUViewport(render_pass: Any, viewport: Any, /) -> None: + """void SDL_SetGPUViewport(SDL_GPURenderPass *render_pass, const SDL_GPUViewport *viewport)""" + + @staticmethod + def SDL_SetGamepadEventsEnabled(enabled: bool, /) -> None: + """void SDL_SetGamepadEventsEnabled(unsigned char enabled)""" + + @staticmethod + def SDL_SetGamepadLED(gamepad: Any, red: Any, green: Any, blue: Any, /) -> bool: + """unsigned char SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue)""" + + @staticmethod + def SDL_SetGamepadMapping(instance_id: Any, mapping: Any, /) -> bool: + """unsigned char SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping)""" + + @staticmethod + def SDL_SetGamepadPlayerIndex(gamepad: Any, player_index: int, /) -> bool: + """unsigned char SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index)""" + + @staticmethod + def SDL_SetGamepadSensorEnabled(gamepad: Any, type: Any, enabled: bool, /) -> bool: + """unsigned char SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, unsigned char enabled)""" + + @staticmethod + def SDL_SetHapticAutocenter(haptic: Any, autocenter: int, /) -> bool: + """unsigned char SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter)""" + + @staticmethod + def SDL_SetHapticGain(haptic: Any, gain: int, /) -> bool: + """unsigned char SDL_SetHapticGain(SDL_Haptic *haptic, int gain)""" + + @staticmethod + def SDL_SetHint(name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetHint(const char *name, const char *value)""" + + @staticmethod + def SDL_SetHintWithPriority(name: Any, value: Any, priority: Any, /) -> bool: + """unsigned char SDL_SetHintWithPriority(const char *name, const char *value, SDL_HintPriority priority)""" + + @staticmethod + def SDL_SetInitialized(state: Any, initialized: bool, /) -> None: + """void SDL_SetInitialized(SDL_InitState *state, unsigned char initialized)""" + + @staticmethod + def SDL_SetJoystickEventsEnabled(enabled: bool, /) -> None: + """void SDL_SetJoystickEventsEnabled(unsigned char enabled)""" + + @staticmethod + def SDL_SetJoystickLED(joystick: Any, red: Any, green: Any, blue: Any, /) -> bool: + """unsigned char SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue)""" + + @staticmethod + def SDL_SetJoystickPlayerIndex(joystick: Any, player_index: int, /) -> bool: + """unsigned char SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index)""" + + @staticmethod + def SDL_SetJoystickVirtualAxis(joystick: Any, axis: int, value: Any, /) -> bool: + """unsigned char SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value)""" + + @staticmethod + def SDL_SetJoystickVirtualBall(joystick: Any, ball: int, xrel: Any, yrel: Any, /) -> bool: + """unsigned char SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel)""" + + @staticmethod + def SDL_SetJoystickVirtualButton(joystick: Any, button: int, down: bool, /) -> bool: + """unsigned char SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, unsigned char down)""" + + @staticmethod + def SDL_SetJoystickVirtualHat(joystick: Any, hat: int, value: Any, /) -> bool: + """unsigned char SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value)""" + + @staticmethod + def SDL_SetJoystickVirtualTouchpad( + joystick: Any, touchpad: int, finger: int, down: bool, x: Any, y: Any, pressure: Any, / + ) -> bool: + """unsigned char SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, unsigned char down, float x, float y, float pressure)""" + + @staticmethod + def SDL_SetLogOutputFunction(callback: Any, userdata: Any, /) -> None: + """void SDL_SetLogOutputFunction(SDL_LogOutputFunction callback, void *userdata)""" + + @staticmethod + def SDL_SetLogPriorities(priority: Any, /) -> None: + """void SDL_SetLogPriorities(SDL_LogPriority priority)""" + + @staticmethod + def SDL_SetLogPriority(category: int, priority: Any, /) -> None: + """void SDL_SetLogPriority(int category, SDL_LogPriority priority)""" + + @staticmethod + def SDL_SetLogPriorityPrefix(priority: Any, prefix: Any, /) -> bool: + """unsigned char SDL_SetLogPriorityPrefix(SDL_LogPriority priority, const char *prefix)""" + + @staticmethod + def SDL_SetMemoryFunctions(malloc_func: Any, calloc_func: Any, realloc_func: Any, free_func: Any, /) -> bool: + """unsigned char SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, SDL_calloc_func calloc_func, SDL_realloc_func realloc_func, SDL_free_func free_func)""" + + @staticmethod + def SDL_SetModState(modstate: Any, /) -> None: + """void SDL_SetModState(SDL_Keymod modstate)""" + + @staticmethod + def SDL_SetNumberProperty(props: Any, name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value)""" + + @staticmethod + def SDL_SetPaletteColors(palette: Any, colors: Any, firstcolor: int, ncolors: int, /) -> bool: + """unsigned char SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors)""" + + @staticmethod + def SDL_SetPointerProperty(props: Any, name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value)""" + + @staticmethod + def SDL_SetPointerPropertyWithCleanup(props: Any, name: Any, value: Any, cleanup: Any, userdata: Any, /) -> bool: + """unsigned char SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata)""" + + @staticmethod + def SDL_SetPrimarySelectionText(text: Any, /) -> bool: + """unsigned char SDL_SetPrimarySelectionText(const char *text)""" + + @staticmethod + def SDL_SetRenderClipRect(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect)""" + + @staticmethod + def SDL_SetRenderColorScale(renderer: Any, scale: Any, /) -> bool: + """unsigned char SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale)""" + + @staticmethod + def SDL_SetRenderDrawBlendMode(renderer: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode)""" + + @staticmethod + def SDL_SetRenderDrawColor(renderer: Any, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a)""" + + @staticmethod + def SDL_SetRenderDrawColorFloat(renderer: Any, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a)""" + + @staticmethod + def SDL_SetRenderLogicalPresentation(renderer: Any, w: int, h: int, mode: Any, /) -> bool: + """unsigned char SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode)""" + + @staticmethod + def SDL_SetRenderScale(renderer: Any, scaleX: Any, scaleY: Any, /) -> bool: + """unsigned char SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY)""" + + @staticmethod + def SDL_SetRenderTarget(renderer: Any, texture: Any, /) -> bool: + """unsigned char SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture)""" + + @staticmethod + def SDL_SetRenderVSync(renderer: Any, vsync: int, /) -> bool: + """unsigned char SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync)""" + + @staticmethod + def SDL_SetRenderViewport(renderer: Any, rect: Any, /) -> bool: + """unsigned char SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect)""" + + @staticmethod + def SDL_SetScancodeName(scancode: Any, name: Any, /) -> bool: + """unsigned char SDL_SetScancodeName(SDL_Scancode scancode, const char *name)""" + + @staticmethod + def SDL_SetStringProperty(props: Any, name: Any, value: Any, /) -> bool: + """unsigned char SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value)""" + + @staticmethod + def SDL_SetSurfaceAlphaMod(surface: Any, alpha: Any, /) -> bool: + """unsigned char SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha)""" + + @staticmethod + def SDL_SetSurfaceBlendMode(surface: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode)""" + + @staticmethod + def SDL_SetSurfaceClipRect(surface: Any, rect: Any, /) -> bool: + """unsigned char SDL_SetSurfaceClipRect(SDL_Surface *surface, const SDL_Rect *rect)""" + + @staticmethod + def SDL_SetSurfaceColorKey(surface: Any, enabled: bool, key: Any, /) -> bool: + """unsigned char SDL_SetSurfaceColorKey(SDL_Surface *surface, unsigned char enabled, Uint32 key)""" + + @staticmethod + def SDL_SetSurfaceColorMod(surface: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b)""" + + @staticmethod + def SDL_SetSurfaceColorspace(surface: Any, colorspace: Any, /) -> bool: + """unsigned char SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace)""" + + @staticmethod + def SDL_SetSurfacePalette(surface: Any, palette: Any, /) -> bool: + """unsigned char SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette)""" + + @staticmethod + def SDL_SetSurfaceRLE(surface: Any, enabled: bool, /) -> bool: + """unsigned char SDL_SetSurfaceRLE(SDL_Surface *surface, unsigned char enabled)""" + + @staticmethod + def SDL_SetTLS(id: Any, value: Any, destructor: Any, /) -> bool: + """unsigned char SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor)""" + + @staticmethod + def SDL_SetTextInputArea(window: Any, rect: Any, cursor: int, /) -> bool: + """unsigned char SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor)""" + + @staticmethod + def SDL_SetTextureAlphaMod(texture: Any, alpha: Any, /) -> bool: + """unsigned char SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha)""" + + @staticmethod + def SDL_SetTextureAlphaModFloat(texture: Any, alpha: Any, /) -> bool: + """unsigned char SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha)""" + + @staticmethod + def SDL_SetTextureBlendMode(texture: Any, blendMode: Any, /) -> bool: + """unsigned char SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode)""" + + @staticmethod + def SDL_SetTextureColorMod(texture: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b)""" + + @staticmethod + def SDL_SetTextureColorModFloat(texture: Any, r: Any, g: Any, b: Any, /) -> bool: + """unsigned char SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b)""" + + @staticmethod + def SDL_SetTextureScaleMode(texture: Any, scaleMode: Any, /) -> bool: + """unsigned char SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode)""" + + @staticmethod + def SDL_SetTrayEntryCallback(entry: Any, callback: Any, userdata: Any, /) -> None: + """void SDL_SetTrayEntryCallback(SDL_TrayEntry *entry, SDL_TrayCallback callback, void *userdata)""" + + @staticmethod + def SDL_SetTrayEntryChecked(entry: Any, checked: bool, /) -> None: + """void SDL_SetTrayEntryChecked(SDL_TrayEntry *entry, unsigned char checked)""" + + @staticmethod + def SDL_SetTrayEntryEnabled(entry: Any, enabled: bool, /) -> None: + """void SDL_SetTrayEntryEnabled(SDL_TrayEntry *entry, unsigned char enabled)""" + + @staticmethod + def SDL_SetTrayEntryLabel(entry: Any, label: Any, /) -> None: + """void SDL_SetTrayEntryLabel(SDL_TrayEntry *entry, const char *label)""" + + @staticmethod + def SDL_SetTrayIcon(tray: Any, icon: Any, /) -> None: + """void SDL_SetTrayIcon(SDL_Tray *tray, SDL_Surface *icon)""" + + @staticmethod + def SDL_SetTrayTooltip(tray: Any, tooltip: Any, /) -> None: + """void SDL_SetTrayTooltip(SDL_Tray *tray, const char *tooltip)""" + + @staticmethod + def SDL_SetWindowAlwaysOnTop(window: Any, on_top: bool, /) -> bool: + """unsigned char SDL_SetWindowAlwaysOnTop(SDL_Window *window, unsigned char on_top)""" + + @staticmethod + def SDL_SetWindowAspectRatio(window: Any, min_aspect: Any, max_aspect: Any, /) -> bool: + """unsigned char SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect)""" + + @staticmethod + def SDL_SetWindowBordered(window: Any, bordered: bool, /) -> bool: + """unsigned char SDL_SetWindowBordered(SDL_Window *window, unsigned char bordered)""" + + @staticmethod + def SDL_SetWindowFocusable(window: Any, focusable: bool, /) -> bool: + """unsigned char SDL_SetWindowFocusable(SDL_Window *window, unsigned char focusable)""" + + @staticmethod + def SDL_SetWindowFullscreen(window: Any, fullscreen: bool, /) -> bool: + """unsigned char SDL_SetWindowFullscreen(SDL_Window *window, unsigned char fullscreen)""" + + @staticmethod + def SDL_SetWindowFullscreenMode(window: Any, mode: Any, /) -> bool: + """unsigned char SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode)""" + + @staticmethod + def SDL_SetWindowHitTest(window: Any, callback: Any, callback_data: Any, /) -> bool: + """unsigned char SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data)""" + + @staticmethod + def SDL_SetWindowIcon(window: Any, icon: Any, /) -> bool: + """unsigned char SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon)""" + + @staticmethod + def SDL_SetWindowKeyboardGrab(window: Any, grabbed: bool, /) -> bool: + """unsigned char SDL_SetWindowKeyboardGrab(SDL_Window *window, unsigned char grabbed)""" + + @staticmethod + def SDL_SetWindowMaximumSize(window: Any, max_w: int, max_h: int, /) -> bool: + """unsigned char SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h)""" + + @staticmethod + def SDL_SetWindowMinimumSize(window: Any, min_w: int, min_h: int, /) -> bool: + """unsigned char SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h)""" + + @staticmethod + def SDL_SetWindowModal(window: Any, modal: bool, /) -> bool: + """unsigned char SDL_SetWindowModal(SDL_Window *window, unsigned char modal)""" + + @staticmethod + def SDL_SetWindowMouseGrab(window: Any, grabbed: bool, /) -> bool: + """unsigned char SDL_SetWindowMouseGrab(SDL_Window *window, unsigned char grabbed)""" + + @staticmethod + def SDL_SetWindowMouseRect(window: Any, rect: Any, /) -> bool: + """unsigned char SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect)""" + + @staticmethod + def SDL_SetWindowOpacity(window: Any, opacity: Any, /) -> bool: + """unsigned char SDL_SetWindowOpacity(SDL_Window *window, float opacity)""" + + @staticmethod + def SDL_SetWindowParent(window: Any, parent: Any, /) -> bool: + """unsigned char SDL_SetWindowParent(SDL_Window *window, SDL_Window *parent)""" + + @staticmethod + def SDL_SetWindowPosition(window: Any, x: int, y: int, /) -> bool: + """unsigned char SDL_SetWindowPosition(SDL_Window *window, int x, int y)""" + + @staticmethod + def SDL_SetWindowRelativeMouseMode(window: Any, enabled: bool, /) -> bool: + """unsigned char SDL_SetWindowRelativeMouseMode(SDL_Window *window, unsigned char enabled)""" + + @staticmethod + def SDL_SetWindowResizable(window: Any, resizable: bool, /) -> bool: + """unsigned char SDL_SetWindowResizable(SDL_Window *window, unsigned char resizable)""" + + @staticmethod + def SDL_SetWindowShape(window: Any, shape: Any, /) -> bool: + """unsigned char SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape)""" + + @staticmethod + def SDL_SetWindowSize(window: Any, w: int, h: int, /) -> bool: + """unsigned char SDL_SetWindowSize(SDL_Window *window, int w, int h)""" + + @staticmethod + def SDL_SetWindowSurfaceVSync(window: Any, vsync: int, /) -> bool: + """unsigned char SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync)""" + + @staticmethod + def SDL_SetWindowTitle(window: Any, title: Any, /) -> bool: + """unsigned char SDL_SetWindowTitle(SDL_Window *window, const char *title)""" + + @staticmethod + def SDL_SetX11EventHook(callback: Any, userdata: Any, /) -> None: + """void SDL_SetX11EventHook(SDL_X11EventHook callback, void *userdata)""" + + @staticmethod + def SDL_ShouldInit(state: Any, /) -> bool: + """unsigned char SDL_ShouldInit(SDL_InitState *state)""" + + @staticmethod + def SDL_ShouldQuit(state: Any, /) -> bool: + """unsigned char SDL_ShouldQuit(SDL_InitState *state)""" + + @staticmethod + def SDL_ShowCursor() -> bool: + """unsigned char SDL_ShowCursor(void)""" + + @staticmethod + def SDL_ShowFileDialogWithProperties(type: Any, callback: Any, userdata: Any, props: Any, /) -> None: + """void SDL_ShowFileDialogWithProperties(SDL_FileDialogType type, SDL_DialogFileCallback callback, void *userdata, SDL_PropertiesID props)""" + + @staticmethod + def SDL_ShowMessageBox(messageboxdata: Any, buttonid: Any, /) -> bool: + """unsigned char SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)""" + + @staticmethod + def SDL_ShowOpenFileDialog( + callback: Any, + userdata: Any, + window: Any, + filters: Any, + nfilters: int, + default_location: Any, + allow_many: bool, + /, + ) -> None: + """void SDL_ShowOpenFileDialog(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const SDL_DialogFileFilter *filters, int nfilters, const char *default_location, unsigned char allow_many)""" + + @staticmethod + def SDL_ShowOpenFolderDialog( + callback: Any, userdata: Any, window: Any, default_location: Any, allow_many: bool, / + ) -> None: + """void SDL_ShowOpenFolderDialog(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const char *default_location, unsigned char allow_many)""" + + @staticmethod + def SDL_ShowSaveFileDialog( + callback: Any, userdata: Any, window: Any, filters: Any, nfilters: int, default_location: Any, / + ) -> None: + """void SDL_ShowSaveFileDialog(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const SDL_DialogFileFilter *filters, int nfilters, const char *default_location)""" + + @staticmethod + def SDL_ShowSimpleMessageBox(flags: Any, title: Any, message: Any, window: Any, /) -> bool: + """unsigned char SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window)""" + + @staticmethod + def SDL_ShowWindow(window: Any, /) -> bool: + """unsigned char SDL_ShowWindow(SDL_Window *window)""" + + @staticmethod + def SDL_ShowWindowSystemMenu(window: Any, x: int, y: int, /) -> bool: + """unsigned char SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y)""" + + @staticmethod + def SDL_SignalAsyncIOQueue(queue: Any, /) -> None: + """void SDL_SignalAsyncIOQueue(SDL_AsyncIOQueue *queue)""" + + @staticmethod + def SDL_SignalCondition(cond: Any, /) -> None: + """void SDL_SignalCondition(SDL_Condition *cond)""" + + @staticmethod + def SDL_SignalSemaphore(sem: Any, /) -> None: + """void SDL_SignalSemaphore(SDL_Semaphore *sem)""" + + @staticmethod + def SDL_StartTextInput(window: Any, /) -> bool: + """unsigned char SDL_StartTextInput(SDL_Window *window)""" + + @staticmethod + def SDL_StartTextInputWithProperties(window: Any, props: Any, /) -> bool: + """unsigned char SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props)""" + + @staticmethod + def SDL_StepBackUTF8(start: Any, pstr: Any, /) -> Any: + """Uint32 SDL_StepBackUTF8(const char *start, const char **pstr)""" + + @staticmethod + def SDL_StepUTF8(pstr: Any, pslen: Any, /) -> Any: + """Uint32 SDL_StepUTF8(const char **pstr, size_t *pslen)""" + + @staticmethod + def SDL_StopHapticEffect(haptic: Any, effect: int, /) -> bool: + """unsigned char SDL_StopHapticEffect(SDL_Haptic *haptic, int effect)""" + + @staticmethod + def SDL_StopHapticEffects(haptic: Any, /) -> bool: + """unsigned char SDL_StopHapticEffects(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_StopHapticRumble(haptic: Any, /) -> bool: + """unsigned char SDL_StopHapticRumble(SDL_Haptic *haptic)""" + + @staticmethod + def SDL_StopTextInput(window: Any, /) -> bool: + """unsigned char SDL_StopTextInput(SDL_Window *window)""" + + @staticmethod + def SDL_StorageReady(storage: Any, /) -> bool: + """unsigned char SDL_StorageReady(SDL_Storage *storage)""" + + @staticmethod + def SDL_StretchSurface(src: Any, srcrect: Any, dst: Any, dstrect: Any, scaleMode: Any, /) -> bool: + """unsigned char SDL_StretchSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode)""" + + @staticmethod + def SDL_StringToGUID(pchGUID: Any, /) -> Any: + """SDL_GUID SDL_StringToGUID(const char *pchGUID)""" + + @staticmethod + def SDL_SubmitGPUCommandBuffer(command_buffer: Any, /) -> bool: + """unsigned char SDL_SubmitGPUCommandBuffer(SDL_GPUCommandBuffer *command_buffer)""" + + @staticmethod + def SDL_SubmitGPUCommandBufferAndAcquireFence(command_buffer: Any, /) -> Any: + """SDL_GPUFence *SDL_SubmitGPUCommandBufferAndAcquireFence(SDL_GPUCommandBuffer *command_buffer)""" + + @staticmethod + def SDL_SurfaceHasAlternateImages(surface: Any, /) -> bool: + """unsigned char SDL_SurfaceHasAlternateImages(SDL_Surface *surface)""" + + @staticmethod + def SDL_SurfaceHasColorKey(surface: Any, /) -> bool: + """unsigned char SDL_SurfaceHasColorKey(SDL_Surface *surface)""" + + @staticmethod + def SDL_SurfaceHasRLE(surface: Any, /) -> bool: + """unsigned char SDL_SurfaceHasRLE(SDL_Surface *surface)""" + + @staticmethod + def SDL_SyncWindow(window: Any, /) -> bool: + """unsigned char SDL_SyncWindow(SDL_Window *window)""" + + @staticmethod + def SDL_TellIO(context: Any, /) -> Any: + """Sint64 SDL_TellIO(SDL_IOStream *context)""" + + @staticmethod + def SDL_TextInputActive(window: Any, /) -> bool: + """unsigned char SDL_TextInputActive(SDL_Window *window)""" + + @staticmethod + def SDL_TimeFromWindows(dwLowDateTime: Any, dwHighDateTime: Any, /) -> Any: + """SDL_Time SDL_TimeFromWindows(Uint32 dwLowDateTime, Uint32 dwHighDateTime)""" + + @staticmethod + def SDL_TimeToDateTime(ticks: Any, dt: Any, localTime: bool, /) -> bool: + """unsigned char SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, unsigned char localTime)""" + + @staticmethod + def SDL_TimeToWindows(ticks: Any, dwLowDateTime: Any, dwHighDateTime: Any, /) -> None: + """void SDL_TimeToWindows(SDL_Time ticks, Uint32 *dwLowDateTime, Uint32 *dwHighDateTime)""" + + @staticmethod + def SDL_TryLockMutex(mutex: Any, /) -> bool: + """unsigned char SDL_TryLockMutex(SDL_Mutex *mutex)""" + + @staticmethod + def SDL_TryLockRWLockForReading(rwlock: Any, /) -> bool: + """unsigned char SDL_TryLockRWLockForReading(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_TryLockRWLockForWriting(rwlock: Any, /) -> bool: + """unsigned char SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_TryLockSpinlock(lock: Any, /) -> bool: + """unsigned char SDL_TryLockSpinlock(SDL_SpinLock *lock)""" + + @staticmethod + def SDL_TryWaitSemaphore(sem: Any, /) -> bool: + """unsigned char SDL_TryWaitSemaphore(SDL_Semaphore *sem)""" + + @staticmethod + def SDL_UCS4ToUTF8(codepoint: Any, dst: Any, /) -> Any: + """char *SDL_UCS4ToUTF8(Uint32 codepoint, char *dst)""" + + @staticmethod + def SDL_UnbindAudioStream(stream: Any, /) -> None: + """void SDL_UnbindAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_UnbindAudioStreams(streams: Any, num_streams: int, /) -> None: + """void SDL_UnbindAudioStreams(SDL_AudioStream * const *streams, int num_streams)""" + + @staticmethod + def SDL_UnloadObject(handle: Any, /) -> None: + """void SDL_UnloadObject(SDL_SharedObject *handle)""" + + @staticmethod + def SDL_UnlockAudioStream(stream: Any, /) -> bool: + """unsigned char SDL_UnlockAudioStream(SDL_AudioStream *stream)""" + + @staticmethod + def SDL_UnlockJoysticks() -> None: + """void SDL_UnlockJoysticks(void)""" + + @staticmethod + def SDL_UnlockMutex(mutex: Any, /) -> None: + """void SDL_UnlockMutex(SDL_Mutex *mutex)""" + + @staticmethod + def SDL_UnlockProperties(props: Any, /) -> None: + """void SDL_UnlockProperties(SDL_PropertiesID props)""" + + @staticmethod + def SDL_UnlockRWLock(rwlock: Any, /) -> None: + """void SDL_UnlockRWLock(SDL_RWLock *rwlock)""" + + @staticmethod + def SDL_UnlockSpinlock(lock: Any, /) -> None: + """void SDL_UnlockSpinlock(SDL_SpinLock *lock)""" + + @staticmethod + def SDL_UnlockSurface(surface: Any, /) -> None: + """void SDL_UnlockSurface(SDL_Surface *surface)""" + + @staticmethod + def SDL_UnlockTexture(texture: Any, /) -> None: + """void SDL_UnlockTexture(SDL_Texture *texture)""" + + @staticmethod + def SDL_UnmapGPUTransferBuffer(device: Any, transfer_buffer: Any, /) -> None: + """void SDL_UnmapGPUTransferBuffer(SDL_GPUDevice *device, SDL_GPUTransferBuffer *transfer_buffer)""" + + @staticmethod + def SDL_UnsetEnvironmentVariable(env: Any, name: Any, /) -> bool: + """unsigned char SDL_UnsetEnvironmentVariable(SDL_Environment *env, const char *name)""" + + @staticmethod + def SDL_UpdateGamepads() -> None: + """void SDL_UpdateGamepads(void)""" + + @staticmethod + def SDL_UpdateHapticEffect(haptic: Any, effect: int, data: Any, /) -> bool: + """unsigned char SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data)""" + + @staticmethod + def SDL_UpdateJoysticks() -> None: + """void SDL_UpdateJoysticks(void)""" + + @staticmethod + def SDL_UpdateNVTexture(texture: Any, rect: Any, Yplane: Any, Ypitch: int, UVplane: Any, UVpitch: int, /) -> bool: + """unsigned char SDL_UpdateNVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *UVplane, int UVpitch)""" + + @staticmethod + def SDL_UpdateSensors() -> None: + """void SDL_UpdateSensors(void)""" + + @staticmethod + def SDL_UpdateTexture(texture: Any, rect: Any, pixels: Any, pitch: int, /) -> bool: + """unsigned char SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch)""" + + @staticmethod + def SDL_UpdateTrays() -> None: + """void SDL_UpdateTrays(void)""" + + @staticmethod + def SDL_UpdateWindowSurface(window: Any, /) -> bool: + """unsigned char SDL_UpdateWindowSurface(SDL_Window *window)""" + + @staticmethod + def SDL_UpdateWindowSurfaceRects(window: Any, rects: Any, numrects: int, /) -> bool: + """unsigned char SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects)""" + + @staticmethod + def SDL_UpdateYUVTexture( + texture: Any, rect: Any, Yplane: Any, Ypitch: int, Uplane: Any, Upitch: int, Vplane: Any, Vpitch: int, / + ) -> bool: + """unsigned char SDL_UpdateYUVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *Uplane, int Upitch, const Uint8 *Vplane, int Vpitch)""" + + @staticmethod + def SDL_UploadToGPUBuffer(copy_pass: Any, source: Any, destination: Any, cycle: bool, /) -> None: + """void SDL_UploadToGPUBuffer(SDL_GPUCopyPass *copy_pass, const SDL_GPUTransferBufferLocation *source, const SDL_GPUBufferRegion *destination, unsigned char cycle)""" + + @staticmethod + def SDL_UploadToGPUTexture(copy_pass: Any, source: Any, destination: Any, cycle: bool, /) -> None: + """void SDL_UploadToGPUTexture(SDL_GPUCopyPass *copy_pass, const SDL_GPUTextureTransferInfo *source, const SDL_GPUTextureRegion *destination, unsigned char cycle)""" + + @staticmethod + def SDL_WaitAndAcquireGPUSwapchainTexture( + command_buffer: Any, + window: Any, + swapchain_texture: Any, + swapchain_texture_width: Any, + swapchain_texture_height: Any, + /, + ) -> bool: + """unsigned char SDL_WaitAndAcquireGPUSwapchainTexture(SDL_GPUCommandBuffer *command_buffer, SDL_Window *window, SDL_GPUTexture **swapchain_texture, Uint32 *swapchain_texture_width, Uint32 *swapchain_texture_height)""" + + @staticmethod + def SDL_WaitAsyncIOResult(queue: Any, outcome: Any, timeoutMS: Any, /) -> bool: + """unsigned char SDL_WaitAsyncIOResult(SDL_AsyncIOQueue *queue, SDL_AsyncIOOutcome *outcome, Sint32 timeoutMS)""" + + @staticmethod + def SDL_WaitCondition(cond: Any, mutex: Any, /) -> None: + """void SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex)""" + + @staticmethod + def SDL_WaitConditionTimeout(cond: Any, mutex: Any, timeoutMS: Any, /) -> bool: + """unsigned char SDL_WaitConditionTimeout(SDL_Condition *cond, SDL_Mutex *mutex, Sint32 timeoutMS)""" + + @staticmethod + def SDL_WaitEvent(event: Any, /) -> bool: + """unsigned char SDL_WaitEvent(SDL_Event *event)""" + + @staticmethod + def SDL_WaitEventTimeout(event: Any, timeoutMS: Any, /) -> bool: + """unsigned char SDL_WaitEventTimeout(SDL_Event *event, Sint32 timeoutMS)""" + + @staticmethod + def SDL_WaitForGPUFences(device: Any, wait_all: bool, fences: Any, num_fences: Any, /) -> bool: + """unsigned char SDL_WaitForGPUFences(SDL_GPUDevice *device, unsigned char wait_all, SDL_GPUFence * const *fences, Uint32 num_fences)""" + + @staticmethod + def SDL_WaitForGPUIdle(device: Any, /) -> bool: + """unsigned char SDL_WaitForGPUIdle(SDL_GPUDevice *device)""" + + @staticmethod + def SDL_WaitForGPUSwapchain(device: Any, window: Any, /) -> bool: + """unsigned char SDL_WaitForGPUSwapchain(SDL_GPUDevice *device, SDL_Window *window)""" + + @staticmethod + def SDL_WaitProcess(process: Any, block: bool, exitcode: Any, /) -> bool: + """unsigned char SDL_WaitProcess(SDL_Process *process, unsigned char block, int *exitcode)""" + + @staticmethod + def SDL_WaitSemaphore(sem: Any, /) -> None: + """void SDL_WaitSemaphore(SDL_Semaphore *sem)""" + + @staticmethod + def SDL_WaitSemaphoreTimeout(sem: Any, timeoutMS: Any, /) -> bool: + """unsigned char SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS)""" + + @staticmethod + def SDL_WaitThread(thread: Any, status: Any, /) -> None: + """void SDL_WaitThread(SDL_Thread *thread, int *status)""" + + @staticmethod + def SDL_WarpMouseGlobal(x: Any, y: Any, /) -> bool: + """unsigned char SDL_WarpMouseGlobal(float x, float y)""" + + @staticmethod + def SDL_WarpMouseInWindow(window: Any, x: Any, y: Any, /) -> None: + """void SDL_WarpMouseInWindow(SDL_Window *window, float x, float y)""" + + @staticmethod + def SDL_WasInit(flags: Any, /) -> Any: + """SDL_InitFlags SDL_WasInit(SDL_InitFlags flags)""" + + @staticmethod + def SDL_WindowHasSurface(window: Any, /) -> bool: + """unsigned char SDL_WindowHasSurface(SDL_Window *window)""" + + @staticmethod + def SDL_WindowSupportsGPUPresentMode(device: Any, window: Any, present_mode: Any, /) -> bool: + """unsigned char SDL_WindowSupportsGPUPresentMode(SDL_GPUDevice *device, SDL_Window *window, SDL_GPUPresentMode present_mode)""" + + @staticmethod + def SDL_WindowSupportsGPUSwapchainComposition(device: Any, window: Any, swapchain_composition: Any, /) -> bool: + """unsigned char SDL_WindowSupportsGPUSwapchainComposition(SDL_GPUDevice *device, SDL_Window *window, SDL_GPUSwapchainComposition swapchain_composition)""" + + @staticmethod + def SDL_WriteAsyncIO(asyncio: Any, ptr: Any, offset: Any, size: Any, queue: Any, userdata: Any, /) -> bool: + """unsigned char SDL_WriteAsyncIO(SDL_AsyncIO *asyncio, void *ptr, Uint64 offset, Uint64 size, SDL_AsyncIOQueue *queue, void *userdata)""" + + @staticmethod + def SDL_WriteIO(context: Any, ptr: Any, size: int, /) -> int: + """size_t SDL_WriteIO(SDL_IOStream *context, const void *ptr, size_t size)""" + + @staticmethod + def SDL_WriteS16BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS16BE(SDL_IOStream *dst, Sint16 value)""" + + @staticmethod + def SDL_WriteS16LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS16LE(SDL_IOStream *dst, Sint16 value)""" + + @staticmethod + def SDL_WriteS32BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS32BE(SDL_IOStream *dst, Sint32 value)""" + + @staticmethod + def SDL_WriteS32LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS32LE(SDL_IOStream *dst, Sint32 value)""" + + @staticmethod + def SDL_WriteS64BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS64BE(SDL_IOStream *dst, Sint64 value)""" + + @staticmethod + def SDL_WriteS64LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS64LE(SDL_IOStream *dst, Sint64 value)""" + + @staticmethod + def SDL_WriteS8(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteS8(SDL_IOStream *dst, Sint8 value)""" + + @staticmethod + def SDL_WriteStorageFile(storage: Any, path: Any, source: Any, length: Any, /) -> bool: + """unsigned char SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length)""" + + @staticmethod + def SDL_WriteSurfacePixel(surface: Any, x: int, y: int, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a)""" + + @staticmethod + def SDL_WriteSurfacePixelFloat(surface: Any, x: int, y: int, r: Any, g: Any, b: Any, a: Any, /) -> bool: + """unsigned char SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a)""" + + @staticmethod + def SDL_WriteU16BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU16BE(SDL_IOStream *dst, Uint16 value)""" + + @staticmethod + def SDL_WriteU16LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU16LE(SDL_IOStream *dst, Uint16 value)""" + + @staticmethod + def SDL_WriteU32BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU32BE(SDL_IOStream *dst, Uint32 value)""" + + @staticmethod + def SDL_WriteU32LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU32LE(SDL_IOStream *dst, Uint32 value)""" + + @staticmethod + def SDL_WriteU64BE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU64BE(SDL_IOStream *dst, Uint64 value)""" + + @staticmethod + def SDL_WriteU64LE(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU64LE(SDL_IOStream *dst, Uint64 value)""" + + @staticmethod + def SDL_WriteU8(dst: Any, value: Any, /) -> bool: + """unsigned char SDL_WriteU8(SDL_IOStream *dst, Uint8 value)""" + + @staticmethod + def SDL_abs(x: int, /) -> int: + """int SDL_abs(int x)""" + + @staticmethod + def SDL_acos(x: Any, /) -> Any: + """double SDL_acos(double x)""" + + @staticmethod + def SDL_acosf(x: Any, /) -> Any: + """float SDL_acosf(float x)""" + + @staticmethod + def SDL_aligned_alloc(alignment: int, size: int, /) -> Any: + """void *SDL_aligned_alloc(size_t alignment, size_t size)""" + + @staticmethod + def SDL_aligned_free(mem: Any, /) -> None: + """void SDL_aligned_free(void *mem)""" + + @staticmethod + def SDL_asin(x: Any, /) -> Any: + """double SDL_asin(double x)""" + + @staticmethod + def SDL_asinf(x: Any, /) -> Any: + """float SDL_asinf(float x)""" + + @staticmethod + def SDL_asprintf(strp: Any, fmt: Any, /, *__args: Any) -> int: + """int SDL_asprintf(char **strp, const char *fmt, ...)""" + + @staticmethod + def SDL_atan(x: Any, /) -> Any: + """double SDL_atan(double x)""" + + @staticmethod + def SDL_atan2(y: Any, x: Any, /) -> Any: + """double SDL_atan2(double y, double x)""" + + @staticmethod + def SDL_atan2f(y: Any, x: Any, /) -> Any: + """float SDL_atan2f(float y, float x)""" + + @staticmethod + def SDL_atanf(x: Any, /) -> Any: + """float SDL_atanf(float x)""" + + @staticmethod + def SDL_atof(str: Any, /) -> Any: + """double SDL_atof(const char *str)""" + + @staticmethod + def SDL_atoi(str: Any, /) -> int: + """int SDL_atoi(const char *str)""" + + @staticmethod + def SDL_bsearch(key: Any, base: Any, nmemb: int, size: int, compare: Any, /) -> Any: + """void *SDL_bsearch(const void *key, const void *base, size_t nmemb, size_t size, SDL_CompareCallback compare)""" + + @staticmethod + def SDL_bsearch_r(key: Any, base: Any, nmemb: int, size: int, compare: Any, userdata: Any, /) -> Any: + """void *SDL_bsearch_r(const void *key, const void *base, size_t nmemb, size_t size, SDL_CompareCallback_r compare, void *userdata)""" + + @staticmethod + def SDL_calloc(nmemb: int, size: int, /) -> Any: + """void *SDL_calloc(size_t nmemb, size_t size)""" + + @staticmethod + def SDL_ceil(x: Any, /) -> Any: + """double SDL_ceil(double x)""" + + @staticmethod + def SDL_ceilf(x: Any, /) -> Any: + """float SDL_ceilf(float x)""" + + @staticmethod + def SDL_copysign(x: Any, y: Any, /) -> Any: + """double SDL_copysign(double x, double y)""" + + @staticmethod + def SDL_copysignf(x: Any, y: Any, /) -> Any: + """float SDL_copysignf(float x, float y)""" + + @staticmethod + def SDL_cos(x: Any, /) -> Any: + """double SDL_cos(double x)""" + + @staticmethod + def SDL_cosf(x: Any, /) -> Any: + """float SDL_cosf(float x)""" + + @staticmethod + def SDL_crc16(crc: Any, data: Any, len: int, /) -> Any: + """Uint16 SDL_crc16(Uint16 crc, const void *data, size_t len)""" + + @staticmethod + def SDL_crc32(crc: Any, data: Any, len: int, /) -> Any: + """Uint32 SDL_crc32(Uint32 crc, const void *data, size_t len)""" + + @staticmethod + def SDL_exp(x: Any, /) -> Any: + """double SDL_exp(double x)""" + + @staticmethod + def SDL_expf(x: Any, /) -> Any: + """float SDL_expf(float x)""" + + @staticmethod + def SDL_fabs(x: Any, /) -> Any: + """double SDL_fabs(double x)""" + + @staticmethod + def SDL_fabsf(x: Any, /) -> Any: + """float SDL_fabsf(float x)""" + + @staticmethod + def SDL_floor(x: Any, /) -> Any: + """double SDL_floor(double x)""" + + @staticmethod + def SDL_floorf(x: Any, /) -> Any: + """float SDL_floorf(float x)""" + + @staticmethod + def SDL_fmod(x: Any, y: Any, /) -> Any: + """double SDL_fmod(double x, double y)""" + + @staticmethod + def SDL_fmodf(x: Any, y: Any, /) -> Any: + """float SDL_fmodf(float x, float y)""" + + @staticmethod + def SDL_free(mem: Any, /) -> None: + """void SDL_free(void *mem)""" + + @staticmethod + def SDL_getenv(name: Any, /) -> Any: + """const char *SDL_getenv(const char *name)""" + + @staticmethod + def SDL_getenv_unsafe(name: Any, /) -> Any: + """const char *SDL_getenv_unsafe(const char *name)""" + + @staticmethod + def SDL_hid_ble_scan(active: bool, /) -> None: + """void SDL_hid_ble_scan(unsigned char active)""" + + @staticmethod + def SDL_hid_close(dev: Any, /) -> int: + """int SDL_hid_close(SDL_hid_device *dev)""" + + @staticmethod + def SDL_hid_device_change_count() -> Any: + """Uint32 SDL_hid_device_change_count(void)""" + + @staticmethod + def SDL_hid_enumerate(vendor_id: Any, product_id: Any, /) -> Any: + """SDL_hid_device_info *SDL_hid_enumerate(unsigned short vendor_id, unsigned short product_id)""" + + @staticmethod + def SDL_hid_exit() -> int: + """int SDL_hid_exit(void)""" + + @staticmethod + def SDL_hid_free_enumeration(devs: Any, /) -> None: + """void SDL_hid_free_enumeration(SDL_hid_device_info *devs)""" + + @staticmethod + def SDL_hid_get_device_info(dev: Any, /) -> Any: + """SDL_hid_device_info *SDL_hid_get_device_info(SDL_hid_device *dev)""" + + @staticmethod + def SDL_hid_get_feature_report(dev: Any, data: Any, length: int, /) -> int: + """int SDL_hid_get_feature_report(SDL_hid_device *dev, unsigned char *data, size_t length)""" + + @staticmethod + def SDL_hid_get_indexed_string(dev: Any, string_index: int, string: Any, maxlen: int, /) -> int: + """int SDL_hid_get_indexed_string(SDL_hid_device *dev, int string_index, wchar_t *string, size_t maxlen)""" + + @staticmethod + def SDL_hid_get_input_report(dev: Any, data: Any, length: int, /) -> int: + """int SDL_hid_get_input_report(SDL_hid_device *dev, unsigned char *data, size_t length)""" + + @staticmethod + def SDL_hid_get_manufacturer_string(dev: Any, string: Any, maxlen: int, /) -> int: + """int SDL_hid_get_manufacturer_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen)""" + + @staticmethod + def SDL_hid_get_product_string(dev: Any, string: Any, maxlen: int, /) -> int: + """int SDL_hid_get_product_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen)""" + + @staticmethod + def SDL_hid_get_report_descriptor(dev: Any, buf: Any, buf_size: int, /) -> int: + """int SDL_hid_get_report_descriptor(SDL_hid_device *dev, unsigned char *buf, size_t buf_size)""" + + @staticmethod + def SDL_hid_get_serial_number_string(dev: Any, string: Any, maxlen: int, /) -> int: + """int SDL_hid_get_serial_number_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen)""" + + @staticmethod + def SDL_hid_init() -> int: + """int SDL_hid_init(void)""" + + @staticmethod + def SDL_hid_open(vendor_id: Any, product_id: Any, serial_number: Any, /) -> Any: + """SDL_hid_device *SDL_hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number)""" + + @staticmethod + def SDL_hid_open_path(path: Any, /) -> Any: + """SDL_hid_device *SDL_hid_open_path(const char *path)""" + + @staticmethod + def SDL_hid_read(dev: Any, data: Any, length: int, /) -> int: + """int SDL_hid_read(SDL_hid_device *dev, unsigned char *data, size_t length)""" + + @staticmethod + def SDL_hid_read_timeout(dev: Any, data: Any, length: int, milliseconds: int, /) -> int: + """int SDL_hid_read_timeout(SDL_hid_device *dev, unsigned char *data, size_t length, int milliseconds)""" + + @staticmethod + def SDL_hid_send_feature_report(dev: Any, data: Any, length: int, /) -> int: + """int SDL_hid_send_feature_report(SDL_hid_device *dev, const unsigned char *data, size_t length)""" + + @staticmethod + def SDL_hid_set_nonblocking(dev: Any, nonblock: int, /) -> int: + """int SDL_hid_set_nonblocking(SDL_hid_device *dev, int nonblock)""" + + @staticmethod + def SDL_hid_write(dev: Any, data: Any, length: int, /) -> int: + """int SDL_hid_write(SDL_hid_device *dev, const unsigned char *data, size_t length)""" + + @staticmethod + def SDL_iconv(cd: Any, inbuf: Any, inbytesleft: Any, outbuf: Any, outbytesleft: Any, /) -> int: + """size_t SDL_iconv(SDL_iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)""" + + @staticmethod + def SDL_iconv_close(cd: Any, /) -> int: + """int SDL_iconv_close(SDL_iconv_t cd)""" + + @staticmethod + def SDL_iconv_open(tocode: Any, fromcode: Any, /) -> Any: + """SDL_iconv_t SDL_iconv_open(const char *tocode, const char *fromcode)""" + + @staticmethod + def SDL_iconv_string(tocode: Any, fromcode: Any, inbuf: Any, inbytesleft: int, /) -> Any: + """char *SDL_iconv_string(const char *tocode, const char *fromcode, const char *inbuf, size_t inbytesleft)""" + + @staticmethod + def SDL_isalnum(x: int, /) -> int: + """int SDL_isalnum(int x)""" + + @staticmethod + def SDL_isalpha(x: int, /) -> int: + """int SDL_isalpha(int x)""" + + @staticmethod + def SDL_isblank(x: int, /) -> int: + """int SDL_isblank(int x)""" + + @staticmethod + def SDL_iscntrl(x: int, /) -> int: + """int SDL_iscntrl(int x)""" + + @staticmethod + def SDL_isdigit(x: int, /) -> int: + """int SDL_isdigit(int x)""" + + @staticmethod + def SDL_isgraph(x: int, /) -> int: + """int SDL_isgraph(int x)""" + + @staticmethod + def SDL_isinf(x: Any, /) -> int: + """int SDL_isinf(double x)""" + + @staticmethod + def SDL_isinff(x: Any, /) -> int: + """int SDL_isinff(float x)""" + + @staticmethod + def SDL_islower(x: int, /) -> int: + """int SDL_islower(int x)""" + + @staticmethod + def SDL_isnan(x: Any, /) -> int: + """int SDL_isnan(double x)""" + + @staticmethod + def SDL_isnanf(x: Any, /) -> int: + """int SDL_isnanf(float x)""" + + @staticmethod + def SDL_isprint(x: int, /) -> int: + """int SDL_isprint(int x)""" + + @staticmethod + def SDL_ispunct(x: int, /) -> int: + """int SDL_ispunct(int x)""" + + @staticmethod + def SDL_isspace(x: int, /) -> int: + """int SDL_isspace(int x)""" + + @staticmethod + def SDL_isupper(x: int, /) -> int: + """int SDL_isupper(int x)""" + + @staticmethod + def SDL_isxdigit(x: int, /) -> int: + """int SDL_isxdigit(int x)""" + + @staticmethod + def SDL_itoa(value: int, str: Any, radix: int, /) -> Any: + """char *SDL_itoa(int value, char *str, int radix)""" + + @staticmethod + def SDL_lltoa(value: Any, str: Any, radix: int, /) -> Any: + """char *SDL_lltoa(long long value, char *str, int radix)""" + + @staticmethod + def SDL_log(x: Any, /) -> Any: + """double SDL_log(double x)""" + + @staticmethod + def SDL_log10(x: Any, /) -> Any: + """double SDL_log10(double x)""" + + @staticmethod + def SDL_log10f(x: Any, /) -> Any: + """float SDL_log10f(float x)""" + + @staticmethod + def SDL_logf(x: Any, /) -> Any: + """float SDL_logf(float x)""" + + @staticmethod + def SDL_lround(x: Any, /) -> Any: + """long SDL_lround(double x)""" + + @staticmethod + def SDL_lroundf(x: Any, /) -> Any: + """long SDL_lroundf(float x)""" + + @staticmethod + def SDL_ltoa(value: Any, str: Any, radix: int, /) -> Any: + """char *SDL_ltoa(long value, char *str, int radix)""" + + @staticmethod + def SDL_malloc(size: int, /) -> Any: + """void *SDL_malloc(size_t size)""" + + @staticmethod + def SDL_memcmp(s1: Any, s2: Any, len: int, /) -> int: + """int SDL_memcmp(const void *s1, const void *s2, size_t len)""" + + @staticmethod + def SDL_memcpy(dst: Any, src: Any, len: int, /) -> Any: + """void *SDL_memcpy(void *dst, const void *src, size_t len)""" + + @staticmethod + def SDL_memmove(dst: Any, src: Any, len: int, /) -> Any: + """void *SDL_memmove(void *dst, const void *src, size_t len)""" + + @staticmethod + def SDL_memset(dst: Any, c: int, len: int, /) -> Any: + """void *SDL_memset(void *dst, int c, size_t len)""" + + @staticmethod + def SDL_memset4(dst: Any, val: Any, dwords: int, /) -> Any: + """void *SDL_memset4(void *dst, Uint32 val, size_t dwords)""" + + @staticmethod + def SDL_modf(x: Any, y: Any, /) -> Any: + """double SDL_modf(double x, double *y)""" + + @staticmethod + def SDL_modff(x: Any, y: Any, /) -> Any: + """float SDL_modff(float x, float *y)""" + + @staticmethod + def SDL_murmur3_32(data: Any, len: int, seed: Any, /) -> Any: + """Uint32 SDL_murmur3_32(const void *data, size_t len, Uint32 seed)""" + + @staticmethod + def SDL_pow(x: Any, y: Any, /) -> Any: + """double SDL_pow(double x, double y)""" + + @staticmethod + def SDL_powf(x: Any, y: Any, /) -> Any: + """float SDL_powf(float x, float y)""" + + @staticmethod + def SDL_qsort(base: Any, nmemb: int, size: int, compare: Any, /) -> None: + """void SDL_qsort(void *base, size_t nmemb, size_t size, SDL_CompareCallback compare)""" + + @staticmethod + def SDL_qsort_r(base: Any, nmemb: int, size: int, compare: Any, userdata: Any, /) -> None: + """void SDL_qsort_r(void *base, size_t nmemb, size_t size, SDL_CompareCallback_r compare, void *userdata)""" + + @staticmethod + def SDL_rand(n: Any, /) -> Any: + """Sint32 SDL_rand(Sint32 n)""" + + @staticmethod + def SDL_rand_bits() -> Any: + """Uint32 SDL_rand_bits(void)""" + + @staticmethod + def SDL_rand_bits_r(state: Any, /) -> Any: + """Uint32 SDL_rand_bits_r(Uint64 *state)""" + + @staticmethod + def SDL_rand_r(state: Any, n: Any, /) -> Any: + """Sint32 SDL_rand_r(Uint64 *state, Sint32 n)""" + + @staticmethod + def SDL_randf() -> Any: + """float SDL_randf(void)""" + + @staticmethod + def SDL_randf_r(state: Any, /) -> Any: + """float SDL_randf_r(Uint64 *state)""" + + @staticmethod + def SDL_realloc(mem: Any, size: int, /) -> Any: + """void *SDL_realloc(void *mem, size_t size)""" + + @staticmethod + def SDL_round(x: Any, /) -> Any: + """double SDL_round(double x)""" + + @staticmethod + def SDL_roundf(x: Any, /) -> Any: + """float SDL_roundf(float x)""" + + @staticmethod + def SDL_scalbn(x: Any, n: int, /) -> Any: + """double SDL_scalbn(double x, int n)""" + + @staticmethod + def SDL_scalbnf(x: Any, n: int, /) -> Any: + """float SDL_scalbnf(float x, int n)""" + + @staticmethod + def SDL_setenv_unsafe(name: Any, value: Any, overwrite: int, /) -> int: + """int SDL_setenv_unsafe(const char *name, const char *value, int overwrite)""" + + @staticmethod + def SDL_sin(x: Any, /) -> Any: + """double SDL_sin(double x)""" + + @staticmethod + def SDL_sinf(x: Any, /) -> Any: + """float SDL_sinf(float x)""" + + @staticmethod + def SDL_snprintf(text: Any, maxlen: int, fmt: Any, /, *__args: Any) -> int: + """int SDL_snprintf(char *text, size_t maxlen, const char *fmt, ...)""" + + @staticmethod + def SDL_sqrt(x: Any, /) -> Any: + """double SDL_sqrt(double x)""" + + @staticmethod + def SDL_sqrtf(x: Any, /) -> Any: + """float SDL_sqrtf(float x)""" + + @staticmethod + def SDL_srand(seed: Any, /) -> None: + """void SDL_srand(Uint64 seed)""" + + @staticmethod + def SDL_sscanf(text: Any, fmt: Any, /, *__args: Any) -> int: + """int SDL_sscanf(const char *text, const char *fmt, ...)""" + + @staticmethod + def SDL_strcasecmp(str1: Any, str2: Any, /) -> int: + """int SDL_strcasecmp(const char *str1, const char *str2)""" + + @staticmethod + def SDL_strcasestr(haystack: Any, needle: Any, /) -> Any: + """char *SDL_strcasestr(const char *haystack, const char *needle)""" + + @staticmethod + def SDL_strchr(str: Any, c: int, /) -> Any: + """char *SDL_strchr(const char *str, int c)""" + + @staticmethod + def SDL_strcmp(str1: Any, str2: Any, /) -> int: + """int SDL_strcmp(const char *str1, const char *str2)""" + + @staticmethod + def SDL_strdup(str: Any, /) -> Any: + """char *SDL_strdup(const char *str)""" + + @staticmethod + def SDL_strlcat(dst: Any, src: Any, maxlen: int, /) -> int: + """size_t SDL_strlcat(char *dst, const char *src, size_t maxlen)""" + + @staticmethod + def SDL_strlcpy(dst: Any, src: Any, maxlen: int, /) -> int: + """size_t SDL_strlcpy(char *dst, const char *src, size_t maxlen)""" + + @staticmethod + def SDL_strlen(str: Any, /) -> int: + """size_t SDL_strlen(const char *str)""" + + @staticmethod + def SDL_strlwr(str: Any, /) -> Any: + """char *SDL_strlwr(char *str)""" + + @staticmethod + def SDL_strncasecmp(str1: Any, str2: Any, maxlen: int, /) -> int: + """int SDL_strncasecmp(const char *str1, const char *str2, size_t maxlen)""" + + @staticmethod + def SDL_strncmp(str1: Any, str2: Any, maxlen: int, /) -> int: + """int SDL_strncmp(const char *str1, const char *str2, size_t maxlen)""" + + @staticmethod + def SDL_strndup(str: Any, maxlen: int, /) -> Any: + """char *SDL_strndup(const char *str, size_t maxlen)""" + + @staticmethod + def SDL_strnlen(str: Any, maxlen: int, /) -> int: + """size_t SDL_strnlen(const char *str, size_t maxlen)""" + + @staticmethod + def SDL_strnstr(haystack: Any, needle: Any, maxlen: int, /) -> Any: + """char *SDL_strnstr(const char *haystack, const char *needle, size_t maxlen)""" + + @staticmethod + def SDL_strpbrk(str: Any, breakset: Any, /) -> Any: + """char *SDL_strpbrk(const char *str, const char *breakset)""" + + @staticmethod + def SDL_strrchr(str: Any, c: int, /) -> Any: + """char *SDL_strrchr(const char *str, int c)""" + + @staticmethod + def SDL_strrev(str: Any, /) -> Any: + """char *SDL_strrev(char *str)""" + + @staticmethod + def SDL_strstr(haystack: Any, needle: Any, /) -> Any: + """char *SDL_strstr(const char *haystack, const char *needle)""" + + @staticmethod + def SDL_strtod(str: Any, endp: Any, /) -> Any: + """double SDL_strtod(const char *str, char **endp)""" + + @staticmethod + def SDL_strtok_r(str: Any, delim: Any, saveptr: Any, /) -> Any: + """char *SDL_strtok_r(char *str, const char *delim, char **saveptr)""" + + @staticmethod + def SDL_strtol(str: Any, endp: Any, base: int, /) -> Any: + """long SDL_strtol(const char *str, char **endp, int base)""" + + @staticmethod + def SDL_strtoll(str: Any, endp: Any, base: int, /) -> Any: + """long long SDL_strtoll(const char *str, char **endp, int base)""" + + @staticmethod + def SDL_strtoul(str: Any, endp: Any, base: int, /) -> Any: + """unsigned long SDL_strtoul(const char *str, char **endp, int base)""" + + @staticmethod + def SDL_strtoull(str: Any, endp: Any, base: int, /) -> Any: + """unsigned long long SDL_strtoull(const char *str, char **endp, int base)""" + + @staticmethod + def SDL_strupr(str: Any, /) -> Any: + """char *SDL_strupr(char *str)""" + + @staticmethod + def SDL_swprintf(text: Any, maxlen: int, fmt: Any, /, *__args: Any) -> int: + """int SDL_swprintf(wchar_t *text, size_t maxlen, const wchar_t *fmt, ...)""" + + @staticmethod + def SDL_tan(x: Any, /) -> Any: + """double SDL_tan(double x)""" + + @staticmethod + def SDL_tanf(x: Any, /) -> Any: + """float SDL_tanf(float x)""" + + @staticmethod + def SDL_tolower(x: int, /) -> int: + """int SDL_tolower(int x)""" + + @staticmethod + def SDL_toupper(x: int, /) -> int: + """int SDL_toupper(int x)""" + + @staticmethod + def SDL_trunc(x: Any, /) -> Any: + """double SDL_trunc(double x)""" + + @staticmethod + def SDL_truncf(x: Any, /) -> Any: + """float SDL_truncf(float x)""" + + @staticmethod + def SDL_uitoa(value: int, str: Any, radix: int, /) -> Any: + """char *SDL_uitoa(unsigned int value, char *str, int radix)""" + + @staticmethod + def SDL_ulltoa(value: Any, str: Any, radix: int, /) -> Any: + """char *SDL_ulltoa(unsigned long long value, char *str, int radix)""" + + @staticmethod + def SDL_ultoa(value: Any, str: Any, radix: int, /) -> Any: + """char *SDL_ultoa(unsigned long value, char *str, int radix)""" + + @staticmethod + def SDL_unsetenv_unsafe(name: Any, /) -> int: + """int SDL_unsetenv_unsafe(const char *name)""" + + @staticmethod + def SDL_utf8strlcpy(dst: Any, src: Any, dst_bytes: int, /) -> int: + """size_t SDL_utf8strlcpy(char *dst, const char *src, size_t dst_bytes)""" + + @staticmethod + def SDL_utf8strlen(str: Any, /) -> int: + """size_t SDL_utf8strlen(const char *str)""" + + @staticmethod + def SDL_utf8strnlen(str: Any, bytes: int, /) -> int: + """size_t SDL_utf8strnlen(const char *str, size_t bytes)""" + + @staticmethod + def SDL_wcscasecmp(str1: Any, str2: Any, /) -> int: + """int SDL_wcscasecmp(const wchar_t *str1, const wchar_t *str2)""" + + @staticmethod + def SDL_wcscmp(str1: Any, str2: Any, /) -> int: + """int SDL_wcscmp(const wchar_t *str1, const wchar_t *str2)""" + + @staticmethod + def SDL_wcsdup(wstr: Any, /) -> Any: + """wchar_t *SDL_wcsdup(const wchar_t *wstr)""" + + @staticmethod + def SDL_wcslcat(dst: Any, src: Any, maxlen: int, /) -> int: + """size_t SDL_wcslcat(wchar_t *dst, const wchar_t *src, size_t maxlen)""" + + @staticmethod + def SDL_wcslcpy(dst: Any, src: Any, maxlen: int, /) -> int: + """size_t SDL_wcslcpy(wchar_t *dst, const wchar_t *src, size_t maxlen)""" + + @staticmethod + def SDL_wcslen(wstr: Any, /) -> int: + """size_t SDL_wcslen(const wchar_t *wstr)""" + + @staticmethod + def SDL_wcsncasecmp(str1: Any, str2: Any, maxlen: int, /) -> int: + """int SDL_wcsncasecmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen)""" + + @staticmethod + def SDL_wcsncmp(str1: Any, str2: Any, maxlen: int, /) -> int: + """int SDL_wcsncmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen)""" + + @staticmethod + def SDL_wcsnlen(wstr: Any, maxlen: int, /) -> int: + """size_t SDL_wcsnlen(const wchar_t *wstr, size_t maxlen)""" + + @staticmethod + def SDL_wcsnstr(haystack: Any, needle: Any, maxlen: int, /) -> Any: + """wchar_t *SDL_wcsnstr(const wchar_t *haystack, const wchar_t *needle, size_t maxlen)""" + + @staticmethod + def SDL_wcsstr(haystack: Any, needle: Any, /) -> Any: + """wchar_t *SDL_wcsstr(const wchar_t *haystack, const wchar_t *needle)""" + + @staticmethod + def SDL_wcstol(str: Any, endp: Any, base: int, /) -> Any: + """long SDL_wcstol(const wchar_t *str, wchar_t **endp, int base)""" + + @staticmethod + def TCOD_bsp_contains(node: Any, x: int, y: int, /) -> bool: + """bool TCOD_bsp_contains(TCOD_bsp_t *node, int x, int y)""" + + @staticmethod + def TCOD_bsp_delete(node: Any, /) -> None: + """void TCOD_bsp_delete(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_father(node: Any, /) -> Any: + """TCOD_bsp_t *TCOD_bsp_father(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_find_node(node: Any, x: int, y: int, /) -> Any: + """TCOD_bsp_t *TCOD_bsp_find_node(TCOD_bsp_t *node, int x, int y)""" + + @staticmethod + def TCOD_bsp_is_leaf(node: Any, /) -> bool: + """bool TCOD_bsp_is_leaf(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_left(node: Any, /) -> Any: + """TCOD_bsp_t *TCOD_bsp_left(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_new() -> Any: + """TCOD_bsp_t *TCOD_bsp_new(void)""" + + @staticmethod + def TCOD_bsp_new_with_size(x: int, y: int, w: int, h: int, /) -> Any: + """TCOD_bsp_t *TCOD_bsp_new_with_size(int x, int y, int w, int h)""" + + @staticmethod + def TCOD_bsp_remove_sons(node: Any, /) -> None: + """void TCOD_bsp_remove_sons(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_resize(node: Any, x: int, y: int, w: int, h: int, /) -> None: + """void TCOD_bsp_resize(TCOD_bsp_t *node, int x, int y, int w, int h)""" + + @staticmethod + def TCOD_bsp_right(node: Any, /) -> Any: + """TCOD_bsp_t *TCOD_bsp_right(TCOD_bsp_t *node)""" + + @staticmethod + def TCOD_bsp_split_once(node: Any, horizontal: bool, position: int, /) -> None: + """void TCOD_bsp_split_once(TCOD_bsp_t *node, bool horizontal, int position)""" + + @staticmethod + def TCOD_bsp_split_recursive( + node: Any, randomizer: Any, nb: int, minHSize: int, minVSize: int, maxHRatio: Any, maxVRatio: Any, / + ) -> None: + """void TCOD_bsp_split_recursive(TCOD_bsp_t *node, TCOD_Random *randomizer, int nb, int minHSize, int minVSize, float maxHRatio, float maxVRatio)""" + + @staticmethod + def TCOD_bsp_traverse_in_order(node: Any, listener: Any, userData: Any, /) -> bool: + """bool TCOD_bsp_traverse_in_order(TCOD_bsp_t *node, TCOD_bsp_callback_t listener, void *userData)""" + + @staticmethod + def TCOD_bsp_traverse_inverted_level_order(node: Any, listener: Any, userData: Any, /) -> bool: + """bool TCOD_bsp_traverse_inverted_level_order(TCOD_bsp_t *node, TCOD_bsp_callback_t listener, void *userData)""" + + @staticmethod + def TCOD_bsp_traverse_level_order(node: Any, listener: Any, userData: Any, /) -> bool: + """bool TCOD_bsp_traverse_level_order(TCOD_bsp_t *node, TCOD_bsp_callback_t listener, void *userData)""" + + @staticmethod + def TCOD_bsp_traverse_post_order(node: Any, listener: Any, userData: Any, /) -> bool: + """bool TCOD_bsp_traverse_post_order(TCOD_bsp_t *node, TCOD_bsp_callback_t listener, void *userData)""" + + @staticmethod + def TCOD_bsp_traverse_pre_order(node: Any, listener: Any, userData: Any, /) -> bool: + """bool TCOD_bsp_traverse_pre_order(TCOD_bsp_t *node, TCOD_bsp_callback_t listener, void *userData)""" + + @staticmethod + def TCOD_clear_error() -> None: + """void TCOD_clear_error(void)""" + + @staticmethod + def TCOD_close_library(arg0: Any, /) -> None: + """void TCOD_close_library(TCOD_library_t)""" + + @staticmethod + def TCOD_color_HSV(hue: Any, saturation: Any, value: Any, /) -> Any: + """TCOD_color_t TCOD_color_HSV(float hue, float saturation, float value)""" + + @staticmethod + def TCOD_color_RGB(r: Any, g: Any, b: Any, /) -> Any: + """TCOD_color_t TCOD_color_RGB(uint8_t r, uint8_t g, uint8_t b)""" + + @staticmethod + def TCOD_color_add(c1: Any, c2: Any, /) -> Any: + """TCOD_color_t TCOD_color_add(TCOD_color_t c1, TCOD_color_t c2)""" + + @staticmethod + def TCOD_color_add_wrapper(c1: Any, c2: Any, /) -> Any: + """colornum_t TCOD_color_add_wrapper(colornum_t c1, colornum_t c2)""" + + @staticmethod + def TCOD_color_alpha_blend(dst: Any, src: Any, /) -> None: + """void TCOD_color_alpha_blend(TCOD_ColorRGBA *dst, const TCOD_ColorRGBA *src)""" + + @staticmethod + def TCOD_color_equals(c1: Any, c2: Any, /) -> bool: + """bool TCOD_color_equals(TCOD_color_t c1, TCOD_color_t c2)""" + + @staticmethod + def TCOD_color_equals_wrapper(c1: Any, c2: Any, /) -> bool: + """bool TCOD_color_equals_wrapper(colornum_t c1, colornum_t c2)""" + + @staticmethod + def TCOD_color_gen_map(map: Any, nb_key: int, key_color: Any, key_index: Any, /) -> None: + """void TCOD_color_gen_map(TCOD_color_t *map, int nb_key, const TCOD_color_t *key_color, const int *key_index)""" + + @staticmethod + def TCOD_color_get_HSV(color: Any, hue: Any, saturation: Any, value: Any, /) -> None: + """void TCOD_color_get_HSV(TCOD_color_t color, float *hue, float *saturation, float *value)""" + + @staticmethod + def TCOD_color_get_HSV_wrapper(c: Any, h: Any, s: Any, v: Any, /) -> None: + """void TCOD_color_get_HSV_wrapper(colornum_t c, float *h, float *s, float *v)""" + + @staticmethod + def TCOD_color_get_hue(color: Any, /) -> Any: + """float TCOD_color_get_hue(TCOD_color_t color)""" + + @staticmethod + def TCOD_color_get_hue_wrapper(c: Any, /) -> Any: + """float TCOD_color_get_hue_wrapper(colornum_t c)""" + + @staticmethod + def TCOD_color_get_saturation(color: Any, /) -> Any: + """float TCOD_color_get_saturation(TCOD_color_t color)""" + + @staticmethod + def TCOD_color_get_saturation_wrapper(c: Any, /) -> Any: + """float TCOD_color_get_saturation_wrapper(colornum_t c)""" + + @staticmethod + def TCOD_color_get_value(color: Any, /) -> Any: + """float TCOD_color_get_value(TCOD_color_t color)""" + + @staticmethod + def TCOD_color_get_value_wrapper(c: Any, /) -> Any: + """float TCOD_color_get_value_wrapper(colornum_t c)""" + + @staticmethod + def TCOD_color_lerp(c1: Any, c2: Any, coef: Any, /) -> Any: + """TCOD_color_t TCOD_color_lerp(TCOD_color_t c1, TCOD_color_t c2, float coef)""" + + @staticmethod + def TCOD_color_lerp_wrapper(c1: Any, c2: Any, coef: Any, /) -> Any: + """colornum_t TCOD_color_lerp_wrapper(colornum_t c1, colornum_t c2, float coef)""" + + @staticmethod + def TCOD_color_multiply(c1: Any, c2: Any, /) -> Any: + """TCOD_color_t TCOD_color_multiply(TCOD_color_t c1, TCOD_color_t c2)""" + + @staticmethod + def TCOD_color_multiply_scalar(c1: Any, value: Any, /) -> Any: + """TCOD_color_t TCOD_color_multiply_scalar(TCOD_color_t c1, float value)""" + + @staticmethod + def TCOD_color_multiply_scalar_wrapper(c1: Any, value: Any, /) -> Any: + """colornum_t TCOD_color_multiply_scalar_wrapper(colornum_t c1, float value)""" + + @staticmethod + def TCOD_color_multiply_wrapper(c1: Any, c2: Any, /) -> Any: + """colornum_t TCOD_color_multiply_wrapper(colornum_t c1, colornum_t c2)""" + + @staticmethod + def TCOD_color_scale_HSV(color: Any, saturation_coef: Any, value_coef: Any, /) -> None: + """void TCOD_color_scale_HSV(TCOD_color_t *color, float saturation_coef, float value_coef)""" + + @staticmethod + def TCOD_color_set_HSV(color: Any, hue: Any, saturation: Any, value: Any, /) -> None: + """void TCOD_color_set_HSV(TCOD_color_t *color, float hue, float saturation, float value)""" + + @staticmethod + def TCOD_color_set_hue(color: Any, hue: Any, /) -> None: + """void TCOD_color_set_hue(TCOD_color_t *color, float hue)""" + + @staticmethod + def TCOD_color_set_saturation(color: Any, saturation: Any, /) -> None: + """void TCOD_color_set_saturation(TCOD_color_t *color, float saturation)""" + + @staticmethod + def TCOD_color_set_value(color: Any, value: Any, /) -> None: + """void TCOD_color_set_value(TCOD_color_t *color, float value)""" + + @staticmethod + def TCOD_color_shift_hue(color: Any, shift: Any, /) -> None: + """void TCOD_color_shift_hue(TCOD_color_t *color, float shift)""" + + @staticmethod + def TCOD_color_subtract(c1: Any, c2: Any, /) -> Any: + """TCOD_color_t TCOD_color_subtract(TCOD_color_t c1, TCOD_color_t c2)""" + + @staticmethod + def TCOD_color_subtract_wrapper(c1: Any, c2: Any, /) -> Any: + """colornum_t TCOD_color_subtract_wrapper(colornum_t c1, colornum_t c2)""" + + @staticmethod + def TCOD_condition_broadcast(sem: Any, /) -> None: + """void TCOD_condition_broadcast(TCOD_cond_t sem)""" + + @staticmethod + def TCOD_condition_delete(sem: Any, /) -> None: + """void TCOD_condition_delete(TCOD_cond_t sem)""" + + @staticmethod + def TCOD_condition_new() -> Any: + """TCOD_cond_t TCOD_condition_new(void)""" + + @staticmethod + def TCOD_condition_signal(sem: Any, /) -> None: + """void TCOD_condition_signal(TCOD_cond_t sem)""" + + @staticmethod + def TCOD_condition_wait(sem: Any, mut: Any, /) -> None: + """void TCOD_condition_wait(TCOD_cond_t sem, TCOD_mutex_t mut)""" + + @staticmethod + def TCOD_console_blit( + src: Any, + xSrc: int, + ySrc: int, + wSrc: int, + hSrc: int, + dst: Any, + xDst: int, + yDst: int, + foreground_alpha: Any, + background_alpha: Any, + /, + ) -> None: + """void TCOD_console_blit(const TCOD_Console *src, int xSrc, int ySrc, int wSrc, int hSrc, TCOD_Console *dst, int xDst, int yDst, float foreground_alpha, float background_alpha)""" + + @staticmethod + def TCOD_console_blit_key_color( + src: Any, + xSrc: int, + ySrc: int, + wSrc: int, + hSrc: int, + dst: Any, + xDst: int, + yDst: int, + foreground_alpha: Any, + background_alpha: Any, + key_color: Any, + /, + ) -> None: + """void TCOD_console_blit_key_color(const TCOD_Console *src, int xSrc, int ySrc, int wSrc, int hSrc, TCOD_Console *dst, int xDst, int yDst, float foreground_alpha, float background_alpha, const TCOD_color_t *key_color)""" + + @staticmethod + def TCOD_console_check_for_keypress(flags: int, /) -> Any: + """TCOD_key_t TCOD_console_check_for_keypress(int flags)""" + + @staticmethod + def TCOD_console_check_for_keypress_wrapper(holder: Any, flags: int, /) -> bool: + """bool TCOD_console_check_for_keypress_wrapper(TCOD_key_t *holder, int flags)""" + + @staticmethod + def TCOD_console_clear(con: Any, /) -> None: + """void TCOD_console_clear(TCOD_Console *con)""" + + @staticmethod + def TCOD_console_credits() -> None: + """void TCOD_console_credits(void)""" + + @staticmethod + def TCOD_console_credits_render(x: int, y: int, alpha: bool, /) -> bool: + """bool TCOD_console_credits_render(int x, int y, bool alpha)""" + + @staticmethod + def TCOD_console_credits_render_ex(console: Any, x: int, y: int, alpha: bool, delta_time: Any, /) -> bool: + """bool TCOD_console_credits_render_ex(TCOD_Console *console, int x, int y, bool alpha, float delta_time)""" + + @staticmethod + def TCOD_console_credits_reset() -> None: + """void TCOD_console_credits_reset(void)""" + + @staticmethod + def TCOD_console_delete(console: Any, /) -> None: + """void TCOD_console_delete(TCOD_Console *console)""" + + @staticmethod + def TCOD_console_disable_keyboard_repeat() -> None: + """void TCOD_console_disable_keyboard_repeat(void)""" + + @staticmethod + def TCOD_console_double_hline(con: Any, x: int, y: int, l: int, flag: Any, /) -> None: + """void TCOD_console_double_hline(TCOD_console_t con, int x, int y, int l, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_double_vline(con: Any, x: int, y: int, l: int, flag: Any, /) -> None: + """void TCOD_console_double_vline(TCOD_console_t con, int x, int y, int l, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_draw_frame_rgb( + con: Any, x: int, y: int, width: int, height: int, decoration: Any, fg: Any, bg: Any, flag: Any, clear: bool, / + ) -> Any: + """TCOD_Error TCOD_console_draw_frame_rgb(struct TCOD_Console *con, int x, int y, int width, int height, const int *decoration, const TCOD_ColorRGB *fg, const TCOD_ColorRGB *bg, TCOD_bkgnd_flag_t flag, bool clear)""" + + @staticmethod + def TCOD_console_draw_rect_rgb( + console: Any, x: int, y: int, width: int, height: int, ch: int, fg: Any, bg: Any, flag: Any, / + ) -> Any: + """TCOD_Error TCOD_console_draw_rect_rgb(TCOD_Console *console, int x, int y, int width, int height, int ch, const TCOD_color_t *fg, const TCOD_color_t *bg, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_fill_background(con: Any, r: Any, g: Any, b: Any, /) -> None: + """void TCOD_console_fill_background(TCOD_console_t con, int *r, int *g, int *b)""" + + @staticmethod + def TCOD_console_fill_char(con: Any, arr: Any, /) -> None: + """void TCOD_console_fill_char(TCOD_console_t con, int *arr)""" + + @staticmethod + def TCOD_console_fill_foreground(con: Any, r: Any, g: Any, b: Any, /) -> None: + """void TCOD_console_fill_foreground(TCOD_console_t con, int *r, int *g, int *b)""" + + @staticmethod + def TCOD_console_flush() -> Any: + """TCOD_Error TCOD_console_flush(void)""" + + @staticmethod + def TCOD_console_flush_ex(console: Any, viewport: Any, /) -> Any: + """TCOD_Error TCOD_console_flush_ex(TCOD_Console *console, struct TCOD_ViewportOptions *viewport)""" + + @staticmethod + def TCOD_console_forward(s: Any, l: int, /) -> Any: + """unsigned char *TCOD_console_forward(unsigned char *s, int l)""" + + @staticmethod + def TCOD_console_from_file(filename: Any, /) -> Any: + """TCOD_console_t TCOD_console_from_file(const char *filename)""" + + @staticmethod + def TCOD_console_from_xp(filename: Any, /) -> Any: + """TCOD_console_t TCOD_console_from_xp(const char *filename)""" + + @staticmethod + def TCOD_console_get_alignment(con: Any, /) -> Any: + """TCOD_alignment_t TCOD_console_get_alignment(TCOD_Console *con)""" + + @staticmethod + def TCOD_console_get_background_flag(con: Any, /) -> Any: + """TCOD_bkgnd_flag_t TCOD_console_get_background_flag(TCOD_Console *con)""" + + @staticmethod + def TCOD_console_get_char(con: Any, x: int, y: int, /) -> int: + """int TCOD_console_get_char(const TCOD_Console *con, int x, int y)""" + + @staticmethod + def TCOD_console_get_char_background(con: Any, x: int, y: int, /) -> Any: + """TCOD_color_t TCOD_console_get_char_background(const TCOD_Console *con, int x, int y)""" + + @staticmethod + def TCOD_console_get_char_background_wrapper(con: Any, x: int, y: int, /) -> Any: + """colornum_t TCOD_console_get_char_background_wrapper(TCOD_console_t con, int x, int y)""" + + @staticmethod + def TCOD_console_get_char_foreground(con: Any, x: int, y: int, /) -> Any: + """TCOD_color_t TCOD_console_get_char_foreground(const TCOD_Console *con, int x, int y)""" + + @staticmethod + def TCOD_console_get_char_foreground_wrapper(con: Any, x: int, y: int, /) -> Any: + """colornum_t TCOD_console_get_char_foreground_wrapper(TCOD_console_t con, int x, int y)""" + + @staticmethod + def TCOD_console_get_default_background(con: Any, /) -> Any: + """TCOD_color_t TCOD_console_get_default_background(TCOD_Console *con)""" + + @staticmethod + def TCOD_console_get_default_background_wrapper(con: Any, /) -> Any: + """colornum_t TCOD_console_get_default_background_wrapper(TCOD_console_t con)""" + + @staticmethod + def TCOD_console_get_default_foreground(con: Any, /) -> Any: + """TCOD_color_t TCOD_console_get_default_foreground(TCOD_Console *con)""" + + @staticmethod + def TCOD_console_get_default_foreground_wrapper(con: Any, /) -> Any: + """colornum_t TCOD_console_get_default_foreground_wrapper(TCOD_console_t con)""" + + @staticmethod + def TCOD_console_get_fade() -> Any: + """uint8_t TCOD_console_get_fade(void)""" + + @staticmethod + def TCOD_console_get_fading_color() -> Any: + """TCOD_color_t TCOD_console_get_fading_color(void)""" + + @staticmethod + def TCOD_console_get_fading_color_wrapper() -> Any: + """colornum_t TCOD_console_get_fading_color_wrapper(void)""" + + @staticmethod + def TCOD_console_get_height(con: Any, /) -> int: + """int TCOD_console_get_height(const TCOD_Console *con)""" + + @staticmethod + def TCOD_console_get_height_rect(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_get_height_rect(TCOD_Console *con, int x, int y, int w, int h, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_get_height_rect_fmt(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_get_height_rect_fmt(TCOD_Console *con, int x, int y, int w, int h, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_get_height_rect_n( + console: Any, x: int, y: int, width: int, height: int, n: int, str: Any, / + ) -> int: + """int TCOD_console_get_height_rect_n(TCOD_Console *console, int x, int y, int width, int height, size_t n, const char *str)""" + + @staticmethod + def TCOD_console_get_height_rect_utf(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_get_height_rect_utf(TCOD_Console *con, int x, int y, int w, int h, const wchar_t *fmt, ...)""" + + @staticmethod + def TCOD_console_get_height_rect_wn(width: int, n: int, str: Any, /) -> int: + """int TCOD_console_get_height_rect_wn(int width, size_t n, const char *str)""" + + @staticmethod + def TCOD_console_get_width(con: Any, /) -> int: + """int TCOD_console_get_width(const TCOD_Console *con)""" + + @staticmethod + def TCOD_console_has_mouse_focus() -> bool: + """bool TCOD_console_has_mouse_focus(void)""" + + @staticmethod + def TCOD_console_hline(con: Any, x: int, y: int, l: int, flag: Any, /) -> None: + """void TCOD_console_hline(TCOD_Console *con, int x, int y, int l, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_init_root(w: int, h: int, title: Any, fullscreen: bool, renderer: Any, /) -> Any: + """TCOD_Error TCOD_console_init_root(int w, int h, const char *title, bool fullscreen, TCOD_renderer_t renderer)""" + + @staticmethod + def TCOD_console_init_root_(w: int, h: int, title: Any, fullscreen: bool, renderer: Any, vsync: bool, /) -> Any: + """TCOD_Error TCOD_console_init_root_(int w, int h, const char *title, bool fullscreen, TCOD_renderer_t renderer, bool vsync)""" + + @staticmethod + def TCOD_console_is_active() -> bool: + """bool TCOD_console_is_active(void)""" + + @staticmethod + def TCOD_console_is_fullscreen() -> bool: + """bool TCOD_console_is_fullscreen(void)""" + + @staticmethod + def TCOD_console_is_index_valid_(console: Any, x: int, y: int, /) -> bool: + """inline static bool TCOD_console_is_index_valid_(const TCOD_Console *console, int x, int y)""" + + @staticmethod + def TCOD_console_is_key_pressed(key: Any, /) -> bool: + """bool TCOD_console_is_key_pressed(TCOD_keycode_t key)""" + + @staticmethod + def TCOD_console_is_window_closed() -> bool: + """bool TCOD_console_is_window_closed(void)""" + + @staticmethod + def TCOD_console_list_from_xp(filename: Any, /) -> Any: + """TCOD_list_t TCOD_console_list_from_xp(const char *filename)""" + + @staticmethod + def TCOD_console_list_save_xp(console_list: Any, filename: Any, compress_level: int, /) -> bool: + """bool TCOD_console_list_save_xp(TCOD_list_t console_list, const char *filename, int compress_level)""" + + @staticmethod + def TCOD_console_load_apf(con: Any, filename: Any, /) -> bool: + """bool TCOD_console_load_apf(TCOD_console_t con, const char *filename)""" + + @staticmethod + def TCOD_console_load_asc(con: Any, filename: Any, /) -> bool: + """bool TCOD_console_load_asc(TCOD_console_t con, const char *filename)""" + + @staticmethod + def TCOD_console_load_xp(con: Any, filename: Any, /) -> bool: + """bool TCOD_console_load_xp(TCOD_Console *con, const char *filename)""" + + @staticmethod + def TCOD_console_map_ascii_code_to_font(asciiCode: int, fontCharX: int, fontCharY: int, /) -> None: + """void TCOD_console_map_ascii_code_to_font(int asciiCode, int fontCharX, int fontCharY)""" + + @staticmethod + def TCOD_console_map_ascii_codes_to_font(asciiCode: int, nbCodes: int, fontCharX: int, fontCharY: int, /) -> None: + """void TCOD_console_map_ascii_codes_to_font(int asciiCode, int nbCodes, int fontCharX, int fontCharY)""" + + @staticmethod + def TCOD_console_map_string_to_font(s: Any, fontCharX: int, fontCharY: int, /) -> None: + """void TCOD_console_map_string_to_font(const char *s, int fontCharX, int fontCharY)""" + + @staticmethod + def TCOD_console_map_string_to_font_utf(s: Any, fontCharX: int, fontCharY: int, /) -> None: + """void TCOD_console_map_string_to_font_utf(const wchar_t *s, int fontCharX, int fontCharY)""" + + @staticmethod + def TCOD_console_new(w: int, h: int, /) -> Any: + """TCOD_Console *TCOD_console_new(int w, int h)""" + + @staticmethod + def TCOD_console_print(con: Any, x: int, y: int, fmt: Any, /, *__args: Any) -> None: + """void TCOD_console_print(TCOD_Console *con, int x, int y, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_double_frame( + con: Any, x: int, y: int, w: int, h: int, empty: bool, flag: Any, fmt: Any, /, *__args: Any + ) -> None: + """void TCOD_console_print_double_frame(TCOD_console_t con, int x, int y, int w, int h, bool empty, TCOD_bkgnd_flag_t flag, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_ex(con: Any, x: int, y: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any) -> None: + """void TCOD_console_print_ex(TCOD_Console *con, int x, int y, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_ex_utf( + con: Any, x: int, y: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any + ) -> None: + """void TCOD_console_print_ex_utf(TCOD_Console *con, int x, int y, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const wchar_t *fmt, ...)""" + + @staticmethod + def TCOD_console_print_frame( + con: Any, x: int, y: int, w: int, h: int, empty: bool, flag: Any, fmt: Any, /, *__args: Any + ) -> None: + """void TCOD_console_print_frame(TCOD_console_t con, int x, int y, int w, int h, bool empty, TCOD_bkgnd_flag_t flag, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_internal( + con: Any, x: int, y: int, w: int, h: int, flag: Any, align: Any, msg: Any, can_split: bool, count_only: bool, / + ) -> int: + """int TCOD_console_print_internal(TCOD_Console *con, int x, int y, int w, int h, TCOD_bkgnd_flag_t flag, TCOD_alignment_t align, char *msg, bool can_split, bool count_only)""" + + @staticmethod + def TCOD_console_print_internal_utf( + con: Any, + x: int, + y: int, + rw: int, + rh: int, + flag: Any, + align: Any, + msg: Any, + can_split: bool, + count_only: bool, + /, + ) -> int: + """int TCOD_console_print_internal_utf(TCOD_console_t con, int x, int y, int rw, int rh, TCOD_bkgnd_flag_t flag, TCOD_alignment_t align, wchar_t *msg, bool can_split, bool count_only)""" + + @staticmethod + def TCOD_console_print_rect(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_print_rect(TCOD_Console *con, int x, int y, int w, int h, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_rect_ex( + con: Any, x: int, y: int, w: int, h: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any + ) -> int: + """int TCOD_console_print_rect_ex(TCOD_Console *con, int x, int y, int w, int h, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_print_rect_ex_utf( + con: Any, x: int, y: int, w: int, h: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any + ) -> int: + """int TCOD_console_print_rect_ex_utf(TCOD_Console *con, int x, int y, int w, int h, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const wchar_t *fmt, ...)""" + + @staticmethod + def TCOD_console_print_rect_utf(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_print_rect_utf(TCOD_Console *con, int x, int y, int w, int h, const wchar_t *fmt, ...)""" + + @staticmethod + def TCOD_console_print_return_string( + con: Any, + x: int, + y: int, + rw: int, + rh: int, + flag: Any, + align: Any, + msg: Any, + can_split: bool, + count_only: bool, + /, + ) -> Any: + """char *TCOD_console_print_return_string(TCOD_console_t con, int x, int y, int rw, int rh, TCOD_bkgnd_flag_t flag, TCOD_alignment_t align, char *msg, bool can_split, bool count_only)""" + + @staticmethod + def TCOD_console_print_utf(con: Any, x: int, y: int, fmt: Any, /, *__args: Any) -> None: + """void TCOD_console_print_utf(TCOD_Console *con, int x, int y, const wchar_t *fmt, ...)""" + + @staticmethod + def TCOD_console_printf(con: Any, x: int, y: int, fmt: Any, /, *__args: Any) -> Any: + """TCOD_Error TCOD_console_printf(TCOD_Console *con, int x, int y, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_printf_ex(con: Any, x: int, y: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any) -> Any: + """TCOD_Error TCOD_console_printf_ex(TCOD_Console *con, int x, int y, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_printf_frame( + con: Any, x: int, y: int, w: int, h: int, empty: int, flag: Any, fmt: Any, /, *__args: Any + ) -> Any: + """TCOD_Error TCOD_console_printf_frame(TCOD_Console *con, int x, int y, int w, int h, int empty, TCOD_bkgnd_flag_t flag, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_printf_rect(con: Any, x: int, y: int, w: int, h: int, fmt: Any, /, *__args: Any) -> int: + """int TCOD_console_printf_rect(TCOD_Console *con, int x, int y, int w, int h, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_printf_rect_ex( + con: Any, x: int, y: int, w: int, h: int, flag: Any, alignment: Any, fmt: Any, /, *__args: Any + ) -> int: + """int TCOD_console_printf_rect_ex(TCOD_Console *con, int x, int y, int w, int h, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment, const char *fmt, ...)""" + + @staticmethod + def TCOD_console_printn( + console: Any, x: int, y: int, n: int, str: Any, fg: Any, bg: Any, flag: Any, alignment: Any, / + ) -> Any: + """TCOD_Error TCOD_console_printn(TCOD_Console *console, int x, int y, size_t n, const char *str, const TCOD_ColorRGB *fg, const TCOD_ColorRGB *bg, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment)""" + + @staticmethod + def TCOD_console_printn_frame( + console: Any, + x: int, + y: int, + width: int, + height: int, + n: int, + title: Any, + fg: Any, + bg: Any, + flag: Any, + clear: bool, + /, + ) -> Any: + """TCOD_Error TCOD_console_printn_frame(TCOD_Console *console, int x, int y, int width, int height, size_t n, const char *title, const TCOD_ColorRGB *fg, const TCOD_ColorRGB *bg, TCOD_bkgnd_flag_t flag, bool clear)""" + + @staticmethod + def TCOD_console_printn_rect( + console: Any, + x: int, + y: int, + width: int, + height: int, + n: int, + str: Any, + fg: Any, + bg: Any, + flag: Any, + alignment: Any, + /, + ) -> int: + """int TCOD_console_printn_rect(TCOD_Console *console, int x, int y, int width, int height, size_t n, const char *str, const TCOD_ColorRGB *fg, const TCOD_ColorRGB *bg, TCOD_bkgnd_flag_t flag, TCOD_alignment_t alignment)""" + + @staticmethod + def TCOD_console_put_char(con: Any, x: int, y: int, c: int, flag: Any, /) -> None: + """void TCOD_console_put_char(TCOD_Console *con, int x, int y, int c, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_put_char_ex(con: Any, x: int, y: int, c: int, fore: Any, back: Any, /) -> None: + """void TCOD_console_put_char_ex(TCOD_Console *con, int x, int y, int c, TCOD_color_t fore, TCOD_color_t back)""" + + @staticmethod + def TCOD_console_put_char_ex_wrapper(con: Any, x: int, y: int, c: int, fore: Any, back: Any, /) -> None: + """void TCOD_console_put_char_ex_wrapper(TCOD_console_t con, int x, int y, int c, colornum_t fore, colornum_t back)""" + + @staticmethod + def TCOD_console_put_rgb(console: Any, x: int, y: int, ch: int, fg: Any, bg: Any, flag: Any, /) -> None: + """void TCOD_console_put_rgb(TCOD_Console *console, int x, int y, int ch, const TCOD_color_t *fg, const TCOD_color_t *bg, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_rect(con: Any, x: int, y: int, rw: int, rh: int, clear: bool, flag: Any, /) -> None: + """void TCOD_console_rect(TCOD_Console *con, int x, int y, int rw, int rh, bool clear, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_resize_(console: Any, width: int, height: int, /) -> None: + """void TCOD_console_resize_(TCOD_Console *console, int width, int height)""" + + @staticmethod + def TCOD_console_save_apf(con: Any, filename: Any, /) -> bool: + """bool TCOD_console_save_apf(TCOD_console_t con, const char *filename)""" + + @staticmethod + def TCOD_console_save_asc(con: Any, filename: Any, /) -> bool: + """bool TCOD_console_save_asc(TCOD_console_t con, const char *filename)""" + + @staticmethod + def TCOD_console_save_xp(con: Any, filename: Any, compress_level: int, /) -> bool: + """bool TCOD_console_save_xp(const TCOD_Console *con, const char *filename, int compress_level)""" + + @staticmethod + def TCOD_console_set_alignment(con: Any, alignment: Any, /) -> None: + """void TCOD_console_set_alignment(TCOD_Console *con, TCOD_alignment_t alignment)""" + + @staticmethod + def TCOD_console_set_background_flag(con: Any, flag: Any, /) -> None: + """void TCOD_console_set_background_flag(TCOD_Console *con, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_set_char(con: Any, x: int, y: int, c: int, /) -> None: + """void TCOD_console_set_char(TCOD_Console *con, int x, int y, int c)""" + + @staticmethod + def TCOD_console_set_char_background(con: Any, x: int, y: int, col: Any, flag: Any, /) -> None: + """void TCOD_console_set_char_background(TCOD_Console *con, int x, int y, TCOD_color_t col, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_set_char_background_wrapper(con: Any, x: int, y: int, col: Any, flag: Any, /) -> None: + """void TCOD_console_set_char_background_wrapper(TCOD_console_t con, int x, int y, colornum_t col, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_set_char_foreground(con: Any, x: int, y: int, col: Any, /) -> None: + """void TCOD_console_set_char_foreground(TCOD_Console *con, int x, int y, TCOD_color_t col)""" + + @staticmethod + def TCOD_console_set_char_foreground_wrapper(con: Any, x: int, y: int, col: Any, /) -> None: + """void TCOD_console_set_char_foreground_wrapper(TCOD_console_t con, int x, int y, colornum_t col)""" + + @staticmethod + def TCOD_console_set_color_control(con: Any, fore: Any, back: Any, /) -> None: + """void TCOD_console_set_color_control(TCOD_colctrl_t con, TCOD_color_t fore, TCOD_color_t back)""" + + @staticmethod + def TCOD_console_set_color_control_wrapper(con: Any, fore: Any, back: Any, /) -> None: + """void TCOD_console_set_color_control_wrapper(TCOD_colctrl_t con, colornum_t fore, colornum_t back)""" + + @staticmethod + def TCOD_console_set_custom_font(fontFile: Any, flags: int, nb_char_horiz: int, nb_char_vertic: int, /) -> Any: + """TCOD_Error TCOD_console_set_custom_font(const char *fontFile, int flags, int nb_char_horiz, int nb_char_vertic)""" + + @staticmethod + def TCOD_console_set_default_background(con: Any, col: Any, /) -> None: + """void TCOD_console_set_default_background(TCOD_Console *con, TCOD_color_t col)""" + + @staticmethod + def TCOD_console_set_default_background_wrapper(con: Any, col: Any, /) -> None: + """void TCOD_console_set_default_background_wrapper(TCOD_console_t con, colornum_t col)""" + + @staticmethod + def TCOD_console_set_default_foreground(con: Any, col: Any, /) -> None: + """void TCOD_console_set_default_foreground(TCOD_Console *con, TCOD_color_t col)""" + + @staticmethod + def TCOD_console_set_default_foreground_wrapper(con: Any, col: Any, /) -> None: + """void TCOD_console_set_default_foreground_wrapper(TCOD_console_t con, colornum_t col)""" + + @staticmethod + def TCOD_console_set_dirty(x: int, y: int, w: int, h: int, /) -> None: + """void TCOD_console_set_dirty(int x, int y, int w, int h)""" + + @staticmethod + def TCOD_console_set_fade(val: Any, fade_color: Any, /) -> None: + """void TCOD_console_set_fade(uint8_t val, TCOD_color_t fade_color)""" + + @staticmethod + def TCOD_console_set_fade_wrapper(val: Any, fade: Any, /) -> None: + """void TCOD_console_set_fade_wrapper(uint8_t val, colornum_t fade)""" + + @staticmethod + def TCOD_console_set_fullscreen(fullscreen: bool, /) -> None: + """void TCOD_console_set_fullscreen(bool fullscreen)""" + + @staticmethod + def TCOD_console_set_key_color(con: Any, col: Any, /) -> None: + """void TCOD_console_set_key_color(TCOD_Console *con, TCOD_color_t col)""" + + @staticmethod + def TCOD_console_set_key_color_wrapper(con: Any, c: Any, /) -> None: + """void TCOD_console_set_key_color_wrapper(TCOD_console_t con, colornum_t c)""" + + @staticmethod + def TCOD_console_set_keyboard_repeat(initial_delay: int, interval: int, /) -> None: + """void TCOD_console_set_keyboard_repeat(int initial_delay, int interval)""" + + @staticmethod + def TCOD_console_set_window_title(title: Any, /) -> None: + """void TCOD_console_set_window_title(const char *title)""" + + @staticmethod + def TCOD_console_stringLength(s: Any, /) -> int: + """int TCOD_console_stringLength(const unsigned char *s)""" + + @staticmethod + def TCOD_console_validate_(console: Any, /) -> Any: + """inline static TCOD_Console *TCOD_console_validate_(const TCOD_Console *console)""" + + @staticmethod + def TCOD_console_vline(con: Any, x: int, y: int, l: int, flag: Any, /) -> None: + """void TCOD_console_vline(TCOD_Console *con, int x, int y, int l, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TCOD_console_wait_for_keypress(flush: bool, /) -> Any: + """TCOD_key_t TCOD_console_wait_for_keypress(bool flush)""" + + @staticmethod + def TCOD_console_wait_for_keypress_wrapper(holder: Any, flush: bool, /) -> None: + """void TCOD_console_wait_for_keypress_wrapper(TCOD_key_t *holder, bool flush)""" + + @staticmethod + def TCOD_context_change_tileset(self: Any, tileset: Any, /) -> Any: + """TCOD_Error TCOD_context_change_tileset(struct TCOD_Context *self, TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_context_convert_event_coordinates(context: Any, event: Any, /) -> Any: + """TCOD_Error TCOD_context_convert_event_coordinates(struct TCOD_Context *context, union SDL_Event *event)""" + + @staticmethod + def TCOD_context_delete(renderer: Any, /) -> None: + """void TCOD_context_delete(struct TCOD_Context *renderer)""" + + @staticmethod + def TCOD_context_get_renderer_type(context: Any, /) -> int: + """int TCOD_context_get_renderer_type(struct TCOD_Context *context)""" + + @staticmethod + def TCOD_context_get_sdl_renderer(context: Any, /) -> Any: + """struct SDL_Renderer *TCOD_context_get_sdl_renderer(struct TCOD_Context *context)""" + + @staticmethod + def TCOD_context_get_sdl_window(context: Any, /) -> Any: + """struct SDL_Window *TCOD_context_get_sdl_window(struct TCOD_Context *context)""" + + @staticmethod + def TCOD_context_new(params: Any, out: Any, /) -> Any: + """TCOD_Error TCOD_context_new(const TCOD_ContextParams *params, TCOD_Context **out)""" + + @staticmethod + def TCOD_context_new_() -> Any: + """struct TCOD_Context *TCOD_context_new_(void)""" + + @staticmethod + def TCOD_context_present(context: Any, console: Any, viewport: Any, /) -> Any: + """TCOD_Error TCOD_context_present(struct TCOD_Context *context, const struct TCOD_Console *console, const struct TCOD_ViewportOptions *viewport)""" + + @staticmethod + def TCOD_context_recommended_console_size(context: Any, magnification: Any, columns: Any, rows: Any, /) -> Any: + """TCOD_Error TCOD_context_recommended_console_size(struct TCOD_Context *context, float magnification, int *columns, int *rows)""" + + @staticmethod + def TCOD_context_save_screenshot(context: Any, filename: Any, /) -> Any: + """TCOD_Error TCOD_context_save_screenshot(struct TCOD_Context *context, const char *filename)""" + + @staticmethod + def TCOD_context_screen_capture(context: Any, out_pixels: Any, width: Any, height: Any, /) -> Any: + """TCOD_Error TCOD_context_screen_capture(struct TCOD_Context *context, TCOD_ColorRGBA *out_pixels, int *width, int *height)""" + + @staticmethod + def TCOD_context_screen_capture_alloc(context: Any, width: Any, height: Any, /) -> Any: + """TCOD_ColorRGBA *TCOD_context_screen_capture_alloc(struct TCOD_Context *context, int *width, int *height)""" + + @staticmethod + def TCOD_context_screen_pixel_to_tile_d(context: Any, x: Any, y: Any, /) -> Any: + """TCOD_Error TCOD_context_screen_pixel_to_tile_d(struct TCOD_Context *context, double *x, double *y)""" + + @staticmethod + def TCOD_context_screen_pixel_to_tile_i(context: Any, x: Any, y: Any, /) -> Any: + """TCOD_Error TCOD_context_screen_pixel_to_tile_i(struct TCOD_Context *context, int *x, int *y)""" + + @staticmethod + def TCOD_context_set_mouse_transform(context: Any, transform: Any, /) -> Any: + """TCOD_Error TCOD_context_set_mouse_transform(struct TCOD_Context *context, const TCOD_MouseTransform *transform)""" + + @staticmethod + def TCOD_dijkstra_compute(dijkstra: Any, root_x: int, root_y: int, /) -> None: + """void TCOD_dijkstra_compute(TCOD_Dijkstra *dijkstra, int root_x, int root_y)""" + + @staticmethod + def TCOD_dijkstra_delete(dijkstra: Any, /) -> None: + """void TCOD_dijkstra_delete(TCOD_Dijkstra *dijkstra)""" + + @staticmethod + def TCOD_dijkstra_get(path: Any, index: int, x: Any, y: Any, /) -> None: + """void TCOD_dijkstra_get(TCOD_Dijkstra *path, int index, int *x, int *y)""" + + @staticmethod + def TCOD_dijkstra_get_distance(dijkstra: Any, x: int, y: int, /) -> Any: + """float TCOD_dijkstra_get_distance(TCOD_Dijkstra *dijkstra, int x, int y)""" + + @staticmethod + def TCOD_dijkstra_is_empty(path: Any, /) -> bool: + """bool TCOD_dijkstra_is_empty(TCOD_Dijkstra *path)""" + + @staticmethod + def TCOD_dijkstra_new(map: Any, diagonalCost: Any, /) -> Any: + """TCOD_Dijkstra *TCOD_dijkstra_new(TCOD_Map *map, float diagonalCost)""" + + @staticmethod + def TCOD_dijkstra_new_using_function( + map_width: int, map_height: int, func: Any, user_data: Any, diagonalCost: Any, / + ) -> Any: + """TCOD_Dijkstra *TCOD_dijkstra_new_using_function(int map_width, int map_height, TCOD_path_func_t func, void *user_data, float diagonalCost)""" + + @staticmethod + def TCOD_dijkstra_path_set(dijkstra: Any, x: int, y: int, /) -> bool: + """bool TCOD_dijkstra_path_set(TCOD_Dijkstra *dijkstra, int x, int y)""" + + @staticmethod + def TCOD_dijkstra_path_walk(dijkstra: Any, x: Any, y: Any, /) -> bool: + """bool TCOD_dijkstra_path_walk(TCOD_Dijkstra *dijkstra, int *x, int *y)""" + + @staticmethod + def TCOD_dijkstra_reverse(path: Any, /) -> None: + """void TCOD_dijkstra_reverse(TCOD_Dijkstra *path)""" + + @staticmethod + def TCOD_dijkstra_size(path: Any, /) -> int: + """int TCOD_dijkstra_size(TCOD_Dijkstra *path)""" + + @staticmethod + def TCOD_frontier_clear(frontier: Any, /) -> Any: + """TCOD_Error TCOD_frontier_clear(struct TCOD_Frontier *frontier)""" + + @staticmethod + def TCOD_frontier_delete(frontier: Any, /) -> None: + """void TCOD_frontier_delete(struct TCOD_Frontier *frontier)""" + + @staticmethod + def TCOD_frontier_new(ndim: int, /) -> Any: + """struct TCOD_Frontier *TCOD_frontier_new(int ndim)""" + + @staticmethod + def TCOD_frontier_pop(frontier: Any, /) -> Any: + """TCOD_Error TCOD_frontier_pop(struct TCOD_Frontier *frontier)""" + + @staticmethod + def TCOD_frontier_push(frontier: Any, index: Any, dist: int, heuristic: int, /) -> Any: + """TCOD_Error TCOD_frontier_push(struct TCOD_Frontier *frontier, const int *index, int dist, int heuristic)""" + + @staticmethod + def TCOD_frontier_size(frontier: Any, /) -> int: + """int TCOD_frontier_size(const struct TCOD_Frontier *frontier)""" + + @staticmethod + def TCOD_get_default_tileset() -> Any: + """TCOD_Tileset *TCOD_get_default_tileset(void)""" + + @staticmethod + def TCOD_get_error() -> Any: + """const char *TCOD_get_error(void)""" + + @staticmethod + def TCOD_get_function_address(library: Any, function_name: Any, /) -> Any: + """void *TCOD_get_function_address(TCOD_library_t library, const char *function_name)""" + + @staticmethod + def TCOD_heap_clear(heap: Any, /) -> None: + """void TCOD_heap_clear(struct TCOD_Heap *heap)""" + + @staticmethod + def TCOD_heap_init(heap: Any, data_size: int, /) -> int: + """int TCOD_heap_init(struct TCOD_Heap *heap, size_t data_size)""" + + @staticmethod + def TCOD_heap_uninit(heap: Any, /) -> None: + """void TCOD_heap_uninit(struct TCOD_Heap *heap)""" + + @staticmethod + def TCOD_heightmap_add(hm: Any, value: Any, /) -> None: + """void TCOD_heightmap_add(TCOD_heightmap_t *hm, float value)""" + + @staticmethod + def TCOD_heightmap_add_fbm( + hm: Any, noise: Any, mul_x: Any, mul_y: Any, add_x: Any, add_y: Any, octaves: Any, delta: Any, scale: Any, / + ) -> None: + """void TCOD_heightmap_add_fbm(TCOD_heightmap_t *hm, TCOD_noise_t noise, float mul_x, float mul_y, float add_x, float add_y, float octaves, float delta, float scale)""" + + @staticmethod + def TCOD_heightmap_add_hill(hm: Any, hx: Any, hy: Any, h_radius: Any, h_height: Any, /) -> None: + """void TCOD_heightmap_add_hill(TCOD_heightmap_t *hm, float hx, float hy, float h_radius, float h_height)""" + + @staticmethod + def TCOD_heightmap_add_hm(hm1: Any, hm2: Any, out: Any, /) -> None: + """void TCOD_heightmap_add_hm(const TCOD_heightmap_t *hm1, const TCOD_heightmap_t *hm2, TCOD_heightmap_t *out)""" + + @staticmethod + def TCOD_heightmap_add_voronoi(hm: Any, nbPoints: int, nbCoef: int, coef: Any, rnd: Any, /) -> None: + """void TCOD_heightmap_add_voronoi(TCOD_heightmap_t *hm, int nbPoints, int nbCoef, const float *coef, TCOD_Random *rnd)""" + + @staticmethod + def TCOD_heightmap_clamp(hm: Any, min: Any, max: Any, /) -> None: + """void TCOD_heightmap_clamp(TCOD_heightmap_t *hm, float min, float max)""" + + @staticmethod + def TCOD_heightmap_clear(hm: Any, /) -> None: + """void TCOD_heightmap_clear(TCOD_heightmap_t *hm)""" + + @staticmethod + def TCOD_heightmap_copy(hm_source: Any, hm_dest: Any, /) -> None: + """void TCOD_heightmap_copy(const TCOD_heightmap_t *hm_source, TCOD_heightmap_t *hm_dest)""" + + @staticmethod + def TCOD_heightmap_count_cells(hm: Any, min: Any, max: Any, /) -> int: + """int TCOD_heightmap_count_cells(const TCOD_heightmap_t *hm, float min, float max)""" + + @staticmethod + def TCOD_heightmap_delete(hm: Any, /) -> None: + """void TCOD_heightmap_delete(TCOD_heightmap_t *hm)""" + + @staticmethod + def TCOD_heightmap_dig_bezier( + hm: Any, px: Any, py: Any, startRadius: Any, startDepth: Any, endRadius: Any, endDepth: Any, / + ) -> None: + """void TCOD_heightmap_dig_bezier(TCOD_heightmap_t *hm, int px[4], int py[4], float startRadius, float startDepth, float endRadius, float endDepth)""" + + @staticmethod + def TCOD_heightmap_dig_hill(hm: Any, hx: Any, hy: Any, h_radius: Any, h_height: Any, /) -> None: + """void TCOD_heightmap_dig_hill(TCOD_heightmap_t *hm, float hx, float hy, float h_radius, float h_height)""" + + @staticmethod + def TCOD_heightmap_get_interpolated_value(hm: Any, x: Any, y: Any, /) -> Any: + """float TCOD_heightmap_get_interpolated_value(const TCOD_heightmap_t *hm, float x, float y)""" + + @staticmethod + def TCOD_heightmap_get_minmax(hm: Any, min: Any, max: Any, /) -> None: + """void TCOD_heightmap_get_minmax(const TCOD_heightmap_t *hm, float *min, float *max)""" + + @staticmethod + def TCOD_heightmap_get_normal(hm: Any, x: Any, y: Any, n: Any, waterLevel: Any, /) -> None: + """void TCOD_heightmap_get_normal(const TCOD_heightmap_t *hm, float x, float y, float n[3], float waterLevel)""" + + @staticmethod + def TCOD_heightmap_get_slope(hm: Any, x: int, y: int, /) -> Any: + """float TCOD_heightmap_get_slope(const TCOD_heightmap_t *hm, int x, int y)""" + + @staticmethod + def TCOD_heightmap_get_value(hm: Any, x: int, y: int, /) -> Any: + """float TCOD_heightmap_get_value(const TCOD_heightmap_t *hm, int x, int y)""" + + @staticmethod + def TCOD_heightmap_has_land_on_border(hm: Any, waterLevel: Any, /) -> bool: + """bool TCOD_heightmap_has_land_on_border(const TCOD_heightmap_t *hm, float waterLevel)""" + + @staticmethod + def TCOD_heightmap_islandify(hm: Any, seaLevel: Any, rnd: Any, /) -> None: + """void TCOD_heightmap_islandify(TCOD_heightmap_t *hm, float seaLevel, TCOD_Random *rnd)""" + + @staticmethod + def TCOD_heightmap_kernel_transform( + hm: Any, kernel_size: int, dx: Any, dy: Any, weight: Any, minLevel: Any, maxLevel: Any, / + ) -> None: + """void TCOD_heightmap_kernel_transform(TCOD_heightmap_t *hm, int kernel_size, const int *dx, const int *dy, const float *weight, float minLevel, float maxLevel)""" + + @staticmethod + def TCOD_heightmap_lerp_hm(hm1: Any, hm2: Any, out: Any, coef: Any, /) -> None: + """void TCOD_heightmap_lerp_hm(const TCOD_heightmap_t *hm1, const TCOD_heightmap_t *hm2, TCOD_heightmap_t *out, float coef)""" + + @staticmethod + def TCOD_heightmap_mid_point_displacement(hm: Any, rnd: Any, roughness: Any, /) -> None: + """void TCOD_heightmap_mid_point_displacement(TCOD_heightmap_t *hm, TCOD_Random *rnd, float roughness)""" + + @staticmethod + def TCOD_heightmap_multiply_hm(hm1: Any, hm2: Any, out: Any, /) -> None: + """void TCOD_heightmap_multiply_hm(const TCOD_heightmap_t *hm1, const TCOD_heightmap_t *hm2, TCOD_heightmap_t *out)""" + + @staticmethod + def TCOD_heightmap_new(w: int, h: int, /) -> Any: + """TCOD_heightmap_t *TCOD_heightmap_new(int w, int h)""" + + @staticmethod + def TCOD_heightmap_normalize(hm: Any, min: Any, max: Any, /) -> None: + """void TCOD_heightmap_normalize(TCOD_heightmap_t *hm, float min, float max)""" + + @staticmethod + def TCOD_heightmap_rain_erosion( + hm: Any, nbDrops: int, erosionCoef: Any, sedimentationCoef: Any, rnd: Any, / + ) -> None: + """void TCOD_heightmap_rain_erosion(TCOD_heightmap_t *hm, int nbDrops, float erosionCoef, float sedimentationCoef, TCOD_Random *rnd)""" + + @staticmethod + def TCOD_heightmap_scale(hm: Any, value: Any, /) -> None: + """void TCOD_heightmap_scale(TCOD_heightmap_t *hm, float value)""" + + @staticmethod + def TCOD_heightmap_scale_fbm( + hm: Any, noise: Any, mul_x: Any, mul_y: Any, add_x: Any, add_y: Any, octaves: Any, delta: Any, scale: Any, / + ) -> None: + """void TCOD_heightmap_scale_fbm(TCOD_heightmap_t *hm, TCOD_noise_t noise, float mul_x, float mul_y, float add_x, float add_y, float octaves, float delta, float scale)""" + + @staticmethod + def TCOD_heightmap_set_value(hm: Any, x: int, y: int, value: Any, /) -> None: + """void TCOD_heightmap_set_value(TCOD_heightmap_t *hm, int x, int y, float value)""" + + @staticmethod + def TCOD_image_blit( + image: Any, console: Any, x: Any, y: Any, bkgnd_flag: Any, scale_x: Any, scale_y: Any, angle: Any, / + ) -> None: + """void TCOD_image_blit(TCOD_Image *image, TCOD_console_t console, float x, float y, TCOD_bkgnd_flag_t bkgnd_flag, float scale_x, float scale_y, float angle)""" + + @staticmethod + def TCOD_image_blit_2x(image: Any, dest: Any, dx: int, dy: int, sx: int, sy: int, w: int, h: int, /) -> None: + """void TCOD_image_blit_2x(const TCOD_Image *image, TCOD_Console *dest, int dx, int dy, int sx, int sy, int w, int h)""" + + @staticmethod + def TCOD_image_blit_rect(image: Any, console: Any, x: int, y: int, w: int, h: int, bkgnd_flag: Any, /) -> None: + """void TCOD_image_blit_rect(TCOD_Image *image, TCOD_console_t console, int x, int y, int w, int h, TCOD_bkgnd_flag_t bkgnd_flag)""" + + @staticmethod + def TCOD_image_clear(image: Any, color: Any, /) -> None: + """void TCOD_image_clear(TCOD_Image *image, TCOD_color_t color)""" + + @staticmethod + def TCOD_image_clear_wrapper(image: Any, color: Any, /) -> None: + """void TCOD_image_clear_wrapper(TCOD_image_t image, colornum_t color)""" + + @staticmethod + def TCOD_image_delete(image: Any, /) -> None: + """void TCOD_image_delete(TCOD_Image *image)""" + + @staticmethod + def TCOD_image_from_console(console: Any, /) -> Any: + """TCOD_Image *TCOD_image_from_console(const TCOD_Console *console)""" + + @staticmethod + def TCOD_image_get_alpha(image: Any, x: int, y: int, /) -> int: + """int TCOD_image_get_alpha(const TCOD_Image *image, int x, int y)""" + + @staticmethod + def TCOD_image_get_mipmap_pixel(image: Any, x0: Any, y0: Any, x1: Any, y1: Any, /) -> Any: + """TCOD_color_t TCOD_image_get_mipmap_pixel(TCOD_Image *image, float x0, float y0, float x1, float y1)""" + + @staticmethod + def TCOD_image_get_mipmap_pixel_wrapper(image: Any, x0: Any, y0: Any, x1: Any, y1: Any, /) -> Any: + """colornum_t TCOD_image_get_mipmap_pixel_wrapper(TCOD_image_t image, float x0, float y0, float x1, float y1)""" + + @staticmethod + def TCOD_image_get_pixel(image: Any, x: int, y: int, /) -> Any: + """TCOD_color_t TCOD_image_get_pixel(const TCOD_Image *image, int x, int y)""" + + @staticmethod + def TCOD_image_get_pixel_wrapper(image: Any, x: int, y: int, /) -> Any: + """colornum_t TCOD_image_get_pixel_wrapper(TCOD_image_t image, int x, int y)""" + + @staticmethod + def TCOD_image_get_size(image: Any, w: Any, h: Any, /) -> None: + """void TCOD_image_get_size(const TCOD_Image *image, int *w, int *h)""" + + @staticmethod + def TCOD_image_hflip(image: Any, /) -> None: + """void TCOD_image_hflip(TCOD_Image *image)""" + + @staticmethod + def TCOD_image_invert(image: Any, /) -> None: + """void TCOD_image_invert(TCOD_Image *image)""" + + @staticmethod + def TCOD_image_is_pixel_transparent(image: Any, x: int, y: int, /) -> bool: + """bool TCOD_image_is_pixel_transparent(const TCOD_Image *image, int x, int y)""" + + @staticmethod + def TCOD_image_load(filename: Any, /) -> Any: + """TCOD_Image *TCOD_image_load(const char *filename)""" + + @staticmethod + def TCOD_image_new(width: int, height: int, /) -> Any: + """TCOD_Image *TCOD_image_new(int width, int height)""" + + @staticmethod + def TCOD_image_put_pixel(image: Any, x: int, y: int, col: Any, /) -> None: + """void TCOD_image_put_pixel(TCOD_Image *image, int x, int y, TCOD_color_t col)""" + + @staticmethod + def TCOD_image_put_pixel_wrapper(image: Any, x: int, y: int, col: Any, /) -> None: + """void TCOD_image_put_pixel_wrapper(TCOD_image_t image, int x, int y, colornum_t col)""" + + @staticmethod + def TCOD_image_refresh_console(image: Any, console: Any, /) -> None: + """void TCOD_image_refresh_console(TCOD_Image *image, const TCOD_Console *console)""" + + @staticmethod + def TCOD_image_rotate90(image: Any, numRotations: int, /) -> None: + """void TCOD_image_rotate90(TCOD_Image *image, int numRotations)""" + + @staticmethod + def TCOD_image_save(image: Any, filename: Any, /) -> Any: + """TCOD_Error TCOD_image_save(const TCOD_Image *image, const char *filename)""" + + @staticmethod + def TCOD_image_scale(image: Any, new_w: int, new_h: int, /) -> None: + """void TCOD_image_scale(TCOD_Image *image, int new_w, int new_h)""" + + @staticmethod + def TCOD_image_set_key_color(image: Any, key_color: Any, /) -> None: + """void TCOD_image_set_key_color(TCOD_Image *image, TCOD_color_t key_color)""" + + @staticmethod + def TCOD_image_set_key_color_wrapper(image: Any, key_color: Any, /) -> None: + """void TCOD_image_set_key_color_wrapper(TCOD_image_t image, colornum_t key_color)""" + + @staticmethod + def TCOD_image_vflip(image: Any, /) -> None: + """void TCOD_image_vflip(TCOD_Image *image)""" + + @staticmethod + def TCOD_lex_delete(lex: Any, /) -> None: + """void TCOD_lex_delete(TCOD_lex_t *lex)""" + + @staticmethod + def TCOD_lex_expect_token_type(lex: Any, token_type: int, /) -> bool: + """bool TCOD_lex_expect_token_type(TCOD_lex_t *lex, int token_type)""" + + @staticmethod + def TCOD_lex_expect_token_value(lex: Any, token_type: int, token_value: Any, /) -> bool: + """bool TCOD_lex_expect_token_value(TCOD_lex_t *lex, int token_type, const char *token_value)""" + + @staticmethod + def TCOD_lex_get_last_javadoc(lex: Any, /) -> Any: + """char *TCOD_lex_get_last_javadoc(TCOD_lex_t *lex)""" + + @staticmethod + def TCOD_lex_get_token_name(token_type: int, /) -> Any: + """const char *TCOD_lex_get_token_name(int token_type)""" + + @staticmethod + def TCOD_lex_hextoint(c: Any, /) -> int: + """int TCOD_lex_hextoint(char c)""" + + @staticmethod + def TCOD_lex_new( + symbols: Any, + keywords: Any, + simpleComment: Any, + commentStart: Any, + commentStop: Any, + javadocCommentStart: Any, + stringDelim: Any, + flags: int, + /, + ) -> Any: + """TCOD_lex_t *TCOD_lex_new(const char * const *symbols, const char * const *keywords, const char *simpleComment, const char *commentStart, const char *commentStop, const char *javadocCommentStart, const char *stringDelim, int flags)""" + + @staticmethod + def TCOD_lex_new_intern() -> Any: + """TCOD_lex_t *TCOD_lex_new_intern(void)""" + + @staticmethod + def TCOD_lex_parse(lex: Any, /) -> int: + """int TCOD_lex_parse(TCOD_lex_t *lex)""" + + @staticmethod + def TCOD_lex_parse_until_token_type(lex: Any, token_type: int, /) -> int: + """int TCOD_lex_parse_until_token_type(TCOD_lex_t *lex, int token_type)""" + + @staticmethod + def TCOD_lex_parse_until_token_value(lex: Any, token_value: Any, /) -> int: + """int TCOD_lex_parse_until_token_value(TCOD_lex_t *lex, const char *token_value)""" + + @staticmethod + def TCOD_lex_restore(lex: Any, savepoint: Any, /) -> None: + """void TCOD_lex_restore(TCOD_lex_t *lex, TCOD_lex_t *savepoint)""" + + @staticmethod + def TCOD_lex_savepoint(lex: Any, savepoint: Any, /) -> None: + """void TCOD_lex_savepoint(TCOD_lex_t *lex, TCOD_lex_t *savepoint)""" + + @staticmethod + def TCOD_lex_set_data_buffer(lex: Any, dat: Any, /) -> None: + """void TCOD_lex_set_data_buffer(TCOD_lex_t *lex, char *dat)""" + + @staticmethod + def TCOD_lex_set_data_file(lex: Any, filename: Any, /) -> bool: + """bool TCOD_lex_set_data_file(TCOD_lex_t *lex, const char *filename)""" + + @staticmethod + def TCOD_line(xFrom: int, yFrom: int, xTo: int, yTo: int, listener: Any, /) -> bool: + """bool TCOD_line(int xFrom, int yFrom, int xTo, int yTo, TCOD_line_listener_t listener)""" + + @staticmethod + def TCOD_line_init(xFrom: int, yFrom: int, xTo: int, yTo: int, /) -> None: + """void TCOD_line_init(int xFrom, int yFrom, int xTo, int yTo)""" + + @staticmethod + def TCOD_line_init_mt(xFrom: int, yFrom: int, xTo: int, yTo: int, data: Any, /) -> None: + """void TCOD_line_init_mt(int xFrom, int yFrom, int xTo, int yTo, TCOD_bresenham_data_t *data)""" + + @staticmethod + def TCOD_line_mt(xFrom: int, yFrom: int, xTo: int, yTo: int, listener: Any, data: Any, /) -> bool: + """bool TCOD_line_mt(int xFrom, int yFrom, int xTo, int yTo, TCOD_line_listener_t listener, TCOD_bresenham_data_t *data)""" + + @staticmethod + def TCOD_line_step(xCur: Any, yCur: Any, /) -> bool: + """bool TCOD_line_step(int *xCur, int *yCur)""" + + @staticmethod + def TCOD_line_step_mt(xCur: Any, yCur: Any, data: Any, /) -> bool: + """bool TCOD_line_step_mt(int *xCur, int *yCur, TCOD_bresenham_data_t *data)""" + + @staticmethod + def TCOD_list_add_all(l: Any, l2: Any, /) -> None: + """void TCOD_list_add_all(TCOD_list_t l, TCOD_list_t l2)""" + + @staticmethod + def TCOD_list_allocate(nb_elements: int, /) -> Any: + """TCOD_list_t TCOD_list_allocate(int nb_elements)""" + + @staticmethod + def TCOD_list_begin(l: Any, /) -> Any: + """void **TCOD_list_begin(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_clear(l: Any, /) -> None: + """void TCOD_list_clear(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_clear_and_delete(l: Any, /) -> None: + """void TCOD_list_clear_and_delete(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_contains(l: Any, elt: Any, /) -> bool: + """bool TCOD_list_contains(TCOD_list_t l, const void *elt)""" + + @staticmethod + def TCOD_list_delete(l: Any, /) -> None: + """void TCOD_list_delete(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_duplicate(l: Any, /) -> Any: + """TCOD_list_t TCOD_list_duplicate(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_end(l: Any, /) -> Any: + """void **TCOD_list_end(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_get(l: Any, idx: int, /) -> Any: + """void *TCOD_list_get(TCOD_list_t l, int idx)""" + + @staticmethod + def TCOD_list_insert_before(l: Any, elt: Any, before: int, /) -> Any: + """void **TCOD_list_insert_before(TCOD_list_t l, const void *elt, int before)""" + + @staticmethod + def TCOD_list_is_empty(l: Any, /) -> bool: + """bool TCOD_list_is_empty(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_new() -> Any: + """TCOD_list_t TCOD_list_new(void)""" + + @staticmethod + def TCOD_list_peek(l: Any, /) -> Any: + """void *TCOD_list_peek(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_pop(l: Any, /) -> Any: + """void *TCOD_list_pop(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_push(l: Any, elt: Any, /) -> None: + """void TCOD_list_push(TCOD_list_t l, const void *elt)""" + + @staticmethod + def TCOD_list_remove(l: Any, elt: Any, /) -> None: + """void TCOD_list_remove(TCOD_list_t l, const void *elt)""" + + @staticmethod + def TCOD_list_remove_fast(l: Any, elt: Any, /) -> None: + """void TCOD_list_remove_fast(TCOD_list_t l, const void *elt)""" + + @staticmethod + def TCOD_list_remove_iterator(l: Any, elt: Any, /) -> Any: + """void **TCOD_list_remove_iterator(TCOD_list_t l, void **elt)""" + + @staticmethod + def TCOD_list_remove_iterator_fast(l: Any, elt: Any, /) -> Any: + """void **TCOD_list_remove_iterator_fast(TCOD_list_t l, void **elt)""" + + @staticmethod + def TCOD_list_reverse(l: Any, /) -> None: + """void TCOD_list_reverse(TCOD_list_t l)""" + + @staticmethod + def TCOD_list_set(l: Any, elt: Any, idx: int, /) -> None: + """void TCOD_list_set(TCOD_list_t l, const void *elt, int idx)""" + + @staticmethod + def TCOD_list_set_size(l: Any, size: int, /) -> None: + """void TCOD_list_set_size(TCOD_list_t l, int size)""" + + @staticmethod + def TCOD_list_size(l: Any, /) -> int: + """int TCOD_list_size(TCOD_list_t l)""" + + @staticmethod + def TCOD_load_bdf(path: Any, /) -> Any: + """TCOD_Tileset *TCOD_load_bdf(const char *path)""" + + @staticmethod + def TCOD_load_bdf_memory(size: int, buffer: Any, /) -> Any: + """TCOD_Tileset *TCOD_load_bdf_memory(int size, const unsigned char *buffer)""" + + @staticmethod + def TCOD_load_library(path: Any, /) -> Any: + """TCOD_library_t TCOD_load_library(const char *path)""" + + @staticmethod + def TCOD_load_truetype_font_(path: Any, tile_width: int, tile_height: int, /) -> Any: + """TCOD_Tileset *TCOD_load_truetype_font_(const char *path, int tile_width, int tile_height)""" + + @staticmethod + def TCOD_load_xp(path: Any, n: int, out: Any, /) -> int: + """int TCOD_load_xp(const char *path, int n, TCOD_Console **out)""" + + @staticmethod + def TCOD_load_xp_from_memory(n_data: int, data: Any, n_out: int, out: Any, /) -> int: + """int TCOD_load_xp_from_memory(int n_data, const unsigned char *data, int n_out, TCOD_Console **out)""" + + @staticmethod + def TCOD_log_verbose_(msg: Any, level: int, source: Any, line: int, /) -> None: + """void TCOD_log_verbose_(const char *msg, int level, const char *source, int line)""" + + @staticmethod + def TCOD_log_verbose_fmt_(level: int, source: Any, line: int, fmt: Any, /, *__args: Any) -> None: + """void TCOD_log_verbose_fmt_(int level, const char *source, int line, const char *fmt, ...)""" + + @staticmethod + def TCOD_map_clear(map: Any, transparent: bool, walkable: bool, /) -> None: + """void TCOD_map_clear(TCOD_Map *map, bool transparent, bool walkable)""" + + @staticmethod + def TCOD_map_compute_fov(map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, algo: Any, /) -> Any: + """TCOD_Error TCOD_map_compute_fov(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls, TCOD_fov_algorithm_t algo)""" + + @staticmethod + def TCOD_map_compute_fov_circular_raycasting( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_circular_raycasting(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls)""" + + @staticmethod + def TCOD_map_compute_fov_diamond_raycasting( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_diamond_raycasting(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls)""" + + @staticmethod + def TCOD_map_compute_fov_permissive2( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, permissiveness: int, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_permissive2(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls, int permissiveness)""" + + @staticmethod + def TCOD_map_compute_fov_recursive_shadowcasting( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_recursive_shadowcasting(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls)""" + + @staticmethod + def TCOD_map_compute_fov_restrictive_shadowcasting( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_restrictive_shadowcasting(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls)""" + + @staticmethod + def TCOD_map_compute_fov_symmetric_shadowcast( + map: Any, pov_x: int, pov_y: int, max_radius: int, light_walls: bool, / + ) -> Any: + """TCOD_Error TCOD_map_compute_fov_symmetric_shadowcast(TCOD_Map *map, int pov_x, int pov_y, int max_radius, bool light_walls)""" + + @staticmethod + def TCOD_map_copy(source: Any, dest: Any, /) -> Any: + """TCOD_Error TCOD_map_copy(const TCOD_Map *source, TCOD_Map *dest)""" + + @staticmethod + def TCOD_map_delete(map: Any, /) -> None: + """void TCOD_map_delete(TCOD_Map *map)""" + + @staticmethod + def TCOD_map_get_height(map: Any, /) -> int: + """int TCOD_map_get_height(const TCOD_Map *map)""" + + @staticmethod + def TCOD_map_get_nb_cells(map: Any, /) -> int: + """int TCOD_map_get_nb_cells(const TCOD_Map *map)""" + + @staticmethod + def TCOD_map_get_width(map: Any, /) -> int: + """int TCOD_map_get_width(const TCOD_Map *map)""" + + @staticmethod + def TCOD_map_in_bounds(map: Any, x: int, y: int, /) -> bool: + """inline static bool TCOD_map_in_bounds(const struct TCOD_Map *map, int x, int y)""" + + @staticmethod + def TCOD_map_is_in_fov(map: Any, x: int, y: int, /) -> bool: + """bool TCOD_map_is_in_fov(const TCOD_Map *map, int x, int y)""" + + @staticmethod + def TCOD_map_is_transparent(map: Any, x: int, y: int, /) -> bool: + """bool TCOD_map_is_transparent(const TCOD_Map *map, int x, int y)""" + + @staticmethod + def TCOD_map_is_walkable(map: Any, x: int, y: int, /) -> bool: + """bool TCOD_map_is_walkable(TCOD_Map *map, int x, int y)""" + + @staticmethod + def TCOD_map_new(width: int, height: int, /) -> Any: + """TCOD_Map *TCOD_map_new(int width, int height)""" + + @staticmethod + def TCOD_map_postprocess(map: Any, pov_x: int, pov_y: int, radius: int, /) -> Any: + """TCOD_Error TCOD_map_postprocess(TCOD_Map *map, int pov_x, int pov_y, int radius)""" + + @staticmethod + def TCOD_map_set_in_fov(map: Any, x: int, y: int, fov: bool, /) -> None: + """void TCOD_map_set_in_fov(TCOD_Map *map, int x, int y, bool fov)""" + + @staticmethod + def TCOD_map_set_properties(map: Any, x: int, y: int, is_transparent: bool, is_walkable: bool, /) -> None: + """void TCOD_map_set_properties(TCOD_Map *map, int x, int y, bool is_transparent, bool is_walkable)""" + + @staticmethod + def TCOD_minheap_heapify(minheap: Any, /) -> None: + """void TCOD_minheap_heapify(struct TCOD_Heap *minheap)""" + + @staticmethod + def TCOD_minheap_pop(minheap: Any, out: Any, /) -> None: + """void TCOD_minheap_pop(struct TCOD_Heap *minheap, void *out)""" + + @staticmethod + def TCOD_minheap_push(minheap: Any, priority: int, data: Any, /) -> int: + """int TCOD_minheap_push(struct TCOD_Heap *minheap, int priority, const void *data)""" + + @staticmethod + def TCOD_mouse_get_status() -> Any: + """TCOD_mouse_t TCOD_mouse_get_status(void)""" + + @staticmethod + def TCOD_mouse_get_status_wrapper(holder: Any, /) -> None: + """void TCOD_mouse_get_status_wrapper(TCOD_mouse_t *holder)""" + + @staticmethod + def TCOD_mouse_includes_touch(enable: bool, /) -> None: + """void TCOD_mouse_includes_touch(bool enable)""" + + @staticmethod + def TCOD_mouse_is_cursor_visible() -> bool: + """bool TCOD_mouse_is_cursor_visible(void)""" + + @staticmethod + def TCOD_mouse_move(x: int, y: int, /) -> None: + """void TCOD_mouse_move(int x, int y)""" + + @staticmethod + def TCOD_mouse_show_cursor(visible: bool, /) -> None: + """void TCOD_mouse_show_cursor(bool visible)""" + + @staticmethod + def TCOD_mutex_delete(mut: Any, /) -> None: + """void TCOD_mutex_delete(TCOD_mutex_t mut)""" + + @staticmethod + def TCOD_mutex_in(mut: Any, /) -> None: + """void TCOD_mutex_in(TCOD_mutex_t mut)""" + + @staticmethod + def TCOD_mutex_new() -> Any: + """TCOD_mutex_t TCOD_mutex_new(void)""" + + @staticmethod + def TCOD_mutex_out(mut: Any, /) -> None: + """void TCOD_mutex_out(TCOD_mutex_t mut)""" + + @staticmethod + def TCOD_namegen_destroy() -> None: + """void TCOD_namegen_destroy(void)""" + + @staticmethod + def TCOD_namegen_generate(name: Any, allocate: bool, /) -> Any: + """char *TCOD_namegen_generate(const char *name, bool allocate)""" + + @staticmethod + def TCOD_namegen_generate_custom(name: Any, rule: Any, allocate: bool, /) -> Any: + """char *TCOD_namegen_generate_custom(const char *name, const char *rule, bool allocate)""" + + @staticmethod + def TCOD_namegen_get_nb_sets_wrapper() -> int: + """int TCOD_namegen_get_nb_sets_wrapper(void)""" + + @staticmethod + def TCOD_namegen_get_sets() -> Any: + """TCOD_list_t TCOD_namegen_get_sets(void)""" + + @staticmethod + def TCOD_namegen_get_sets_wrapper(sets: Any, /) -> None: + """void TCOD_namegen_get_sets_wrapper(char **sets)""" + + @staticmethod + def TCOD_namegen_parse(filename: Any, random: Any, /) -> None: + """void TCOD_namegen_parse(const char *filename, TCOD_Random *random)""" + + @staticmethod + def TCOD_noise_delete(noise: Any, /) -> None: + """void TCOD_noise_delete(TCOD_Noise *noise)""" + + @staticmethod + def TCOD_noise_get(noise: Any, f: Any, /) -> Any: + """float TCOD_noise_get(TCOD_Noise *noise, const float *f)""" + + @staticmethod + def TCOD_noise_get_ex(noise: Any, f: Any, type: Any, /) -> Any: + """float TCOD_noise_get_ex(TCOD_Noise *noise, const float *f, TCOD_noise_type_t type)""" + + @staticmethod + def TCOD_noise_get_fbm(noise: Any, f: Any, octaves: Any, /) -> Any: + """float TCOD_noise_get_fbm(TCOD_Noise *noise, const float *f, float octaves)""" + + @staticmethod + def TCOD_noise_get_fbm_ex(noise: Any, f: Any, octaves: Any, type: Any, /) -> Any: + """float TCOD_noise_get_fbm_ex(TCOD_Noise *noise, const float *f, float octaves, TCOD_noise_type_t type)""" + + @staticmethod + def TCOD_noise_get_fbm_vectorized( + noise: Any, type: Any, octaves: Any, n: int, x: Any, y: Any, z: Any, w: Any, out: Any, / + ) -> None: + """void TCOD_noise_get_fbm_vectorized(TCOD_Noise *noise, TCOD_noise_type_t type, float octaves, int n, float *x, float *y, float *z, float *w, float *out)""" + + @staticmethod + def TCOD_noise_get_turbulence(noise: Any, f: Any, octaves: Any, /) -> Any: + """float TCOD_noise_get_turbulence(TCOD_Noise *noise, const float *f, float octaves)""" + + @staticmethod + def TCOD_noise_get_turbulence_ex(noise: Any, f: Any, octaves: Any, type: Any, /) -> Any: + """float TCOD_noise_get_turbulence_ex(TCOD_Noise *noise, const float *f, float octaves, TCOD_noise_type_t type)""" + + @staticmethod + def TCOD_noise_get_turbulence_vectorized( + noise: Any, type: Any, octaves: Any, n: int, x: Any, y: Any, z: Any, w: Any, out: Any, / + ) -> None: + """void TCOD_noise_get_turbulence_vectorized(TCOD_Noise *noise, TCOD_noise_type_t type, float octaves, int n, float *x, float *y, float *z, float *w, float *out)""" + + @staticmethod + def TCOD_noise_get_vectorized(noise: Any, type: Any, n: int, x: Any, y: Any, z: Any, w: Any, out: Any, /) -> None: + """void TCOD_noise_get_vectorized(TCOD_Noise *noise, TCOD_noise_type_t type, int n, float *x, float *y, float *z, float *w, float *out)""" + + @staticmethod + def TCOD_noise_new(dimensions: int, hurst: Any, lacunarity: Any, random: Any, /) -> Any: + """TCOD_Noise *TCOD_noise_new(int dimensions, float hurst, float lacunarity, TCOD_Random *random)""" + + @staticmethod + def TCOD_noise_set_type(noise: Any, type: Any, /) -> None: + """void TCOD_noise_set_type(TCOD_Noise *noise, TCOD_noise_type_t type)""" + + @staticmethod + def TCOD_parse_bool_value() -> Any: + """TCOD_value_t TCOD_parse_bool_value(void)""" + + @staticmethod + def TCOD_parse_char_value() -> Any: + """TCOD_value_t TCOD_parse_char_value(void)""" + + @staticmethod + def TCOD_parse_color_value() -> Any: + """TCOD_value_t TCOD_parse_color_value(void)""" + + @staticmethod + def TCOD_parse_dice_value() -> Any: + """TCOD_value_t TCOD_parse_dice_value(void)""" + + @staticmethod + def TCOD_parse_float_value() -> Any: + """TCOD_value_t TCOD_parse_float_value(void)""" + + @staticmethod + def TCOD_parse_integer_value() -> Any: + """TCOD_value_t TCOD_parse_integer_value(void)""" + + @staticmethod + def TCOD_parse_property_value(parser: Any, def_: Any, propname: Any, list: bool, /) -> Any: + """TCOD_value_t TCOD_parse_property_value(TCOD_Parser *parser, TCOD_ParserStruct *def, char *propname, bool list)""" + + @staticmethod + def TCOD_parse_string_value() -> Any: + """TCOD_value_t TCOD_parse_string_value(void)""" + + @staticmethod + def TCOD_parse_value_list_value(def_: Any, list_num: int, /) -> Any: + """TCOD_value_t TCOD_parse_value_list_value(TCOD_ParserStruct *def, int list_num)""" + + @staticmethod + def TCOD_parser_delete(parser: Any, /) -> None: + """void TCOD_parser_delete(TCOD_Parser *parser)""" + + @staticmethod + def TCOD_parser_error(msg: Any, /, *__args: Any) -> None: + """void TCOD_parser_error(const char *msg, ...)""" + + @staticmethod + def TCOD_parser_get_bool_property(parser: Any, name: Any, /) -> bool: + """bool TCOD_parser_get_bool_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_char_property(parser: Any, name: Any, /) -> int: + """int TCOD_parser_get_char_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_color_property(parser: Any, name: Any, /) -> Any: + """TCOD_color_t TCOD_parser_get_color_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_color_property_wrapper(parser: Any, name: Any, /) -> Any: + """colornum_t TCOD_parser_get_color_property_wrapper(TCOD_parser_t parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_custom_property(parser: Any, name: Any, /) -> Any: + """void *TCOD_parser_get_custom_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_dice_property(parser: Any, name: Any, /) -> Any: + """TCOD_dice_t TCOD_parser_get_dice_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_dice_property_py(parser: Any, name: Any, dice: Any, /) -> None: + """void TCOD_parser_get_dice_property_py(TCOD_Parser *parser, const char *name, TCOD_dice_t *dice)""" + + @staticmethod + def TCOD_parser_get_float_property(parser: Any, name: Any, /) -> Any: + """float TCOD_parser_get_float_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_int_property(parser: Any, name: Any, /) -> int: + """int TCOD_parser_get_int_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_get_list_property(parser: Any, name: Any, type: Any, /) -> Any: + """TCOD_list_t TCOD_parser_get_list_property(TCOD_Parser *parser, const char *name, TCOD_value_type_t type)""" + + @staticmethod + def TCOD_parser_get_string_property(parser: Any, name: Any, /) -> Any: + """const char *TCOD_parser_get_string_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_has_property(parser: Any, name: Any, /) -> bool: + """bool TCOD_parser_has_property(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_new() -> Any: + """TCOD_Parser *TCOD_parser_new(void)""" + + @staticmethod + def TCOD_parser_new_custom_type(parser: Any, custom_type_parser: Any, /) -> Any: + """TCOD_value_type_t TCOD_parser_new_custom_type(TCOD_Parser *parser, TCOD_parser_custom_t custom_type_parser)""" + + @staticmethod + def TCOD_parser_new_struct(parser: Any, name: Any, /) -> Any: + """TCOD_ParserStruct *TCOD_parser_new_struct(TCOD_Parser *parser, const char *name)""" + + @staticmethod + def TCOD_parser_run(parser: Any, filename: Any, listener: Any, /) -> None: + """void TCOD_parser_run(TCOD_Parser *parser, const char *filename, TCOD_parser_listener_t *listener)""" + + @staticmethod + def TCOD_path_compute(path: Any, ox: int, oy: int, dx: int, dy: int, /) -> bool: + """bool TCOD_path_compute(TCOD_path_t path, int ox, int oy, int dx, int dy)""" + + @staticmethod + def TCOD_path_delete(path: Any, /) -> None: + """void TCOD_path_delete(TCOD_path_t path)""" + + @staticmethod + def TCOD_path_get(path: Any, index: int, x: Any, y: Any, /) -> None: + """void TCOD_path_get(TCOD_path_t path, int index, int *x, int *y)""" + + @staticmethod + def TCOD_path_get_destination(path: Any, x: Any, y: Any, /) -> None: + """void TCOD_path_get_destination(TCOD_path_t path, int *x, int *y)""" + + @staticmethod + def TCOD_path_get_origin(path: Any, x: Any, y: Any, /) -> None: + """void TCOD_path_get_origin(TCOD_path_t path, int *x, int *y)""" + + @staticmethod + def TCOD_path_is_empty(path: Any, /) -> bool: + """bool TCOD_path_is_empty(TCOD_path_t path)""" + + @staticmethod + def TCOD_path_new_using_function( + map_width: int, map_height: int, func: Any, user_data: Any, diagonalCost: Any, / + ) -> Any: + """TCOD_path_t TCOD_path_new_using_function(int map_width, int map_height, TCOD_path_func_t func, void *user_data, float diagonalCost)""" + + @staticmethod + def TCOD_path_new_using_map(map: Any, diagonalCost: Any, /) -> Any: + """TCOD_path_t TCOD_path_new_using_map(TCOD_Map *map, float diagonalCost)""" + + @staticmethod + def TCOD_path_reverse(path: Any, /) -> None: + """void TCOD_path_reverse(TCOD_path_t path)""" + + @staticmethod + def TCOD_path_size(path: Any, /) -> int: + """int TCOD_path_size(TCOD_path_t path)""" + + @staticmethod + def TCOD_path_walk(path: Any, x: Any, y: Any, recalculate_when_needed: bool, /) -> bool: + """bool TCOD_path_walk(TCOD_path_t path, int *x, int *y, bool recalculate_when_needed)""" + + @staticmethod + def TCOD_pf_compute(path: Any, /) -> int: + """int TCOD_pf_compute(struct TCOD_Pathfinder *path)""" + + @staticmethod + def TCOD_pf_compute_step(path: Any, /) -> int: + """int TCOD_pf_compute_step(struct TCOD_Pathfinder *path)""" + + @staticmethod + def TCOD_pf_delete(path: Any, /) -> None: + """void TCOD_pf_delete(struct TCOD_Pathfinder *path)""" + + @staticmethod + def TCOD_pf_new(ndim: int, shape: Any, /) -> Any: + """struct TCOD_Pathfinder *TCOD_pf_new(int ndim, const size_t *shape)""" + + @staticmethod + def TCOD_pf_recompile(path: Any, /) -> int: + """int TCOD_pf_recompile(struct TCOD_Pathfinder *path)""" + + @staticmethod + def TCOD_pf_set_distance_pointer(path: Any, data: Any, int_type: int, strides: Any, /) -> None: + """void TCOD_pf_set_distance_pointer(struct TCOD_Pathfinder *path, void *data, int int_type, const size_t *strides)""" + + @staticmethod + def TCOD_pf_set_graph2d_pointer( + path: Any, data: Any, int_type: int, strides: Any, cardinal: int, diagonal: int, / + ) -> None: + """void TCOD_pf_set_graph2d_pointer(struct TCOD_Pathfinder *path, void *data, int int_type, const size_t *strides, int cardinal, int diagonal)""" + + @staticmethod + def TCOD_pf_set_traversal_pointer(path: Any, data: Any, int_type: int, strides: Any, /) -> None: + """void TCOD_pf_set_traversal_pointer(struct TCOD_Pathfinder *path, void *data, int int_type, const size_t *strides)""" + + @staticmethod + def TCOD_printf_rgb(console: Any, params: Any, fmt: Any, /, *__args: Any) -> int: + """int TCOD_printf_rgb(TCOD_Console *console, TCOD_PrintParamsRGB params, const char *fmt, ...)""" + + @staticmethod + def TCOD_printn_rgb(console: Any, params: Any, n: int, str: Any, /) -> int: + """int TCOD_printn_rgb(TCOD_Console *console, TCOD_PrintParamsRGB params, int n, const char *str)""" + + @staticmethod + def TCOD_quit() -> None: + """void TCOD_quit(void)""" + + @staticmethod + def TCOD_random_delete(mersenne: Any, /) -> None: + """void TCOD_random_delete(TCOD_Random *mersenne)""" + + @staticmethod + def TCOD_random_dice_new(s: Any, /) -> Any: + """TCOD_dice_t TCOD_random_dice_new(const char *s)""" + + @staticmethod + def TCOD_random_dice_roll(mersenne: Any, dice: Any, /) -> int: + """int TCOD_random_dice_roll(TCOD_Random *mersenne, TCOD_dice_t dice)""" + + @staticmethod + def TCOD_random_dice_roll_s(mersenne: Any, s: Any, /) -> int: + """int TCOD_random_dice_roll_s(TCOD_Random *mersenne, const char *s)""" + + @staticmethod + def TCOD_random_get_d(mersenne: Any, min: Any, max: Any, /) -> Any: + """double TCOD_random_get_d(TCOD_random_t mersenne, double min, double max)""" + + @staticmethod + def TCOD_random_get_double(mersenne: Any, min: Any, max: Any, /) -> Any: + """double TCOD_random_get_double(TCOD_Random *mersenne, double min, double max)""" + + @staticmethod + def TCOD_random_get_double_mean(mersenne: Any, min: Any, max: Any, mean: Any, /) -> Any: + """double TCOD_random_get_double_mean(TCOD_Random *mersenne, double min, double max, double mean)""" + + @staticmethod + def TCOD_random_get_float(mersenne: Any, min: Any, max: Any, /) -> Any: + """float TCOD_random_get_float(TCOD_Random *mersenne, float min, float max)""" + + @staticmethod + def TCOD_random_get_float_mean(mersenne: Any, min: Any, max: Any, mean: Any, /) -> Any: + """float TCOD_random_get_float_mean(TCOD_Random *mersenne, float min, float max, float mean)""" + + @staticmethod + def TCOD_random_get_gaussian_double(mersenne: Any, mean: Any, std_deviation: Any, /) -> Any: + """double TCOD_random_get_gaussian_double(TCOD_random_t mersenne, double mean, double std_deviation)""" + + @staticmethod + def TCOD_random_get_gaussian_double_inv(mersenne: Any, mean: Any, std_deviation: Any, /) -> Any: + """double TCOD_random_get_gaussian_double_inv(TCOD_random_t mersenne, double mean, double std_deviation)""" + + @staticmethod + def TCOD_random_get_gaussian_double_range(mersenne: Any, min: Any, max: Any, /) -> Any: + """double TCOD_random_get_gaussian_double_range(TCOD_random_t mersenne, double min, double max)""" + + @staticmethod + def TCOD_random_get_gaussian_double_range_custom(mersenne: Any, min: Any, max: Any, mean: Any, /) -> Any: + """double TCOD_random_get_gaussian_double_range_custom(TCOD_random_t mersenne, double min, double max, double mean)""" + + @staticmethod + def TCOD_random_get_gaussian_double_range_custom_inv(mersenne: Any, min: Any, max: Any, mean: Any, /) -> Any: + """double TCOD_random_get_gaussian_double_range_custom_inv(TCOD_random_t mersenne, double min, double max, double mean)""" + + @staticmethod + def TCOD_random_get_gaussian_double_range_inv(mersenne: Any, min: Any, max: Any, /) -> Any: + """double TCOD_random_get_gaussian_double_range_inv(TCOD_random_t mersenne, double min, double max)""" + + @staticmethod + def TCOD_random_get_i(mersenne: Any, min: int, max: int, /) -> int: + """int TCOD_random_get_i(TCOD_random_t mersenne, int min, int max)""" + + @staticmethod + def TCOD_random_get_instance() -> Any: + """TCOD_Random *TCOD_random_get_instance(void)""" + + @staticmethod + def TCOD_random_get_int(mersenne: Any, min: int, max: int, /) -> int: + """int TCOD_random_get_int(TCOD_Random *mersenne, int min, int max)""" + + @staticmethod + def TCOD_random_get_int_mean(mersenne: Any, min: int, max: int, mean: int, /) -> int: + """int TCOD_random_get_int_mean(TCOD_Random *mersenne, int min, int max, int mean)""" + + @staticmethod + def TCOD_random_new(algo: Any, /) -> Any: + """TCOD_Random *TCOD_random_new(TCOD_random_algo_t algo)""" + + @staticmethod + def TCOD_random_new_from_seed(algo: Any, seed: Any, /) -> Any: + """TCOD_Random *TCOD_random_new_from_seed(TCOD_random_algo_t algo, uint32_t seed)""" + + @staticmethod + def TCOD_random_restore(mersenne: Any, backup: Any, /) -> None: + """void TCOD_random_restore(TCOD_Random *mersenne, TCOD_Random *backup)""" + + @staticmethod + def TCOD_random_save(mersenne: Any, /) -> Any: + """TCOD_Random *TCOD_random_save(TCOD_Random *mersenne)""" + + @staticmethod + def TCOD_random_set_distribution(mersenne: Any, distribution: Any, /) -> None: + """void TCOD_random_set_distribution(TCOD_Random *mersenne, TCOD_distribution_t distribution)""" + + @staticmethod + def TCOD_renderer_init_sdl2( + x: int, y: int, width: int, height: int, title: Any, window_flags: int, vsync: int, tileset: Any, / + ) -> Any: + """struct TCOD_Context *TCOD_renderer_init_sdl2(int x, int y, int width, int height, const char *title, int window_flags, int vsync, struct TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_renderer_init_sdl3(window_props: Any, renderer_props: Any, tileset: Any, /) -> Any: + """TCOD_Context *TCOD_renderer_init_sdl3(SDL_PropertiesID window_props, SDL_PropertiesID renderer_props, struct TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_renderer_init_xterm( + window_x: int, window_y: int, pixel_width: int, pixel_height: int, columns: int, rows: int, window_title: Any, / + ) -> Any: + """TCOD_Context *TCOD_renderer_init_xterm(int window_x, int window_y, int pixel_width, int pixel_height, int columns, int rows, const char *window_title)""" + + @staticmethod + def TCOD_rng_splitmix64_next(state: Any, /) -> Any: + """inline static uint64_t TCOD_rng_splitmix64_next(uint64_t *state)""" + + @staticmethod + def TCOD_save_xp(n: int, consoles: Any, path: Any, compress_level: int, /) -> Any: + """TCOD_Error TCOD_save_xp(int n, const TCOD_Console * const *consoles, const char *path, int compress_level)""" + + @staticmethod + def TCOD_save_xp_to_memory(n_consoles: int, consoles: Any, n_out: int, out: Any, compression_level: int, /) -> int: + """int TCOD_save_xp_to_memory(int n_consoles, const TCOD_Console * const *consoles, int n_out, unsigned char *out, int compression_level)""" + + @staticmethod + def TCOD_sdl2_atlas_delete(atlas: Any, /) -> None: + """void TCOD_sdl2_atlas_delete(struct TCOD_TilesetAtlasSDL2 *atlas)""" + + @staticmethod + def TCOD_sdl2_atlas_new(renderer: Any, tileset: Any, /) -> Any: + """struct TCOD_TilesetAtlasSDL2 *TCOD_sdl2_atlas_new(struct SDL_Renderer *renderer, struct TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_sdl2_render_texture(atlas: Any, console: Any, cache: Any, target: Any, /) -> Any: + """TCOD_Error TCOD_sdl2_render_texture(const struct TCOD_TilesetAtlasSDL2 *atlas, const struct TCOD_Console *console, struct TCOD_Console *cache, struct SDL_Texture *target)""" + + @staticmethod + def TCOD_sdl2_render_texture_setup(atlas: Any, console: Any, cache: Any, target: Any, /) -> Any: + """TCOD_Error TCOD_sdl2_render_texture_setup(const struct TCOD_TilesetAtlasSDL2 *atlas, const struct TCOD_Console *console, struct TCOD_Console **cache, struct SDL_Texture **target)""" + + @staticmethod + def TCOD_semaphore_delete(sem: Any, /) -> None: + """void TCOD_semaphore_delete(TCOD_semaphore_t sem)""" + + @staticmethod + def TCOD_semaphore_lock(sem: Any, /) -> None: + """void TCOD_semaphore_lock(TCOD_semaphore_t sem)""" + + @staticmethod + def TCOD_semaphore_new(initVal: int, /) -> Any: + """TCOD_semaphore_t TCOD_semaphore_new(int initVal)""" + + @staticmethod + def TCOD_semaphore_unlock(sem: Any, /) -> None: + """void TCOD_semaphore_unlock(TCOD_semaphore_t sem)""" + + @staticmethod + def TCOD_set_default_tileset(tileset: Any, /) -> None: + """void TCOD_set_default_tileset(TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_set_error(msg: Any, /) -> Any: + """TCOD_Error TCOD_set_error(const char *msg)""" + + @staticmethod + def TCOD_set_errorf(fmt: Any, /, *__args: Any) -> Any: + """TCOD_Error TCOD_set_errorf(const char *fmt, ...)""" + + @staticmethod + def TCOD_set_log_callback(callback: Any, userdata: Any, /) -> None: + """void TCOD_set_log_callback(TCOD_LoggingCallback callback, void *userdata)""" + + @staticmethod + def TCOD_set_log_level(level: int, /) -> None: + """void TCOD_set_log_level(int level)""" + + @staticmethod + def TCOD_strcasecmp(s1: Any, s2: Any, /) -> int: + """int TCOD_strcasecmp(const char *s1, const char *s2)""" + + @staticmethod + def TCOD_strdup(s: Any, /) -> Any: + """char *TCOD_strdup(const char *s)""" + + @staticmethod + def TCOD_strncasecmp(s1: Any, s2: Any, n: int, /) -> int: + """int TCOD_strncasecmp(const char *s1, const char *s2, size_t n)""" + + @staticmethod + def TCOD_struct_add_flag(def_: Any, propname: Any, /) -> None: + """void TCOD_struct_add_flag(TCOD_ParserStruct *def, const char *propname)""" + + @staticmethod + def TCOD_struct_add_list_property(def_: Any, name: Any, type: Any, mandatory: bool, /) -> None: + """void TCOD_struct_add_list_property(TCOD_ParserStruct *def, const char *name, TCOD_value_type_t type, bool mandatory)""" + + @staticmethod + def TCOD_struct_add_property(def_: Any, name: Any, type: Any, mandatory: bool, /) -> None: + """void TCOD_struct_add_property(TCOD_ParserStruct *def, const char *name, TCOD_value_type_t type, bool mandatory)""" + + @staticmethod + def TCOD_struct_add_structure(def_: Any, sub_structure: Any, /) -> None: + """void TCOD_struct_add_structure(TCOD_ParserStruct *def, const TCOD_ParserStruct *sub_structure)""" + + @staticmethod + def TCOD_struct_add_value_list(def_: Any, name: Any, value_list: Any, mandatory: bool, /) -> None: + """void TCOD_struct_add_value_list(TCOD_ParserStruct *def, const char *name, const char * const *value_list, bool mandatory)""" + + @staticmethod + def TCOD_struct_add_value_list_sized(def_: Any, name: Any, value_list: Any, size: int, mandatory: bool, /) -> None: + """void TCOD_struct_add_value_list_sized(TCOD_ParserStruct *def, const char *name, const char * const *value_list, int size, bool mandatory)""" + + @staticmethod + def TCOD_struct_get_name(def_: Any, /) -> Any: + """const char *TCOD_struct_get_name(const TCOD_ParserStruct *def)""" + + @staticmethod + def TCOD_struct_get_type(def_: Any, propname: Any, /) -> Any: + """TCOD_value_type_t TCOD_struct_get_type(const TCOD_ParserStruct *def, const char *propname)""" + + @staticmethod + def TCOD_struct_is_mandatory(def_: Any, propname: Any, /) -> bool: + """bool TCOD_struct_is_mandatory(TCOD_ParserStruct *def, const char *propname)""" + + @staticmethod + def TCOD_sys_accumulate_console(console: Any, /) -> int: + """int TCOD_sys_accumulate_console(const TCOD_Console *console)""" + + @staticmethod + def TCOD_sys_accumulate_console_(console: Any, viewport: Any, /) -> int: + """int TCOD_sys_accumulate_console_(const TCOD_Console *console, const struct SDL_Rect *viewport)""" + + @staticmethod + def TCOD_sys_check_for_event(eventMask: int, key: Any, mouse: Any, /) -> Any: + """TCOD_event_t TCOD_sys_check_for_event(int eventMask, TCOD_key_t *key, TCOD_mouse_t *mouse)""" + + @staticmethod + def TCOD_sys_check_for_keypress(flags: int, /) -> Any: + """TCOD_key_t TCOD_sys_check_for_keypress(int flags)""" + + @staticmethod + def TCOD_sys_check_magic_number(filename: Any, size: int, data: Any, /) -> bool: + """bool TCOD_sys_check_magic_number(const char *filename, size_t size, uint8_t *data)""" + + @staticmethod + def TCOD_sys_clipboard_get() -> Any: + """char *TCOD_sys_clipboard_get(void)""" + + @staticmethod + def TCOD_sys_clipboard_set(value: Any, /) -> bool: + """bool TCOD_sys_clipboard_set(const char *value)""" + + @staticmethod + def TCOD_sys_create_directory(path: Any, /) -> bool: + """bool TCOD_sys_create_directory(const char *path)""" + + @staticmethod + def TCOD_sys_decode_font_() -> None: + """void TCOD_sys_decode_font_(void)""" + + @staticmethod + def TCOD_sys_delete_directory(path: Any, /) -> bool: + """bool TCOD_sys_delete_directory(const char *path)""" + + @staticmethod + def TCOD_sys_delete_file(path: Any, /) -> bool: + """bool TCOD_sys_delete_file(const char *path)""" + + @staticmethod + def TCOD_sys_elapsed_milli() -> Any: + """uint32_t TCOD_sys_elapsed_milli(void)""" + + @staticmethod + def TCOD_sys_elapsed_seconds() -> Any: + """float TCOD_sys_elapsed_seconds(void)""" + + @staticmethod + def TCOD_sys_file_exists(filename: Any, /, *__args: Any) -> bool: + """bool TCOD_sys_file_exists(const char *filename, ...)""" + + @staticmethod + def TCOD_sys_force_fullscreen_resolution(width: int, height: int, /) -> None: + """void TCOD_sys_force_fullscreen_resolution(int width, int height)""" + + @staticmethod + def TCOD_sys_get_SDL_renderer() -> Any: + """struct SDL_Renderer *TCOD_sys_get_SDL_renderer(void)""" + + @staticmethod + def TCOD_sys_get_SDL_window() -> Any: + """struct SDL_Window *TCOD_sys_get_SDL_window(void)""" + + @staticmethod + def TCOD_sys_get_char_size(w: Any, h: Any, /) -> None: + """void TCOD_sys_get_char_size(int *w, int *h)""" + + @staticmethod + def TCOD_sys_get_current_resolution(w: Any, h: Any, /) -> Any: + """TCOD_Error TCOD_sys_get_current_resolution(int *w, int *h)""" + + @staticmethod + def TCOD_sys_get_current_resolution_x() -> int: + """int TCOD_sys_get_current_resolution_x(void)""" + + @staticmethod + def TCOD_sys_get_current_resolution_y() -> int: + """int TCOD_sys_get_current_resolution_y(void)""" + + @staticmethod + def TCOD_sys_get_directory_content(path: Any, pattern: Any, /) -> Any: + """TCOD_list_t TCOD_sys_get_directory_content(const char *path, const char *pattern)""" + + @staticmethod + def TCOD_sys_get_fps() -> int: + """int TCOD_sys_get_fps(void)""" + + @staticmethod + def TCOD_sys_get_fullscreen_offsets(offset_x: Any, offset_y: Any, /) -> None: + """void TCOD_sys_get_fullscreen_offsets(int *offset_x, int *offset_y)""" + + @staticmethod + def TCOD_sys_get_image_alpha(image: Any, x: int, y: int, /) -> int: + """int TCOD_sys_get_image_alpha(const struct SDL_Surface *image, int x, int y)""" + + @staticmethod + def TCOD_sys_get_image_pixel(image: Any, x: int, y: int, /) -> Any: + """TCOD_color_t TCOD_sys_get_image_pixel(const struct SDL_Surface *image, int x, int y)""" + + @staticmethod + def TCOD_sys_get_image_size(image: Any, w: Any, h: Any, /) -> None: + """void TCOD_sys_get_image_size(const struct SDL_Surface *image, int *w, int *h)""" + + @staticmethod + def TCOD_sys_get_internal_console() -> Any: + """TCOD_Console *TCOD_sys_get_internal_console(void)""" + + @staticmethod + def TCOD_sys_get_internal_context() -> Any: + """TCOD_Context *TCOD_sys_get_internal_context(void)""" + + @staticmethod + def TCOD_sys_get_last_frame_length() -> Any: + """float TCOD_sys_get_last_frame_length(void)""" + + @staticmethod + def TCOD_sys_get_num_cores() -> int: + """int TCOD_sys_get_num_cores(void)""" + + @staticmethod + def TCOD_sys_get_renderer() -> Any: + """TCOD_renderer_t TCOD_sys_get_renderer(void)""" + + @staticmethod + def TCOD_sys_get_sdl_renderer() -> Any: + """struct SDL_Renderer *TCOD_sys_get_sdl_renderer(void)""" + + @staticmethod + def TCOD_sys_get_sdl_window() -> Any: + """struct SDL_Window *TCOD_sys_get_sdl_window(void)""" + + @staticmethod + def TCOD_sys_handle_key_event(ev: Any, key: Any, /) -> Any: + """TCOD_event_t TCOD_sys_handle_key_event(const union SDL_Event *ev, TCOD_key_t *key)""" + + @staticmethod + def TCOD_sys_handle_mouse_event(ev: Any, mouse: Any, /) -> Any: + """TCOD_event_t TCOD_sys_handle_mouse_event(const union SDL_Event *ev, TCOD_mouse_t *mouse)""" + + @staticmethod + def TCOD_sys_is_directory(path: Any, /) -> bool: + """bool TCOD_sys_is_directory(const char *path)""" + + @staticmethod + def TCOD_sys_is_key_pressed(key: Any, /) -> bool: + """bool TCOD_sys_is_key_pressed(TCOD_keycode_t key)""" + + @staticmethod + def TCOD_sys_load_image(filename: Any, /) -> Any: + """struct SDL_Surface *TCOD_sys_load_image(const char *filename)""" + + @staticmethod + def TCOD_sys_load_player_config() -> Any: + """TCOD_Error TCOD_sys_load_player_config(void)""" + + @staticmethod + def TCOD_sys_map_ascii_to_font(asciiCode: int, fontCharX: int, fontCharY: int, /) -> None: + """void TCOD_sys_map_ascii_to_font(int asciiCode, int fontCharX, int fontCharY)""" + + @staticmethod + def TCOD_sys_pixel_to_tile(x: Any, y: Any, /) -> None: + """void TCOD_sys_pixel_to_tile(double *x, double *y)""" + + @staticmethod + def TCOD_sys_read_file(filename: Any, buf: Any, size: Any, /) -> bool: + """bool TCOD_sys_read_file(const char *filename, unsigned char **buf, size_t *size)""" + + @staticmethod + def TCOD_sys_register_SDL_renderer(renderer: Any, /) -> None: + """void TCOD_sys_register_SDL_renderer(SDL_renderer_t renderer)""" + + @staticmethod + def TCOD_sys_restore_fps() -> None: + """void TCOD_sys_restore_fps(void)""" + + @staticmethod + def TCOD_sys_save_bitmap(bitmap: Any, filename: Any, /) -> Any: + """TCOD_Error TCOD_sys_save_bitmap(struct SDL_Surface *bitmap, const char *filename)""" + + @staticmethod + def TCOD_sys_save_fps() -> None: + """void TCOD_sys_save_fps(void)""" + + @staticmethod + def TCOD_sys_save_screenshot(filename: Any, /) -> None: + """void TCOD_sys_save_screenshot(const char *filename)""" + + @staticmethod + def TCOD_sys_set_fps(val: int, /) -> None: + """void TCOD_sys_set_fps(int val)""" + + @staticmethod + def TCOD_sys_set_renderer(renderer: Any, /) -> int: + """int TCOD_sys_set_renderer(TCOD_renderer_t renderer)""" + + @staticmethod + def TCOD_sys_shutdown() -> None: + """void TCOD_sys_shutdown(void)""" + + @staticmethod + def TCOD_sys_sleep_milli(val: Any, /) -> None: + """void TCOD_sys_sleep_milli(uint32_t val)""" + + @staticmethod + def TCOD_sys_startup() -> None: + """void TCOD_sys_startup(void)""" + + @staticmethod + def TCOD_sys_update_char(asciiCode: int, font_x: int, font_y: int, img: Any, x: int, y: int, /) -> None: + """void TCOD_sys_update_char(int asciiCode, int font_x, int font_y, const TCOD_Image *img, int x, int y)""" + + @staticmethod + def TCOD_sys_wait_for_event(eventMask: int, key: Any, mouse: Any, flush: bool, /) -> Any: + """TCOD_event_t TCOD_sys_wait_for_event(int eventMask, TCOD_key_t *key, TCOD_mouse_t *mouse, bool flush)""" + + @staticmethod + def TCOD_sys_wait_for_keypress(flush: bool, /) -> Any: + """TCOD_key_t TCOD_sys_wait_for_keypress(bool flush)""" + + @staticmethod + def TCOD_sys_write_file(filename: Any, buf: Any, size: Any, /) -> bool: + """bool TCOD_sys_write_file(const char *filename, unsigned char *buf, uint32_t size)""" + + @staticmethod + def TCOD_text_delete(txt: Any, /) -> None: + """void TCOD_text_delete(TCOD_text_t txt)""" + + @staticmethod + def TCOD_text_get(txt: Any, /) -> Any: + """const char *TCOD_text_get(TCOD_text_t txt)""" + + @staticmethod + def TCOD_text_init(x: int, y: int, w: int, h: int, max_chars: int, /) -> Any: + """TCOD_text_t TCOD_text_init(int x, int y, int w, int h, int max_chars)""" + + @staticmethod + def TCOD_text_init2(w: int, h: int, max_chars: int, /) -> Any: + """TCOD_text_t TCOD_text_init2(int w, int h, int max_chars)""" + + @staticmethod + def TCOD_text_render(txt: Any, con: Any, /) -> None: + """void TCOD_text_render(TCOD_text_t txt, TCOD_console_t con)""" + + @staticmethod + def TCOD_text_reset(txt: Any, /) -> None: + """void TCOD_text_reset(TCOD_text_t txt)""" + + @staticmethod + def TCOD_text_set_colors(txt: Any, fore: Any, back: Any, back_transparency: Any, /) -> None: + """void TCOD_text_set_colors(TCOD_text_t txt, TCOD_color_t fore, TCOD_color_t back, float back_transparency)""" + + @staticmethod + def TCOD_text_set_pos(txt: Any, x: int, y: int, /) -> None: + """void TCOD_text_set_pos(TCOD_text_t txt, int x, int y)""" + + @staticmethod + def TCOD_text_set_properties( + txt: Any, cursor_char: int, blink_interval: int, prompt: Any, tab_size: int, / + ) -> None: + """void TCOD_text_set_properties(TCOD_text_t txt, int cursor_char, int blink_interval, const char *prompt, int tab_size)""" + + @staticmethod + def TCOD_text_update(txt: Any, key: Any, /) -> bool: + """bool TCOD_text_update(TCOD_text_t txt, TCOD_key_t key)""" + + @staticmethod + def TCOD_thread_delete(th: Any, /) -> None: + """void TCOD_thread_delete(TCOD_thread_t th)""" + + @staticmethod + def TCOD_thread_new(func: Any, data: Any, /) -> Any: + """TCOD_thread_t TCOD_thread_new(int (*func)(void *), void *data)""" + + @staticmethod + def TCOD_thread_wait(th: Any, /) -> None: + """void TCOD_thread_wait(TCOD_thread_t th)""" + + @staticmethod + def TCOD_tileset_assign_tile(tileset: Any, tile_id: int, codepoint: int, /) -> int: + """int TCOD_tileset_assign_tile(struct TCOD_Tileset *tileset, int tile_id, int codepoint)""" + + @staticmethod + def TCOD_tileset_delete(tileset: Any, /) -> None: + """void TCOD_tileset_delete(TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_tileset_get_tile(tileset: Any, codepoint: int, /) -> Any: + """const struct TCOD_ColorRGBA *TCOD_tileset_get_tile(const TCOD_Tileset *tileset, int codepoint)""" + + @staticmethod + def TCOD_tileset_get_tile_(tileset: Any, codepoint: int, buffer: Any, /) -> Any: + """TCOD_Error TCOD_tileset_get_tile_(const TCOD_Tileset *tileset, int codepoint, struct TCOD_ColorRGBA *buffer)""" + + @staticmethod + def TCOD_tileset_get_tile_height_(tileset: Any, /) -> int: + """int TCOD_tileset_get_tile_height_(const TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_tileset_get_tile_width_(tileset: Any, /) -> int: + """int TCOD_tileset_get_tile_width_(const TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_tileset_load(filename: Any, columns: int, rows: int, n: int, charmap: Any, /) -> Any: + """TCOD_Tileset *TCOD_tileset_load(const char *filename, int columns, int rows, int n, const int *charmap)""" + + @staticmethod + def TCOD_tileset_load_fallback_font_(tile_width: int, tile_height: int, /) -> Any: + """TCOD_Tileset *TCOD_tileset_load_fallback_font_(int tile_width, int tile_height)""" + + @staticmethod + def TCOD_tileset_load_mem(buffer_length: int, buffer: Any, columns: int, rows: int, n: int, charmap: Any, /) -> Any: + """TCOD_Tileset *TCOD_tileset_load_mem(size_t buffer_length, const unsigned char *buffer, int columns, int rows, int n, const int *charmap)""" + + @staticmethod + def TCOD_tileset_load_raw( + width: int, height: int, pixels: Any, columns: int, rows: int, n: int, charmap: Any, / + ) -> Any: + """TCOD_Tileset *TCOD_tileset_load_raw(int width, int height, const struct TCOD_ColorRGBA *pixels, int columns, int rows, int n, const int *charmap)""" + + @staticmethod + def TCOD_tileset_load_truetype_(path: Any, tile_width: int, tile_height: int, /) -> Any: + """TCOD_Error TCOD_tileset_load_truetype_(const char *path, int tile_width, int tile_height)""" + + @staticmethod + def TCOD_tileset_new(tile_width: int, tile_height: int, /) -> Any: + """TCOD_Tileset *TCOD_tileset_new(int tile_width, int tile_height)""" + + @staticmethod + def TCOD_tileset_notify_tile_changed(tileset: Any, tile_id: int, /) -> None: + """void TCOD_tileset_notify_tile_changed(TCOD_Tileset *tileset, int tile_id)""" + + @staticmethod + def TCOD_tileset_observer_delete(observer: Any, /) -> None: + """void TCOD_tileset_observer_delete(struct TCOD_TilesetObserver *observer)""" + + @staticmethod + def TCOD_tileset_observer_new(tileset: Any, /) -> Any: + """struct TCOD_TilesetObserver *TCOD_tileset_observer_new(struct TCOD_Tileset *tileset)""" + + @staticmethod + def TCOD_tileset_render_to_surface(tileset: Any, console: Any, cache: Any, surface_out: Any, /) -> Any: + """TCOD_Error TCOD_tileset_render_to_surface(const TCOD_Tileset *tileset, const TCOD_Console *console, TCOD_Console **cache, struct SDL_Surface **surface_out)""" + + @staticmethod + def TCOD_tileset_reserve(tileset: Any, desired: int, /) -> Any: + """TCOD_Error TCOD_tileset_reserve(TCOD_Tileset *tileset, int desired)""" + + @staticmethod + def TCOD_tileset_set_tile_(tileset: Any, codepoint: int, buffer: Any, /) -> Any: + """TCOD_Error TCOD_tileset_set_tile_(TCOD_Tileset *tileset, int codepoint, const struct TCOD_ColorRGBA *buffer)""" + + @staticmethod + def TCOD_tree_add_son(node: Any, son: Any, /) -> None: + """void TCOD_tree_add_son(TCOD_tree_t *node, TCOD_tree_t *son)""" + + @staticmethod + def TCOD_tree_new() -> Any: + """TCOD_tree_t *TCOD_tree_new(void)""" + + @staticmethod + def TCOD_viewport_delete(viewport: Any, /) -> None: + """void TCOD_viewport_delete(TCOD_ViewportOptions *viewport)""" + + @staticmethod + def TCOD_viewport_new() -> Any: + """TCOD_ViewportOptions *TCOD_viewport_new(void)""" + + @staticmethod + def TCOD_zip_delete(zip: Any, /) -> None: + """void TCOD_zip_delete(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_char(zip: Any, /) -> Any: + """char TCOD_zip_get_char(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_color(zip: Any, /) -> Any: + """TCOD_color_t TCOD_zip_get_color(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_console(zip: Any, /) -> Any: + """TCOD_console_t TCOD_zip_get_console(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_current_bytes(zip: Any, /) -> Any: + """uint32_t TCOD_zip_get_current_bytes(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_data(zip: Any, nbBytes: int, data: Any, /) -> int: + """int TCOD_zip_get_data(TCOD_zip_t zip, int nbBytes, void *data)""" + + @staticmethod + def TCOD_zip_get_float(zip: Any, /) -> Any: + """float TCOD_zip_get_float(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_image(zip: Any, /) -> Any: + """TCOD_Image *TCOD_zip_get_image(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_int(zip: Any, /) -> int: + """int TCOD_zip_get_int(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_random(zip: Any, /) -> Any: + """TCOD_Random *TCOD_zip_get_random(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_remaining_bytes(zip: Any, /) -> Any: + """uint32_t TCOD_zip_get_remaining_bytes(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_get_string(zip: Any, /) -> Any: + """const char *TCOD_zip_get_string(TCOD_zip_t zip)""" + + @staticmethod + def TCOD_zip_load_from_file(zip: Any, filename: Any, /) -> int: + """int TCOD_zip_load_from_file(TCOD_zip_t zip, const char *filename)""" + + @staticmethod + def TCOD_zip_new() -> Any: + """TCOD_zip_t TCOD_zip_new(void)""" + + @staticmethod + def TCOD_zip_put_char(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_char(TCOD_zip_t zip, char val)""" + + @staticmethod + def TCOD_zip_put_color(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_color(TCOD_zip_t zip, const TCOD_color_t val)""" + + @staticmethod + def TCOD_zip_put_console(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_console(TCOD_zip_t zip, const TCOD_Console *val)""" + + @staticmethod + def TCOD_zip_put_data(zip: Any, nbBytes: int, data: Any, /) -> None: + """void TCOD_zip_put_data(TCOD_zip_t zip, int nbBytes, const void *data)""" + + @staticmethod + def TCOD_zip_put_float(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_float(TCOD_zip_t zip, float val)""" + + @staticmethod + def TCOD_zip_put_image(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_image(TCOD_zip_t zip, const TCOD_Image *val)""" + + @staticmethod + def TCOD_zip_put_int(zip: Any, val: int, /) -> None: + """void TCOD_zip_put_int(TCOD_zip_t zip, int val)""" + + @staticmethod + def TCOD_zip_put_random(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_random(TCOD_zip_t zip, const TCOD_Random *val)""" + + @staticmethod + def TCOD_zip_put_string(zip: Any, val: Any, /) -> None: + """void TCOD_zip_put_string(TCOD_zip_t zip, const char *val)""" + + @staticmethod + def TCOD_zip_save_to_file(zip: Any, filename: Any, /) -> int: + """int TCOD_zip_save_to_file(TCOD_zip_t zip, const char *filename)""" + + @staticmethod + def TCOD_zip_skip_bytes(zip: Any, nbBytes: Any, /) -> None: + """void TCOD_zip_skip_bytes(TCOD_zip_t zip, uint32_t nbBytes)""" + + @staticmethod + def TDL_color_HSV(h: Any, s: Any, v: Any, /) -> int: + """int TDL_color_HSV(float h, float s, float v)""" + + @staticmethod + def TDL_color_RGB(r: int, g: int, b: int, /) -> int: + """int TDL_color_RGB(int r, int g, int b)""" + + @staticmethod + def TDL_color_add(c1: int, c2: int, /) -> int: + """int TDL_color_add(int c1, int c2)""" + + @staticmethod + def TDL_color_equals(c1: int, c2: int, /) -> bool: + """bool TDL_color_equals(int c1, int c2)""" + + @staticmethod + def TDL_color_from_int(color: int, /) -> Any: + """TCOD_color_t TDL_color_from_int(int color)""" + + @staticmethod + def TDL_color_get_hue(color: int, /) -> Any: + """float TDL_color_get_hue(int color)""" + + @staticmethod + def TDL_color_get_saturation(color: int, /) -> Any: + """float TDL_color_get_saturation(int color)""" + + @staticmethod + def TDL_color_get_value(color: int, /) -> Any: + """float TDL_color_get_value(int color)""" + + @staticmethod + def TDL_color_int_to_array(color: int, /) -> Any: + """int *TDL_color_int_to_array(int color)""" + + @staticmethod + def TDL_color_lerp(c1: int, c2: int, coef: Any, /) -> int: + """int TDL_color_lerp(int c1, int c2, float coef)""" + + @staticmethod + def TDL_color_multiply(c1: int, c2: int, /) -> int: + """int TDL_color_multiply(int c1, int c2)""" + + @staticmethod + def TDL_color_multiply_scalar(c: int, value: Any, /) -> int: + """int TDL_color_multiply_scalar(int c, float value)""" + + @staticmethod + def TDL_color_scale_HSV(color: int, scoef: Any, vcoef: Any, /) -> int: + """int TDL_color_scale_HSV(int color, float scoef, float vcoef)""" + + @staticmethod + def TDL_color_set_hue(color: int, h: Any, /) -> int: + """int TDL_color_set_hue(int color, float h)""" + + @staticmethod + def TDL_color_set_saturation(color: int, h: Any, /) -> int: + """int TDL_color_set_saturation(int color, float h)""" + + @staticmethod + def TDL_color_set_value(color: int, h: Any, /) -> int: + """int TDL_color_set_value(int color, float h)""" + + @staticmethod + def TDL_color_shift_hue(color: int, hue_shift: Any, /) -> int: + """int TDL_color_shift_hue(int color, float hue_shift)""" + + @staticmethod + def TDL_color_subtract(c1: int, c2: int, /) -> int: + """int TDL_color_subtract(int c1, int c2)""" + + @staticmethod + def TDL_color_to_int(color: Any, /) -> int: + """int TDL_color_to_int(TCOD_color_t *color)""" + + @staticmethod + def TDL_console_get_bg(console: Any, x: int, y: int, /) -> int: + """int TDL_console_get_bg(TCOD_console_t console, int x, int y)""" + + @staticmethod + def TDL_console_get_fg(console: Any, x: int, y: int, /) -> int: + """int TDL_console_get_fg(TCOD_console_t console, int x, int y)""" + + @staticmethod + def TDL_console_put_char_ex(console: Any, x: int, y: int, ch: int, fg: int, bg: int, flag: Any, /) -> int: + """int TDL_console_put_char_ex(TCOD_console_t console, int x, int y, int ch, int fg, int bg, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TDL_console_set_bg(console: Any, x: int, y: int, color: int, flag: Any, /) -> None: + """void TDL_console_set_bg(TCOD_console_t console, int x, int y, int color, TCOD_bkgnd_flag_t flag)""" + + @staticmethod + def TDL_console_set_fg(console: Any, x: int, y: int, color: int, /) -> None: + """void TDL_console_set_fg(TCOD_console_t console, int x, int y, int color)""" + + @staticmethod + def TDL_list_get_bool(l: Any, idx: int, /) -> bool: + """bool TDL_list_get_bool(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_char(l: Any, idx: int, /) -> Any: + """char TDL_list_get_char(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_color(l: Any, idx: int, /) -> Any: + """TCOD_color_t TDL_list_get_color(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_dice(l: Any, idx: int, /) -> Any: + """TCOD_dice_t TDL_list_get_dice(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_float(l: Any, idx: int, /) -> Any: + """float TDL_list_get_float(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_int(l: Any, idx: int, /) -> int: + """int TDL_list_get_int(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_string(l: Any, idx: int, /) -> Any: + """char *TDL_list_get_string(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_list_get_union(l: Any, idx: int, /) -> Any: + """TCOD_value_t TDL_list_get_union(TCOD_list_t l, int idx)""" + + @staticmethod + def TDL_map_data_from_buffer(map: Any, buffer: Any, /) -> None: + """void TDL_map_data_from_buffer(TCOD_map_t map, uint8_t *buffer)""" + + @staticmethod + def TDL_map_fov_to_buffer(map: Any, buffer: Any, cumulative: bool, /) -> None: + """void TDL_map_fov_to_buffer(TCOD_map_t map, uint8_t *buffer, bool cumulative)""" + + @staticmethod + def _libtcod_log_watcher(message: Any, userdata: Any, /) -> None: + """void _libtcod_log_watcher(const TCOD_LogMessage *message, void *userdata)""" + + @staticmethod + def _pycall_bsp_callback(node: Any, userData: Any, /) -> bool: + """bool _pycall_bsp_callback(TCOD_bsp_t *node, void *userData)""" + + @staticmethod + def _pycall_cli_output(userdata: Any, output: Any, /) -> None: + """void _pycall_cli_output(void *userdata, const char *output)""" + + @staticmethod + def _pycall_parser_end_struct(str: Any, name: Any, /) -> bool: + """bool _pycall_parser_end_struct(TCOD_parser_struct_t str, const char *name)""" + + @staticmethod + def _pycall_parser_error(msg: Any, /) -> None: + """void _pycall_parser_error(const char *msg)""" + + @staticmethod + def _pycall_parser_new_flag(name: Any, /) -> bool: + """bool _pycall_parser_new_flag(const char *name)""" + + @staticmethod + def _pycall_parser_new_property(propname: Any, type: Any, value: Any, /) -> bool: + """bool _pycall_parser_new_property(const char *propname, TCOD_value_type_t type, TCOD_value_t value)""" + + @staticmethod + def _pycall_parser_new_struct(str: Any, name: Any, /) -> bool: + """bool _pycall_parser_new_struct(TCOD_parser_struct_t str, const char *name)""" + + @staticmethod + def _pycall_path_dest_only(x1: int, y1: int, x2: int, y2: int, user_data: Any, /) -> Any: + """float _pycall_path_dest_only(int x1, int y1, int x2, int y2, void *user_data)""" + + @staticmethod + def _pycall_path_old(x: int, y: int, xDest: int, yDest: int, user_data: Any, /) -> Any: + """float _pycall_path_old(int x, int y, int xDest, int yDest, void *user_data)""" + + @staticmethod + def _pycall_path_simple(x: int, y: int, xDest: int, yDest: int, user_data: Any, /) -> Any: + """float _pycall_path_simple(int x, int y, int xDest, int yDest, void *user_data)""" + + @staticmethod + def _pycall_path_swap_src_dest(x1: int, y1: int, x2: int, y2: int, user_data: Any, /) -> Any: + """float _pycall_path_swap_src_dest(int x1, int y1, int x2, int y2, void *user_data)""" + + @staticmethod + def _pycall_sdl_hook(arg0: Any, /) -> None: + """void _pycall_sdl_hook(struct SDL_Surface *)""" + + @staticmethod + def _sdl_audio_callback(userdata: Any, stream: Any, len: int, /) -> None: + """void _sdl_audio_callback(void *userdata, uint8_t *stream, int len)""" + + @staticmethod + def _sdl_event_watcher(userdata: Any, event: Any, /) -> int: + """int _sdl_event_watcher(void *userdata, SDL_Event *event)""" + + @staticmethod + def _sdl_log_output_function(userdata: Any, category: int, priority: Any, message: Any, /) -> None: + """void _sdl_log_output_function(void *userdata, int category, SDL_LogPriority priority, const char *message)""" + + @staticmethod + def alloca(arg0: int, /) -> Any: + """void *alloca(size_t)""" + + @staticmethod + def bresenham(x1: int, y1: int, x2: int, y2: int, n: int, out: Any, /) -> int: + """int bresenham(int x1, int y1, int x2, int y2, int n, int *out)""" + + @staticmethod + def compute_heuristic(heuristic: Any, ndim: int, index: Any, /) -> int: + """int compute_heuristic(const struct PathfinderHeuristic *heuristic, int ndim, const int *index)""" + + @staticmethod + def dijkstra2d(dist: Any, cost: Any, edges_2d_n: int, edges_2d: Any, /) -> int: + """int dijkstra2d(struct NArray *dist, const struct NArray *cost, int edges_2d_n, const int *edges_2d)""" + + @staticmethod + def dijkstra2d_basic(dist: Any, cost: Any, cardinal: int, diagonal: int, /) -> int: + """int dijkstra2d_basic(struct NArray *dist, const struct NArray *cost, int cardinal, int diagonal)""" + + @staticmethod + def frontier_has_index(frontier: Any, index: Any, /) -> int: + """int frontier_has_index(const struct TCOD_Frontier *frontier, const int *index)""" + + @staticmethod + def get_travel_path(ndim: Any, travel_map: Any, start: Any, out: Any, /) -> int: + """ptrdiff_t get_travel_path(int8_t ndim, const struct NArray *travel_map, const int *start, int *out)""" + + @staticmethod + def hillclimb2d(dist_array: Any, start_i: int, start_j: int, edges_2d_n: int, edges_2d: Any, out: Any, /) -> int: + """int hillclimb2d(const struct NArray *dist_array, int start_i, int start_j, int edges_2d_n, const int *edges_2d, int *out)""" + + @staticmethod + def hillclimb2d_basic(dist: Any, x: int, y: int, cardinal: bool, diagonal: bool, out: Any, /) -> int: + """int hillclimb2d_basic(const struct NArray *dist, int x, int y, bool cardinal, bool diagonal, int *out)""" + + @staticmethod + def path_compute(frontier: Any, dist_map: Any, travel_map: Any, n: int, rules: Any, heuristic: Any, /) -> int: + """int path_compute(struct TCOD_Frontier *frontier, struct NArray *dist_map, struct NArray *travel_map, int n, const struct PathfinderRule *rules, const struct PathfinderHeuristic *heuristic)""" + + @staticmethod + def path_compute_step(frontier: Any, dist_map: Any, travel_map: Any, n: int, rules: Any, heuristic: Any, /) -> int: + """int path_compute_step(struct TCOD_Frontier *frontier, struct NArray *dist_map, struct NArray *travel_map, int n, const struct PathfinderRule *rules, const struct PathfinderHeuristic *heuristic)""" + + @staticmethod + def rebuild_frontier_from_distance(frontier: Any, dist_map: Any, /) -> int: + """int rebuild_frontier_from_distance(struct TCOD_Frontier *frontier, const struct NArray *dist_map)""" + + @staticmethod + def sync_time_() -> None: + """void sync_time_(void)""" + + @staticmethod + def update_frontier_heuristic(frontier: Any, heuristic: Any, /) -> int: + """int update_frontier_heuristic(struct TCOD_Frontier *frontier, const struct PathfinderHeuristic *heuristic)""" + + FOV_BASIC: Final[int] + FOV_DIAMOND: Final[int] + FOV_PERMISSIVE_0: Final[int] + FOV_PERMISSIVE_1: Final[int] + FOV_PERMISSIVE_2: Final[int] + FOV_PERMISSIVE_3: Final[int] + FOV_PERMISSIVE_4: Final[int] + FOV_PERMISSIVE_5: Final[int] + FOV_PERMISSIVE_6: Final[int] + FOV_PERMISSIVE_7: Final[int] + FOV_PERMISSIVE_8: Final[int] + FOV_RESTRICTIVE: Final[int] + FOV_SHADOW: Final[int] + FOV_SYMMETRIC_SHADOWCAST: Final[int] + NB_FOV_ALGORITHMS: Final[int] + SDLK_0: Final[int] + SDLK_1: Final[int] + SDLK_2: Final[int] + SDLK_3: Final[int] + SDLK_4: Final[int] + SDLK_5: Final[int] + SDLK_6: Final[int] + SDLK_7: Final[int] + SDLK_8: Final[int] + SDLK_9: Final[int] + SDLK_A: Final[int] + SDLK_AC_BACK: Final[int] + SDLK_AC_BOOKMARKS: Final[int] + SDLK_AC_CLOSE: Final[int] + SDLK_AC_EXIT: Final[int] + SDLK_AC_FORWARD: Final[int] + SDLK_AC_HOME: Final[int] + SDLK_AC_NEW: Final[int] + SDLK_AC_OPEN: Final[int] + SDLK_AC_PRINT: Final[int] + SDLK_AC_PROPERTIES: Final[int] + SDLK_AC_REFRESH: Final[int] + SDLK_AC_SAVE: Final[int] + SDLK_AC_SEARCH: Final[int] + SDLK_AC_STOP: Final[int] + SDLK_AGAIN: Final[int] + SDLK_ALTERASE: Final[int] + SDLK_AMPERSAND: Final[int] + SDLK_APOSTROPHE: Final[int] + SDLK_APPLICATION: Final[int] + SDLK_ASTERISK: Final[int] + SDLK_AT: Final[int] + SDLK_B: Final[int] + SDLK_BACKSLASH: Final[int] + SDLK_BACKSPACE: Final[int] + SDLK_C: Final[int] + SDLK_CALL: Final[int] + SDLK_CANCEL: Final[int] + SDLK_CAPSLOCK: Final[int] + SDLK_CARET: Final[int] + SDLK_CHANNEL_DECREMENT: Final[int] + SDLK_CHANNEL_INCREMENT: Final[int] + SDLK_CLEAR: Final[int] + SDLK_CLEARAGAIN: Final[int] + SDLK_COLON: Final[int] + SDLK_COMMA: Final[int] + SDLK_COPY: Final[int] + SDLK_CRSEL: Final[int] + SDLK_CURRENCYSUBUNIT: Final[int] + SDLK_CURRENCYUNIT: Final[int] + SDLK_CUT: Final[int] + SDLK_D: Final[int] + SDLK_DBLAPOSTROPHE: Final[int] + SDLK_DECIMALSEPARATOR: Final[int] + SDLK_DELETE: Final[int] + SDLK_DOLLAR: Final[int] + SDLK_DOWN: Final[int] + SDLK_E: Final[int] + SDLK_END: Final[int] + SDLK_ENDCALL: Final[int] + SDLK_EQUALS: Final[int] + SDLK_ESCAPE: Final[int] + SDLK_EXCLAIM: Final[int] + SDLK_EXECUTE: Final[int] + SDLK_EXSEL: Final[int] + SDLK_EXTENDED_MASK: Final[int] + SDLK_F10: Final[int] + SDLK_F11: Final[int] + SDLK_F12: Final[int] + SDLK_F13: Final[int] + SDLK_F14: Final[int] + SDLK_F15: Final[int] + SDLK_F16: Final[int] + SDLK_F17: Final[int] + SDLK_F18: Final[int] + SDLK_F19: Final[int] + SDLK_F1: Final[int] + SDLK_F20: Final[int] + SDLK_F21: Final[int] + SDLK_F22: Final[int] + SDLK_F23: Final[int] + SDLK_F24: Final[int] + SDLK_F2: Final[int] + SDLK_F3: Final[int] + SDLK_F4: Final[int] + SDLK_F5: Final[int] + SDLK_F6: Final[int] + SDLK_F7: Final[int] + SDLK_F8: Final[int] + SDLK_F9: Final[int] + SDLK_F: Final[int] + SDLK_FIND: Final[int] + SDLK_G: Final[int] + SDLK_GRAVE: Final[int] + SDLK_GREATER: Final[int] + SDLK_H: Final[int] + SDLK_HASH: Final[int] + SDLK_HELP: Final[int] + SDLK_HOME: Final[int] + SDLK_I: Final[int] + SDLK_INSERT: Final[int] + SDLK_J: Final[int] + SDLK_K: Final[int] + SDLK_KP_000: Final[int] + SDLK_KP_00: Final[int] + SDLK_KP_0: Final[int] + SDLK_KP_1: Final[int] + SDLK_KP_2: Final[int] + SDLK_KP_3: Final[int] + SDLK_KP_4: Final[int] + SDLK_KP_5: Final[int] + SDLK_KP_6: Final[int] + SDLK_KP_7: Final[int] + SDLK_KP_8: Final[int] + SDLK_KP_9: Final[int] + SDLK_KP_A: Final[int] + SDLK_KP_AMPERSAND: Final[int] + SDLK_KP_AT: Final[int] + SDLK_KP_B: Final[int] + SDLK_KP_BACKSPACE: Final[int] + SDLK_KP_BINARY: Final[int] + SDLK_KP_C: Final[int] + SDLK_KP_CLEAR: Final[int] + SDLK_KP_CLEARENTRY: Final[int] + SDLK_KP_COLON: Final[int] + SDLK_KP_COMMA: Final[int] + SDLK_KP_D: Final[int] + SDLK_KP_DBLAMPERSAND: Final[int] + SDLK_KP_DBLVERTICALBAR: Final[int] + SDLK_KP_DECIMAL: Final[int] + SDLK_KP_DIVIDE: Final[int] + SDLK_KP_E: Final[int] + SDLK_KP_ENTER: Final[int] + SDLK_KP_EQUALS: Final[int] + SDLK_KP_EQUALSAS400: Final[int] + SDLK_KP_EXCLAM: Final[int] + SDLK_KP_F: Final[int] + SDLK_KP_GREATER: Final[int] + SDLK_KP_HASH: Final[int] + SDLK_KP_HEXADECIMAL: Final[int] + SDLK_KP_LEFTBRACE: Final[int] + SDLK_KP_LEFTPAREN: Final[int] + SDLK_KP_LESS: Final[int] + SDLK_KP_MEMADD: Final[int] + SDLK_KP_MEMCLEAR: Final[int] + SDLK_KP_MEMDIVIDE: Final[int] + SDLK_KP_MEMMULTIPLY: Final[int] + SDLK_KP_MEMRECALL: Final[int] + SDLK_KP_MEMSTORE: Final[int] + SDLK_KP_MEMSUBTRACT: Final[int] + SDLK_KP_MINUS: Final[int] + SDLK_KP_MULTIPLY: Final[int] + SDLK_KP_OCTAL: Final[int] + SDLK_KP_PERCENT: Final[int] + SDLK_KP_PERIOD: Final[int] + SDLK_KP_PLUS: Final[int] + SDLK_KP_PLUSMINUS: Final[int] + SDLK_KP_POWER: Final[int] + SDLK_KP_RIGHTBRACE: Final[int] + SDLK_KP_RIGHTPAREN: Final[int] + SDLK_KP_SPACE: Final[int] + SDLK_KP_TAB: Final[int] + SDLK_KP_VERTICALBAR: Final[int] + SDLK_KP_XOR: Final[int] + SDLK_L: Final[int] + SDLK_LALT: Final[int] + SDLK_LCTRL: Final[int] + SDLK_LEFT: Final[int] + SDLK_LEFTBRACE: Final[int] + SDLK_LEFTBRACKET: Final[int] + SDLK_LEFTPAREN: Final[int] + SDLK_LEFT_TAB: Final[int] + SDLK_LESS: Final[int] + SDLK_LEVEL5_SHIFT: Final[int] + SDLK_LGUI: Final[int] + SDLK_LHYPER: Final[int] + SDLK_LMETA: Final[int] + SDLK_LSHIFT: Final[int] + SDLK_M: Final[int] + SDLK_MEDIA_EJECT: Final[int] + SDLK_MEDIA_FAST_FORWARD: Final[int] + SDLK_MEDIA_NEXT_TRACK: Final[int] + SDLK_MEDIA_PAUSE: Final[int] + SDLK_MEDIA_PLAY: Final[int] + SDLK_MEDIA_PLAY_PAUSE: Final[int] + SDLK_MEDIA_PREVIOUS_TRACK: Final[int] + SDLK_MEDIA_RECORD: Final[int] + SDLK_MEDIA_REWIND: Final[int] + SDLK_MEDIA_SELECT: Final[int] + SDLK_MEDIA_STOP: Final[int] + SDLK_MENU: Final[int] + SDLK_MINUS: Final[int] + SDLK_MODE: Final[int] + SDLK_MULTI_KEY_COMPOSE: Final[int] + SDLK_MUTE: Final[int] + SDLK_N: Final[int] + SDLK_NUMLOCKCLEAR: Final[int] + SDLK_O: Final[int] + SDLK_OPER: Final[int] + SDLK_OUT: Final[int] + SDLK_P: Final[int] + SDLK_PAGEDOWN: Final[int] + SDLK_PAGEUP: Final[int] + SDLK_PASTE: Final[int] + SDLK_PAUSE: Final[int] + SDLK_PERCENT: Final[int] + SDLK_PERIOD: Final[int] + SDLK_PIPE: Final[int] + SDLK_PLUS: Final[int] + SDLK_PLUSMINUS: Final[int] + SDLK_POWER: Final[int] + SDLK_PRINTSCREEN: Final[int] + SDLK_PRIOR: Final[int] + SDLK_Q: Final[int] + SDLK_QUESTION: Final[int] + SDLK_R: Final[int] + SDLK_RALT: Final[int] + SDLK_RCTRL: Final[int] + SDLK_RETURN2: Final[int] + SDLK_RETURN: Final[int] + SDLK_RGUI: Final[int] + SDLK_RHYPER: Final[int] + SDLK_RIGHT: Final[int] + SDLK_RIGHTBRACE: Final[int] + SDLK_RIGHTBRACKET: Final[int] + SDLK_RIGHTPAREN: Final[int] + SDLK_RMETA: Final[int] + SDLK_RSHIFT: Final[int] + SDLK_S: Final[int] + SDLK_SCANCODE_MASK: Final[int] + SDLK_SCROLLLOCK: Final[int] + SDLK_SELECT: Final[int] + SDLK_SEMICOLON: Final[int] + SDLK_SEPARATOR: Final[int] + SDLK_SLASH: Final[int] + SDLK_SLEEP: Final[int] + SDLK_SOFTLEFT: Final[int] + SDLK_SOFTRIGHT: Final[int] + SDLK_SPACE: Final[int] + SDLK_STOP: Final[int] + SDLK_SYSREQ: Final[int] + SDLK_T: Final[int] + SDLK_TAB: Final[int] + SDLK_THOUSANDSSEPARATOR: Final[int] + SDLK_TILDE: Final[int] + SDLK_U: Final[int] + SDLK_UNDERSCORE: Final[int] + SDLK_UNDO: Final[int] + SDLK_UNKNOWN: Final[int] + SDLK_UP: Final[int] + SDLK_V: Final[int] + SDLK_VOLUMEDOWN: Final[int] + SDLK_VOLUMEUP: Final[int] + SDLK_W: Final[int] + SDLK_WAKE: Final[int] + SDLK_X: Final[int] + SDLK_Y: Final[int] + SDLK_Z: Final[int] + SDL_ADDEVENT: Final[int] + SDL_ALPHA_OPAQUE: Final[int] + SDL_ALPHA_TRANSPARENT: Final[int] + SDL_APP_CONTINUE: Final[int] + SDL_APP_FAILURE: Final[int] + SDL_APP_SUCCESS: Final[int] + SDL_ARRAYORDER_ABGR: Final[int] + SDL_ARRAYORDER_ARGB: Final[int] + SDL_ARRAYORDER_BGR: Final[int] + SDL_ARRAYORDER_BGRA: Final[int] + SDL_ARRAYORDER_NONE: Final[int] + SDL_ARRAYORDER_RGB: Final[int] + SDL_ARRAYORDER_RGBA: Final[int] + SDL_ASSERTION_ABORT: Final[int] + SDL_ASSERTION_ALWAYS_IGNORE: Final[int] + SDL_ASSERTION_BREAK: Final[int] + SDL_ASSERTION_IGNORE: Final[int] + SDL_ASSERTION_RETRY: Final[int] + SDL_ASSERT_LEVEL: Final[int] + SDL_ASYNCIO_CANCELED: Final[int] + SDL_ASYNCIO_COMPLETE: Final[int] + SDL_ASYNCIO_FAILURE: Final[int] + SDL_ASYNCIO_TASK_CLOSE: Final[int] + SDL_ASYNCIO_TASK_READ: Final[int] + SDL_ASYNCIO_TASK_WRITE: Final[int] + SDL_AUDIO_DEVICE_DEFAULT_PLAYBACK: Final[int] + SDL_AUDIO_DEVICE_DEFAULT_RECORDING: Final[int] + SDL_AUDIO_F32: Final[int] + SDL_AUDIO_F32BE: Final[Literal[37152]] = 37152 + SDL_AUDIO_F32LE: Final[Literal[33056]] = 33056 + SDL_AUDIO_MASK_BIG_ENDIAN: Final[int] + SDL_AUDIO_MASK_BITSIZE: Final[int] + SDL_AUDIO_MASK_FLOAT: Final[int] + SDL_AUDIO_MASK_SIGNED: Final[int] + SDL_AUDIO_S16: Final[int] + SDL_AUDIO_S16BE: Final[Literal[36880]] = 36880 + SDL_AUDIO_S16LE: Final[Literal[32784]] = 32784 + SDL_AUDIO_S32: Final[int] + SDL_AUDIO_S32BE: Final[Literal[36896]] = 36896 + SDL_AUDIO_S32LE: Final[Literal[32800]] = 32800 + SDL_AUDIO_S8: Final[Literal[32776]] = 32776 + SDL_AUDIO_U8: Final[Literal[8]] = 8 + SDL_AUDIO_UNKNOWN: Final[Literal[0]] = 0 + SDL_BIG_ENDIAN: Final[int] + SDL_BITMAPORDER_1234: Final[int] + SDL_BITMAPORDER_4321: Final[int] + SDL_BITMAPORDER_NONE: Final[int] + SDL_BLENDFACTOR_DST_ALPHA: Final[Literal[9]] = 9 + SDL_BLENDFACTOR_DST_COLOR: Final[Literal[7]] = 7 + SDL_BLENDFACTOR_ONE: Final[Literal[2]] = 2 + SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA: Final[Literal[10]] = 10 + SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR: Final[Literal[8]] = 8 + SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA: Final[Literal[6]] = 6 + SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR: Final[Literal[4]] = 4 + SDL_BLENDFACTOR_SRC_ALPHA: Final[Literal[5]] = 5 + SDL_BLENDFACTOR_SRC_COLOR: Final[Literal[3]] = 3 + SDL_BLENDFACTOR_ZERO: Final[Literal[1]] = 1 + SDL_BLENDMODE_ADD: Final[int] + SDL_BLENDMODE_ADD_PREMULTIPLIED: Final[int] + SDL_BLENDMODE_BLEND: Final[int] + SDL_BLENDMODE_BLEND_PREMULTIPLIED: Final[int] + SDL_BLENDMODE_INVALID: Final[int] + SDL_BLENDMODE_MOD: Final[int] + SDL_BLENDMODE_MUL: Final[int] + SDL_BLENDMODE_NONE: Final[int] + SDL_BLENDOPERATION_ADD: Final[Literal[1]] = 1 + SDL_BLENDOPERATION_MAXIMUM: Final[Literal[5]] = 5 + SDL_BLENDOPERATION_MINIMUM: Final[Literal[4]] = 4 + SDL_BLENDOPERATION_REV_SUBTRACT: Final[Literal[3]] = 3 + SDL_BLENDOPERATION_SUBTRACT: Final[Literal[2]] = 2 + SDL_BUTTON_LEFT: Final[int] + SDL_BUTTON_LMASK: Final[int] + SDL_BUTTON_MIDDLE: Final[int] + SDL_BUTTON_MMASK: Final[int] + SDL_BUTTON_RIGHT: Final[int] + SDL_BUTTON_RMASK: Final[int] + SDL_BUTTON_X1: Final[int] + SDL_BUTTON_X1MASK: Final[int] + SDL_BUTTON_X2: Final[int] + SDL_BUTTON_X2MASK: Final[int] + SDL_BYTEORDER: Final[int] + SDL_CACHELINE_SIZE: Final[int] + SDL_CAMERA_POSITION_BACK_FACING: Final[int] + SDL_CAMERA_POSITION_FRONT_FACING: Final[int] + SDL_CAMERA_POSITION_UNKNOWN: Final[int] + SDL_CAPITALIZE_LETTERS: Final[int] + SDL_CAPITALIZE_NONE: Final[int] + SDL_CAPITALIZE_SENTENCES: Final[int] + SDL_CAPITALIZE_WORDS: Final[int] + SDL_CHROMA_LOCATION_CENTER: Final[Literal[2]] = 2 + SDL_CHROMA_LOCATION_LEFT: Final[Literal[1]] = 1 + SDL_CHROMA_LOCATION_NONE: Final[Literal[0]] = 0 + SDL_CHROMA_LOCATION_TOPLEFT: Final[Literal[3]] = 3 + SDL_COLORSPACE_BT2020_FULL: Final[Literal[571483657]] = 571483657 + SDL_COLORSPACE_BT2020_LIMITED: Final[Literal[554706441]] = 554706441 + SDL_COLORSPACE_BT601_FULL: Final[Literal[571480262]] = 571480262 + SDL_COLORSPACE_BT601_LIMITED: Final[Literal[554703046]] = 554703046 + SDL_COLORSPACE_BT709_FULL: Final[Literal[571474977]] = 571474977 + SDL_COLORSPACE_BT709_LIMITED: Final[Literal[554697761]] = 554697761 + SDL_COLORSPACE_HDR10: Final[Literal[301999616]] = 301999616 + SDL_COLORSPACE_JPEG: Final[Literal[570426566]] = 570426566 + SDL_COLORSPACE_RGB_DEFAULT: Final[int] + SDL_COLORSPACE_SRGB: Final[Literal[301991328]] = 301991328 + SDL_COLORSPACE_SRGB_LINEAR: Final[Literal[301991168]] = 301991168 + SDL_COLORSPACE_UNKNOWN: Final[Literal[0]] = 0 + SDL_COLORSPACE_YUV_DEFAULT: Final[int] + SDL_COLOR_PRIMARIES_BT2020: Final[Literal[9]] = 9 + SDL_COLOR_PRIMARIES_BT470BG: Final[Literal[5]] = 5 + SDL_COLOR_PRIMARIES_BT470M: Final[Literal[4]] = 4 + SDL_COLOR_PRIMARIES_BT601: Final[Literal[6]] = 6 + SDL_COLOR_PRIMARIES_BT709: Final[Literal[1]] = 1 + SDL_COLOR_PRIMARIES_CUSTOM: Final[Literal[31]] = 31 + SDL_COLOR_PRIMARIES_EBU3213: Final[Literal[22]] = 22 + SDL_COLOR_PRIMARIES_GENERIC_FILM: Final[Literal[8]] = 8 + SDL_COLOR_PRIMARIES_SMPTE240: Final[Literal[7]] = 7 + SDL_COLOR_PRIMARIES_SMPTE431: Final[Literal[11]] = 11 + SDL_COLOR_PRIMARIES_SMPTE432: Final[Literal[12]] = 12 + SDL_COLOR_PRIMARIES_UNKNOWN: Final[Literal[0]] = 0 + SDL_COLOR_PRIMARIES_UNSPECIFIED: Final[Literal[2]] = 2 + SDL_COLOR_PRIMARIES_XYZ: Final[Literal[10]] = 10 + SDL_COLOR_RANGE_FULL: Final[Literal[2]] = 2 + SDL_COLOR_RANGE_LIMITED: Final[Literal[1]] = 1 + SDL_COLOR_RANGE_UNKNOWN: Final[Literal[0]] = 0 + SDL_COLOR_TYPE_RGB: Final[Literal[1]] = 1 + SDL_COLOR_TYPE_UNKNOWN: Final[Literal[0]] = 0 + SDL_COLOR_TYPE_YCBCR: Final[Literal[2]] = 2 + SDL_DATE_FORMAT_DDMMYYYY: Final[Literal[1]] = 1 + SDL_DATE_FORMAT_MMDDYYYY: Final[Literal[2]] = 2 + SDL_DATE_FORMAT_YYYYMMDD: Final[Literal[0]] = 0 + SDL_DEBUG_TEXT_FONT_CHARACTER_SIZE: Final[int] + SDL_ENUM_CONTINUE: Final[int] + SDL_ENUM_FAILURE: Final[int] + SDL_ENUM_SUCCESS: Final[int] + SDL_EVENT_AUDIO_DEVICE_ADDED: Final[Literal[4352]] = 4352 + SDL_EVENT_AUDIO_DEVICE_FORMAT_CHANGED: Final[int] + SDL_EVENT_AUDIO_DEVICE_REMOVED: Final[int] + SDL_EVENT_CAMERA_DEVICE_ADDED: Final[Literal[5120]] = 5120 + SDL_EVENT_CAMERA_DEVICE_APPROVED: Final[int] + SDL_EVENT_CAMERA_DEVICE_DENIED: Final[int] + SDL_EVENT_CAMERA_DEVICE_REMOVED: Final[int] + SDL_EVENT_CLIPBOARD_UPDATE: Final[Literal[2304]] = 2304 + SDL_EVENT_DID_ENTER_BACKGROUND: Final[int] + SDL_EVENT_DID_ENTER_FOREGROUND: Final[int] + SDL_EVENT_DISPLAY_ADDED: Final[int] + SDL_EVENT_DISPLAY_CONTENT_SCALE_CHANGED: Final[int] + SDL_EVENT_DISPLAY_CURRENT_MODE_CHANGED: Final[int] + SDL_EVENT_DISPLAY_DESKTOP_MODE_CHANGED: Final[int] + SDL_EVENT_DISPLAY_FIRST: Final[int] + SDL_EVENT_DISPLAY_LAST: Final[int] + SDL_EVENT_DISPLAY_MOVED: Final[int] + SDL_EVENT_DISPLAY_ORIENTATION: Final[Literal[337]] = 337 + SDL_EVENT_DISPLAY_REMOVED: Final[int] + SDL_EVENT_DROP_BEGIN: Final[int] + SDL_EVENT_DROP_COMPLETE: Final[int] + SDL_EVENT_DROP_FILE: Final[Literal[4096]] = 4096 + SDL_EVENT_DROP_POSITION: Final[int] + SDL_EVENT_DROP_TEXT: Final[int] + SDL_EVENT_ENUM_PADDING: Final[Literal[2147483647]] = 2147483647 + SDL_EVENT_FINGER_CANCELED: Final[int] + SDL_EVENT_FINGER_DOWN: Final[Literal[1792]] = 1792 + SDL_EVENT_FINGER_MOTION: Final[int] + SDL_EVENT_FINGER_UP: Final[int] + SDL_EVENT_FIRST: Final[Literal[0]] = 0 + SDL_EVENT_GAMEPAD_ADDED: Final[int] + SDL_EVENT_GAMEPAD_AXIS_MOTION: Final[Literal[1616]] = 1616 + SDL_EVENT_GAMEPAD_BUTTON_DOWN: Final[int] + SDL_EVENT_GAMEPAD_BUTTON_UP: Final[int] + SDL_EVENT_GAMEPAD_REMAPPED: Final[int] + SDL_EVENT_GAMEPAD_REMOVED: Final[int] + SDL_EVENT_GAMEPAD_SENSOR_UPDATE: Final[int] + SDL_EVENT_GAMEPAD_STEAM_HANDLE_UPDATED: Final[int] + SDL_EVENT_GAMEPAD_TOUCHPAD_DOWN: Final[int] + SDL_EVENT_GAMEPAD_TOUCHPAD_MOTION: Final[int] + SDL_EVENT_GAMEPAD_TOUCHPAD_UP: Final[int] + SDL_EVENT_GAMEPAD_UPDATE_COMPLETE: Final[int] + SDL_EVENT_JOYSTICK_ADDED: Final[int] + SDL_EVENT_JOYSTICK_AXIS_MOTION: Final[Literal[1536]] = 1536 + SDL_EVENT_JOYSTICK_BALL_MOTION: Final[int] + SDL_EVENT_JOYSTICK_BATTERY_UPDATED: Final[int] + SDL_EVENT_JOYSTICK_BUTTON_DOWN: Final[int] + SDL_EVENT_JOYSTICK_BUTTON_UP: Final[int] + SDL_EVENT_JOYSTICK_HAT_MOTION: Final[int] + SDL_EVENT_JOYSTICK_REMOVED: Final[int] + SDL_EVENT_JOYSTICK_UPDATE_COMPLETE: Final[int] + SDL_EVENT_KEYBOARD_ADDED: Final[int] + SDL_EVENT_KEYBOARD_REMOVED: Final[int] + SDL_EVENT_KEYMAP_CHANGED: Final[int] + SDL_EVENT_KEY_DOWN: Final[Literal[768]] = 768 + SDL_EVENT_KEY_UP: Final[int] + SDL_EVENT_LAST: Final[Literal[65535]] = 65535 + SDL_EVENT_LOCALE_CHANGED: Final[int] + SDL_EVENT_LOW_MEMORY: Final[int] + SDL_EVENT_MOUSE_ADDED: Final[int] + SDL_EVENT_MOUSE_BUTTON_DOWN: Final[int] + SDL_EVENT_MOUSE_BUTTON_UP: Final[int] + SDL_EVENT_MOUSE_MOTION: Final[Literal[1024]] = 1024 + SDL_EVENT_MOUSE_REMOVED: Final[int] + SDL_EVENT_MOUSE_WHEEL: Final[int] + SDL_EVENT_PEN_AXIS: Final[int] + SDL_EVENT_PEN_BUTTON_DOWN: Final[int] + SDL_EVENT_PEN_BUTTON_UP: Final[int] + SDL_EVENT_PEN_DOWN: Final[int] + SDL_EVENT_PEN_MOTION: Final[int] + SDL_EVENT_PEN_PROXIMITY_IN: Final[Literal[4864]] = 4864 + SDL_EVENT_PEN_PROXIMITY_OUT: Final[int] + SDL_EVENT_PEN_UP: Final[int] + SDL_EVENT_POLL_SENTINEL: Final[Literal[32512]] = 32512 + SDL_EVENT_PRIVATE0: Final[Literal[16384]] = 16384 + SDL_EVENT_PRIVATE1: Final[int] + SDL_EVENT_PRIVATE2: Final[int] + SDL_EVENT_PRIVATE3: Final[int] + SDL_EVENT_QUIT: Final[Literal[256]] = 256 + SDL_EVENT_RENDER_DEVICE_LOST: Final[int] + SDL_EVENT_RENDER_DEVICE_RESET: Final[int] + SDL_EVENT_RENDER_TARGETS_RESET: Final[Literal[8192]] = 8192 + SDL_EVENT_SENSOR_UPDATE: Final[Literal[4608]] = 4608 + SDL_EVENT_SYSTEM_THEME_CHANGED: Final[int] + SDL_EVENT_TERMINATING: Final[int] + SDL_EVENT_TEXT_EDITING: Final[int] + SDL_EVENT_TEXT_EDITING_CANDIDATES: Final[int] + SDL_EVENT_TEXT_INPUT: Final[int] + SDL_EVENT_USER: Final[Literal[32768]] = 32768 + SDL_EVENT_WILL_ENTER_BACKGROUND: Final[int] + SDL_EVENT_WILL_ENTER_FOREGROUND: Final[int] + SDL_EVENT_WINDOW_CLOSE_REQUESTED: Final[int] + SDL_EVENT_WINDOW_DESTROYED: Final[int] + SDL_EVENT_WINDOW_DISPLAY_CHANGED: Final[int] + SDL_EVENT_WINDOW_DISPLAY_SCALE_CHANGED: Final[int] + SDL_EVENT_WINDOW_ENTER_FULLSCREEN: Final[int] + SDL_EVENT_WINDOW_EXPOSED: Final[int] + SDL_EVENT_WINDOW_FIRST: Final[int] + SDL_EVENT_WINDOW_FOCUS_GAINED: Final[int] + SDL_EVENT_WINDOW_FOCUS_LOST: Final[int] + SDL_EVENT_WINDOW_HDR_STATE_CHANGED: Final[int] + SDL_EVENT_WINDOW_HIDDEN: Final[int] + SDL_EVENT_WINDOW_HIT_TEST: Final[int] + SDL_EVENT_WINDOW_ICCPROF_CHANGED: Final[int] + SDL_EVENT_WINDOW_LAST: Final[int] + SDL_EVENT_WINDOW_LEAVE_FULLSCREEN: Final[int] + SDL_EVENT_WINDOW_MAXIMIZED: Final[int] + SDL_EVENT_WINDOW_METAL_VIEW_RESIZED: Final[int] + SDL_EVENT_WINDOW_MINIMIZED: Final[int] + SDL_EVENT_WINDOW_MOUSE_ENTER: Final[int] + SDL_EVENT_WINDOW_MOUSE_LEAVE: Final[int] + SDL_EVENT_WINDOW_MOVED: Final[int] + SDL_EVENT_WINDOW_OCCLUDED: Final[int] + SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED: Final[int] + SDL_EVENT_WINDOW_RESIZED: Final[int] + SDL_EVENT_WINDOW_RESTORED: Final[int] + SDL_EVENT_WINDOW_SAFE_AREA_CHANGED: Final[int] + SDL_EVENT_WINDOW_SHOWN: Final[Literal[514]] = 514 + SDL_FILEDIALOG_OPENFILE: Final[int] + SDL_FILEDIALOG_OPENFOLDER: Final[int] + SDL_FILEDIALOG_SAVEFILE: Final[int] + SDL_FLASH_BRIEFLY: Final[int] + SDL_FLASH_CANCEL: Final[int] + SDL_FLASH_UNTIL_FOCUSED: Final[int] + SDL_FLIP_HORIZONTAL: Final[int] + SDL_FLIP_NONE: Final[int] + SDL_FLIP_VERTICAL: Final[int] + SDL_FLOATWORDORDER: Final[int] + SDL_FOLDER_COUNT: Final[int] + SDL_FOLDER_DESKTOP: Final[int] + SDL_FOLDER_DOCUMENTS: Final[int] + SDL_FOLDER_DOWNLOADS: Final[int] + SDL_FOLDER_HOME: Final[int] + SDL_FOLDER_MUSIC: Final[int] + SDL_FOLDER_PICTURES: Final[int] + SDL_FOLDER_PUBLICSHARE: Final[int] + SDL_FOLDER_SAVEDGAMES: Final[int] + SDL_FOLDER_SCREENSHOTS: Final[int] + SDL_FOLDER_TEMPLATES: Final[int] + SDL_FOLDER_VIDEOS: Final[int] + SDL_GAMEPAD_AXIS_COUNT: Final[int] + SDL_GAMEPAD_AXIS_INVALID: Final[Literal[-1]] = -1 + SDL_GAMEPAD_AXIS_LEFTX: Final[int] + SDL_GAMEPAD_AXIS_LEFTY: Final[int] + SDL_GAMEPAD_AXIS_LEFT_TRIGGER: Final[int] + SDL_GAMEPAD_AXIS_RIGHTX: Final[int] + SDL_GAMEPAD_AXIS_RIGHTY: Final[int] + SDL_GAMEPAD_AXIS_RIGHT_TRIGGER: Final[int] + SDL_GAMEPAD_BINDTYPE_AXIS: Final[int] + SDL_GAMEPAD_BINDTYPE_BUTTON: Final[int] + SDL_GAMEPAD_BINDTYPE_HAT: Final[int] + SDL_GAMEPAD_BINDTYPE_NONE: Final[Literal[0]] = 0 + SDL_GAMEPAD_BUTTON_BACK: Final[int] + SDL_GAMEPAD_BUTTON_COUNT: Final[int] + SDL_GAMEPAD_BUTTON_DPAD_DOWN: Final[int] + SDL_GAMEPAD_BUTTON_DPAD_LEFT: Final[int] + SDL_GAMEPAD_BUTTON_DPAD_RIGHT: Final[int] + SDL_GAMEPAD_BUTTON_DPAD_UP: Final[int] + SDL_GAMEPAD_BUTTON_EAST: Final[int] + SDL_GAMEPAD_BUTTON_GUIDE: Final[int] + SDL_GAMEPAD_BUTTON_INVALID: Final[Literal[-1]] = -1 + SDL_GAMEPAD_BUTTON_LABEL_A: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_B: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_CIRCLE: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_CROSS: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_SQUARE: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_TRIANGLE: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_UNKNOWN: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_X: Final[int] + SDL_GAMEPAD_BUTTON_LABEL_Y: Final[int] + SDL_GAMEPAD_BUTTON_LEFT_PADDLE1: Final[int] + SDL_GAMEPAD_BUTTON_LEFT_PADDLE2: Final[int] + SDL_GAMEPAD_BUTTON_LEFT_SHOULDER: Final[int] + SDL_GAMEPAD_BUTTON_LEFT_STICK: Final[int] + SDL_GAMEPAD_BUTTON_MISC1: Final[int] + SDL_GAMEPAD_BUTTON_MISC2: Final[int] + SDL_GAMEPAD_BUTTON_MISC3: Final[int] + SDL_GAMEPAD_BUTTON_MISC4: Final[int] + SDL_GAMEPAD_BUTTON_MISC5: Final[int] + SDL_GAMEPAD_BUTTON_MISC6: Final[int] + SDL_GAMEPAD_BUTTON_NORTH: Final[int] + SDL_GAMEPAD_BUTTON_RIGHT_PADDLE1: Final[int] + SDL_GAMEPAD_BUTTON_RIGHT_PADDLE2: Final[int] + SDL_GAMEPAD_BUTTON_RIGHT_SHOULDER: Final[int] + SDL_GAMEPAD_BUTTON_RIGHT_STICK: Final[int] + SDL_GAMEPAD_BUTTON_SOUTH: Final[int] + SDL_GAMEPAD_BUTTON_START: Final[int] + SDL_GAMEPAD_BUTTON_TOUCHPAD: Final[int] + SDL_GAMEPAD_BUTTON_WEST: Final[int] + SDL_GAMEPAD_TYPE_COUNT: Final[int] + SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_LEFT: Final[int] + SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_PAIR: Final[int] + SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT: Final[int] + SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_PRO: Final[int] + SDL_GAMEPAD_TYPE_PS3: Final[int] + SDL_GAMEPAD_TYPE_PS4: Final[int] + SDL_GAMEPAD_TYPE_PS5: Final[int] + SDL_GAMEPAD_TYPE_STANDARD: Final[int] + SDL_GAMEPAD_TYPE_UNKNOWN: Final[Literal[0]] = 0 + SDL_GAMEPAD_TYPE_XBOX360: Final[int] + SDL_GAMEPAD_TYPE_XBOXONE: Final[int] + SDL_GETEVENT: Final[int] + SDL_GLOB_CASEINSENSITIVE: Final[int] + SDL_GL_ACCELERATED_VISUAL: Final[int] + SDL_GL_ACCUM_ALPHA_SIZE: Final[int] + SDL_GL_ACCUM_BLUE_SIZE: Final[int] + SDL_GL_ACCUM_GREEN_SIZE: Final[int] + SDL_GL_ACCUM_RED_SIZE: Final[int] + SDL_GL_ALPHA_SIZE: Final[int] + SDL_GL_BLUE_SIZE: Final[int] + SDL_GL_BUFFER_SIZE: Final[int] + SDL_GL_CONTEXT_DEBUG_FLAG: Final[int] + SDL_GL_CONTEXT_FLAGS: Final[int] + SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG: Final[int] + SDL_GL_CONTEXT_MAJOR_VERSION: Final[int] + SDL_GL_CONTEXT_MINOR_VERSION: Final[int] + SDL_GL_CONTEXT_NO_ERROR: Final[int] + SDL_GL_CONTEXT_PROFILE_COMPATIBILITY: Final[int] + SDL_GL_CONTEXT_PROFILE_CORE: Final[int] + SDL_GL_CONTEXT_PROFILE_ES: Final[int] + SDL_GL_CONTEXT_PROFILE_MASK: Final[int] + SDL_GL_CONTEXT_RELEASE_BEHAVIOR: Final[int] + SDL_GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH: Final[int] + SDL_GL_CONTEXT_RELEASE_BEHAVIOR_NONE: Final[int] + SDL_GL_CONTEXT_RESET_ISOLATION_FLAG: Final[int] + SDL_GL_CONTEXT_RESET_LOSE_CONTEXT: Final[int] + SDL_GL_CONTEXT_RESET_NOTIFICATION: Final[int] + SDL_GL_CONTEXT_RESET_NO_NOTIFICATION: Final[int] + SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG: Final[int] + SDL_GL_DEPTH_SIZE: Final[int] + SDL_GL_DOUBLEBUFFER: Final[int] + SDL_GL_EGL_PLATFORM: Final[int] + SDL_GL_FLOATBUFFERS: Final[int] + SDL_GL_FRAMEBUFFER_SRGB_CAPABLE: Final[int] + SDL_GL_GREEN_SIZE: Final[int] + SDL_GL_MULTISAMPLEBUFFERS: Final[int] + SDL_GL_MULTISAMPLESAMPLES: Final[int] + SDL_GL_RED_SIZE: Final[int] + SDL_GL_RETAINED_BACKING: Final[int] + SDL_GL_SHARE_WITH_CURRENT_CONTEXT: Final[int] + SDL_GL_STENCIL_SIZE: Final[int] + SDL_GL_STEREO: Final[int] + SDL_GPU_BLENDFACTOR_CONSTANT_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_DST_ALPHA: Final[int] + SDL_GPU_BLENDFACTOR_DST_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_INVALID: Final[int] + SDL_GPU_BLENDFACTOR_ONE: Final[int] + SDL_GPU_BLENDFACTOR_ONE_MINUS_CONSTANT_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_ALPHA: Final[int] + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_ALPHA: Final[int] + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_SRC_ALPHA: Final[int] + SDL_GPU_BLENDFACTOR_SRC_ALPHA_SATURATE: Final[int] + SDL_GPU_BLENDFACTOR_SRC_COLOR: Final[int] + SDL_GPU_BLENDFACTOR_ZERO: Final[int] + SDL_GPU_BLENDOP_ADD: Final[int] + SDL_GPU_BLENDOP_INVALID: Final[int] + SDL_GPU_BLENDOP_MAX: Final[int] + SDL_GPU_BLENDOP_MIN: Final[int] + SDL_GPU_BLENDOP_REVERSE_SUBTRACT: Final[int] + SDL_GPU_BLENDOP_SUBTRACT: Final[int] + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ: Final[int] + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_WRITE: Final[int] + SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ: Final[int] + SDL_GPU_BUFFERUSAGE_INDEX: Final[int] + SDL_GPU_BUFFERUSAGE_INDIRECT: Final[int] + SDL_GPU_BUFFERUSAGE_VERTEX: Final[int] + SDL_GPU_COLORCOMPONENT_A: Final[int] + SDL_GPU_COLORCOMPONENT_B: Final[int] + SDL_GPU_COLORCOMPONENT_G: Final[int] + SDL_GPU_COLORCOMPONENT_R: Final[int] + SDL_GPU_COMPAREOP_ALWAYS: Final[int] + SDL_GPU_COMPAREOP_EQUAL: Final[int] + SDL_GPU_COMPAREOP_GREATER: Final[int] + SDL_GPU_COMPAREOP_GREATER_OR_EQUAL: Final[int] + SDL_GPU_COMPAREOP_INVALID: Final[int] + SDL_GPU_COMPAREOP_LESS: Final[int] + SDL_GPU_COMPAREOP_LESS_OR_EQUAL: Final[int] + SDL_GPU_COMPAREOP_NEVER: Final[int] + SDL_GPU_COMPAREOP_NOT_EQUAL: Final[int] + SDL_GPU_CUBEMAPFACE_NEGATIVEX: Final[int] + SDL_GPU_CUBEMAPFACE_NEGATIVEY: Final[int] + SDL_GPU_CUBEMAPFACE_NEGATIVEZ: Final[int] + SDL_GPU_CUBEMAPFACE_POSITIVEX: Final[int] + SDL_GPU_CUBEMAPFACE_POSITIVEY: Final[int] + SDL_GPU_CUBEMAPFACE_POSITIVEZ: Final[int] + SDL_GPU_CULLMODE_BACK: Final[int] + SDL_GPU_CULLMODE_FRONT: Final[int] + SDL_GPU_CULLMODE_NONE: Final[int] + SDL_GPU_FILLMODE_FILL: Final[int] + SDL_GPU_FILLMODE_LINE: Final[int] + SDL_GPU_FILTER_LINEAR: Final[int] + SDL_GPU_FILTER_NEAREST: Final[int] + SDL_GPU_FRONTFACE_CLOCKWISE: Final[int] + SDL_GPU_FRONTFACE_COUNTER_CLOCKWISE: Final[int] + SDL_GPU_INDEXELEMENTSIZE_16BIT: Final[int] + SDL_GPU_INDEXELEMENTSIZE_32BIT: Final[int] + SDL_GPU_LOADOP_CLEAR: Final[int] + SDL_GPU_LOADOP_DONT_CARE: Final[int] + SDL_GPU_LOADOP_LOAD: Final[int] + SDL_GPU_PRESENTMODE_IMMEDIATE: Final[int] + SDL_GPU_PRESENTMODE_MAILBOX: Final[int] + SDL_GPU_PRESENTMODE_VSYNC: Final[int] + SDL_GPU_PRIMITIVETYPE_LINELIST: Final[int] + SDL_GPU_PRIMITIVETYPE_LINESTRIP: Final[int] + SDL_GPU_PRIMITIVETYPE_POINTLIST: Final[int] + SDL_GPU_PRIMITIVETYPE_TRIANGLELIST: Final[int] + SDL_GPU_PRIMITIVETYPE_TRIANGLESTRIP: Final[int] + SDL_GPU_SAMPLECOUNT_1: Final[int] + SDL_GPU_SAMPLECOUNT_2: Final[int] + SDL_GPU_SAMPLECOUNT_4: Final[int] + SDL_GPU_SAMPLECOUNT_8: Final[int] + SDL_GPU_SAMPLERADDRESSMODE_CLAMP_TO_EDGE: Final[int] + SDL_GPU_SAMPLERADDRESSMODE_MIRRORED_REPEAT: Final[int] + SDL_GPU_SAMPLERADDRESSMODE_REPEAT: Final[int] + SDL_GPU_SAMPLERMIPMAPMODE_LINEAR: Final[int] + SDL_GPU_SAMPLERMIPMAPMODE_NEAREST: Final[int] + SDL_GPU_SHADERFORMAT_DXBC: Final[int] + SDL_GPU_SHADERFORMAT_DXIL: Final[int] + SDL_GPU_SHADERFORMAT_INVALID: Final[int] + SDL_GPU_SHADERFORMAT_METALLIB: Final[int] + SDL_GPU_SHADERFORMAT_MSL: Final[int] + SDL_GPU_SHADERFORMAT_PRIVATE: Final[int] + SDL_GPU_SHADERFORMAT_SPIRV: Final[int] + SDL_GPU_SHADERSTAGE_FRAGMENT: Final[int] + SDL_GPU_SHADERSTAGE_VERTEX: Final[int] + SDL_GPU_STENCILOP_DECREMENT_AND_CLAMP: Final[int] + SDL_GPU_STENCILOP_DECREMENT_AND_WRAP: Final[int] + SDL_GPU_STENCILOP_INCREMENT_AND_CLAMP: Final[int] + SDL_GPU_STENCILOP_INCREMENT_AND_WRAP: Final[int] + SDL_GPU_STENCILOP_INVALID: Final[int] + SDL_GPU_STENCILOP_INVERT: Final[int] + SDL_GPU_STENCILOP_KEEP: Final[int] + SDL_GPU_STENCILOP_REPLACE: Final[int] + SDL_GPU_STENCILOP_ZERO: Final[int] + SDL_GPU_STOREOP_DONT_CARE: Final[int] + SDL_GPU_STOREOP_RESOLVE: Final[int] + SDL_GPU_STOREOP_RESOLVE_AND_STORE: Final[int] + SDL_GPU_STOREOP_STORE: Final[int] + SDL_GPU_SWAPCHAINCOMPOSITION_HDR10_ST2084: Final[int] + SDL_GPU_SWAPCHAINCOMPOSITION_HDR_EXTENDED_LINEAR: Final[int] + SDL_GPU_SWAPCHAINCOMPOSITION_SDR: Final[int] + SDL_GPU_SWAPCHAINCOMPOSITION_SDR_LINEAR: Final[int] + SDL_GPU_TEXTUREFORMAT_A8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x10_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x10_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x10_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x5_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x5_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x5_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x6_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x6_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x6_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x8_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_10x8_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x10_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x10_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x10_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x12_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x12_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_12x12_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_4x4_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_4x4_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_4x4_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x4_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x4_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x4_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x5_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x5_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_5x5_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x5_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x5_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x5_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x6_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x6_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_6x6_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x5_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x5_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x5_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x6_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x6_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x6_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x8_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_ASTC_8x8_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_B4G4R4A4_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_B5G5R5A1_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_B5G6R5_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_BC1_RGBA_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC1_RGBA_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_BC2_RGBA_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC2_RGBA_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_BC3_RGBA_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC3_RGBA_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_BC4_R_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC5_RG_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC6H_RGB_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_BC6H_RGB_UFLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_BC7_RGBA_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_BC7_RGBA_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_D16_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_D24_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_D24_UNORM_S8_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_D32_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_D32_FLOAT_S8_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_INVALID: Final[int] + SDL_GPU_TEXTUREFORMAT_R10G10B10A2_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R11G11B10_UFLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16G16_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R16_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R16_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R16_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32G32_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32_FLOAT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R32_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM_SRGB: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8G8_UNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R8_INT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8_SNORM: Final[int] + SDL_GPU_TEXTUREFORMAT_R8_UINT: Final[int] + SDL_GPU_TEXTUREFORMAT_R8_UNORM: Final[int] + SDL_GPU_TEXTURETYPE_2D: Final[int] + SDL_GPU_TEXTURETYPE_2D_ARRAY: Final[int] + SDL_GPU_TEXTURETYPE_3D: Final[int] + SDL_GPU_TEXTURETYPE_CUBE: Final[int] + SDL_GPU_TEXTURETYPE_CUBE_ARRAY: Final[int] + SDL_GPU_TEXTUREUSAGE_COLOR_TARGET: Final[int] + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ: Final[int] + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_SIMULTANEOUS_READ_WRITE: Final[int] + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_WRITE: Final[int] + SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET: Final[int] + SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ: Final[int] + SDL_GPU_TEXTUREUSAGE_SAMPLER: Final[int] + SDL_GPU_TRANSFERBUFFERUSAGE_DOWNLOAD: Final[int] + SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT3: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_HALF2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_HALF4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_INT2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_INT3: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_INT4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_INT: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_INVALID: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UINT2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UINT3: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UINT4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_UINT: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2_NORM: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4: Final[int] + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4_NORM: Final[int] + SDL_GPU_VERTEXINPUTRATE_INSTANCE: Final[int] + SDL_GPU_VERTEXINPUTRATE_VERTEX: Final[int] + SDL_HAPTIC_AUTOCENTER: Final[int] + SDL_HAPTIC_CARTESIAN: Final[int] + SDL_HAPTIC_CONSTANT: Final[int] + SDL_HAPTIC_CUSTOM: Final[int] + SDL_HAPTIC_DAMPER: Final[int] + SDL_HAPTIC_FRICTION: Final[int] + SDL_HAPTIC_GAIN: Final[int] + SDL_HAPTIC_INERTIA: Final[int] + SDL_HAPTIC_INFINITY: Final[int] + SDL_HAPTIC_LEFTRIGHT: Final[int] + SDL_HAPTIC_PAUSE: Final[int] + SDL_HAPTIC_POLAR: Final[int] + SDL_HAPTIC_RAMP: Final[int] + SDL_HAPTIC_RESERVED1: Final[int] + SDL_HAPTIC_RESERVED2: Final[int] + SDL_HAPTIC_RESERVED3: Final[int] + SDL_HAPTIC_SAWTOOTHDOWN: Final[int] + SDL_HAPTIC_SAWTOOTHUP: Final[int] + SDL_HAPTIC_SINE: Final[int] + SDL_HAPTIC_SPHERICAL: Final[int] + SDL_HAPTIC_SPRING: Final[int] + SDL_HAPTIC_SQUARE: Final[int] + SDL_HAPTIC_STATUS: Final[int] + SDL_HAPTIC_STEERING_AXIS: Final[int] + SDL_HAPTIC_TRIANGLE: Final[int] + SDL_HAT_CENTERED: Final[int] + SDL_HAT_DOWN: Final[int] + SDL_HAT_LEFT: Final[int] + SDL_HAT_LEFTDOWN: Final[int] + SDL_HAT_LEFTUP: Final[int] + SDL_HAT_RIGHT: Final[int] + SDL_HAT_RIGHTDOWN: Final[int] + SDL_HAT_RIGHTUP: Final[int] + SDL_HAT_UP: Final[int] + SDL_HID_API_BUS_BLUETOOTH: Final[Literal[2]] = 2 + SDL_HID_API_BUS_I2C: Final[Literal[3]] = 3 + SDL_HID_API_BUS_SPI: Final[Literal[4]] = 4 + SDL_HID_API_BUS_UNKNOWN: Final[Literal[0]] = 0 + SDL_HID_API_BUS_USB: Final[Literal[1]] = 1 + SDL_HINT_DEFAULT: Final[int] + SDL_HINT_NORMAL: Final[int] + SDL_HINT_OVERRIDE: Final[int] + SDL_HITTEST_DRAGGABLE: Final[int] + SDL_HITTEST_NORMAL: Final[int] + SDL_HITTEST_RESIZE_BOTTOM: Final[int] + SDL_HITTEST_RESIZE_BOTTOMLEFT: Final[int] + SDL_HITTEST_RESIZE_BOTTOMRIGHT: Final[int] + SDL_HITTEST_RESIZE_LEFT: Final[int] + SDL_HITTEST_RESIZE_RIGHT: Final[int] + SDL_HITTEST_RESIZE_TOP: Final[int] + SDL_HITTEST_RESIZE_TOPLEFT: Final[int] + SDL_HITTEST_RESIZE_TOPRIGHT: Final[int] + SDL_ICONV_E2BIG: Final[int] + SDL_ICONV_EILSEQ: Final[int] + SDL_ICONV_EINVAL: Final[int] + SDL_ICONV_ERROR: Final[int] + SDL_INIT_AUDIO: Final[int] + SDL_INIT_CAMERA: Final[int] + SDL_INIT_EVENTS: Final[int] + SDL_INIT_GAMEPAD: Final[int] + SDL_INIT_HAPTIC: Final[int] + SDL_INIT_JOYSTICK: Final[int] + SDL_INIT_SENSOR: Final[int] + SDL_INIT_STATUS_INITIALIZED: Final[int] + SDL_INIT_STATUS_INITIALIZING: Final[int] + SDL_INIT_STATUS_UNINITIALIZED: Final[int] + SDL_INIT_STATUS_UNINITIALIZING: Final[int] + SDL_INIT_VIDEO: Final[int] + SDL_INVALID_UNICODE_CODEPOINT: Final[int] + SDL_IO_SEEK_CUR: Final[int] + SDL_IO_SEEK_END: Final[int] + SDL_IO_SEEK_SET: Final[int] + SDL_IO_STATUS_EOF: Final[int] + SDL_IO_STATUS_ERROR: Final[int] + SDL_IO_STATUS_NOT_READY: Final[int] + SDL_IO_STATUS_READONLY: Final[int] + SDL_IO_STATUS_READY: Final[int] + SDL_IO_STATUS_WRITEONLY: Final[int] + SDL_JOYSTICK_AXIS_MAX: Final[int] + SDL_JOYSTICK_AXIS_MIN: Final[int] + SDL_JOYSTICK_CONNECTION_INVALID: Final[Literal[-1]] = -1 + SDL_JOYSTICK_CONNECTION_UNKNOWN: Final[int] + SDL_JOYSTICK_CONNECTION_WIRED: Final[int] + SDL_JOYSTICK_CONNECTION_WIRELESS: Final[int] + SDL_JOYSTICK_TYPE_ARCADE_PAD: Final[int] + SDL_JOYSTICK_TYPE_ARCADE_STICK: Final[int] + SDL_JOYSTICK_TYPE_COUNT: Final[int] + SDL_JOYSTICK_TYPE_DANCE_PAD: Final[int] + SDL_JOYSTICK_TYPE_DRUM_KIT: Final[int] + SDL_JOYSTICK_TYPE_FLIGHT_STICK: Final[int] + SDL_JOYSTICK_TYPE_GAMEPAD: Final[int] + SDL_JOYSTICK_TYPE_GUITAR: Final[int] + SDL_JOYSTICK_TYPE_THROTTLE: Final[int] + SDL_JOYSTICK_TYPE_UNKNOWN: Final[int] + SDL_JOYSTICK_TYPE_WHEEL: Final[int] + SDL_KMOD_ALT: Final[int] + SDL_KMOD_CAPS: Final[int] + SDL_KMOD_CTRL: Final[int] + SDL_KMOD_GUI: Final[int] + SDL_KMOD_LALT: Final[int] + SDL_KMOD_LCTRL: Final[int] + SDL_KMOD_LEVEL5: Final[int] + SDL_KMOD_LGUI: Final[int] + SDL_KMOD_LSHIFT: Final[int] + SDL_KMOD_MODE: Final[int] + SDL_KMOD_NONE: Final[int] + SDL_KMOD_NUM: Final[int] + SDL_KMOD_RALT: Final[int] + SDL_KMOD_RCTRL: Final[int] + SDL_KMOD_RGUI: Final[int] + SDL_KMOD_RSHIFT: Final[int] + SDL_KMOD_SCROLL: Final[int] + SDL_KMOD_SHIFT: Final[int] + SDL_LIL_ENDIAN: Final[int] + SDL_LOGICAL_PRESENTATION_DISABLED: Final[int] + SDL_LOGICAL_PRESENTATION_INTEGER_SCALE: Final[int] + SDL_LOGICAL_PRESENTATION_LETTERBOX: Final[int] + SDL_LOGICAL_PRESENTATION_OVERSCAN: Final[int] + SDL_LOGICAL_PRESENTATION_STRETCH: Final[int] + SDL_LOG_CATEGORY_APPLICATION: Final[int] + SDL_LOG_CATEGORY_ASSERT: Final[int] + SDL_LOG_CATEGORY_AUDIO: Final[int] + SDL_LOG_CATEGORY_CUSTOM: Final[int] + SDL_LOG_CATEGORY_ERROR: Final[int] + SDL_LOG_CATEGORY_GPU: Final[int] + SDL_LOG_CATEGORY_INPUT: Final[int] + SDL_LOG_CATEGORY_RENDER: Final[int] + SDL_LOG_CATEGORY_RESERVED10: Final[int] + SDL_LOG_CATEGORY_RESERVED2: Final[int] + SDL_LOG_CATEGORY_RESERVED3: Final[int] + SDL_LOG_CATEGORY_RESERVED4: Final[int] + SDL_LOG_CATEGORY_RESERVED5: Final[int] + SDL_LOG_CATEGORY_RESERVED6: Final[int] + SDL_LOG_CATEGORY_RESERVED7: Final[int] + SDL_LOG_CATEGORY_RESERVED8: Final[int] + SDL_LOG_CATEGORY_RESERVED9: Final[int] + SDL_LOG_CATEGORY_SYSTEM: Final[int] + SDL_LOG_CATEGORY_TEST: Final[int] + SDL_LOG_CATEGORY_VIDEO: Final[int] + SDL_LOG_PRIORITY_COUNT: Final[int] + SDL_LOG_PRIORITY_CRITICAL: Final[int] + SDL_LOG_PRIORITY_DEBUG: Final[int] + SDL_LOG_PRIORITY_ERROR: Final[int] + SDL_LOG_PRIORITY_INFO: Final[int] + SDL_LOG_PRIORITY_INVALID: Final[int] + SDL_LOG_PRIORITY_TRACE: Final[int] + SDL_LOG_PRIORITY_VERBOSE: Final[int] + SDL_LOG_PRIORITY_WARN: Final[int] + SDL_MAJOR_VERSION: Final[int] + SDL_MATRIX_COEFFICIENTS_BT2020_CL: Final[Literal[10]] = 10 + SDL_MATRIX_COEFFICIENTS_BT2020_NCL: Final[Literal[9]] = 9 + SDL_MATRIX_COEFFICIENTS_BT470BG: Final[Literal[5]] = 5 + SDL_MATRIX_COEFFICIENTS_BT601: Final[Literal[6]] = 6 + SDL_MATRIX_COEFFICIENTS_BT709: Final[Literal[1]] = 1 + SDL_MATRIX_COEFFICIENTS_CHROMA_DERIVED_CL: Final[Literal[13]] = 13 + SDL_MATRIX_COEFFICIENTS_CHROMA_DERIVED_NCL: Final[Literal[12]] = 12 + SDL_MATRIX_COEFFICIENTS_CUSTOM: Final[Literal[31]] = 31 + SDL_MATRIX_COEFFICIENTS_FCC: Final[Literal[4]] = 4 + SDL_MATRIX_COEFFICIENTS_ICTCP: Final[Literal[14]] = 14 + SDL_MATRIX_COEFFICIENTS_IDENTITY: Final[Literal[0]] = 0 + SDL_MATRIX_COEFFICIENTS_SMPTE2085: Final[Literal[11]] = 11 + SDL_MATRIX_COEFFICIENTS_SMPTE240: Final[Literal[7]] = 7 + SDL_MATRIX_COEFFICIENTS_UNSPECIFIED: Final[Literal[2]] = 2 + SDL_MATRIX_COEFFICIENTS_YCGCO: Final[Literal[8]] = 8 + SDL_MAX_SINT16: Final[int] + SDL_MAX_SINT32: Final[int] + SDL_MAX_SINT64: Final[int] + SDL_MAX_SINT8: Final[int] + SDL_MAX_TIME: Final[int] + SDL_MAX_UINT16: Final[int] + SDL_MAX_UINT32: Final[int] + SDL_MAX_UINT64: Final[int] + SDL_MAX_UINT8: Final[int] + SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT: Final[int] + SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT: Final[int] + SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT: Final[int] + SDL_MESSAGEBOX_BUTTON_RETURNKEY_DEFAULT: Final[int] + SDL_MESSAGEBOX_COLOR_BACKGROUND: Final[int] + SDL_MESSAGEBOX_COLOR_BUTTON_BACKGROUND: Final[int] + SDL_MESSAGEBOX_COLOR_BUTTON_BORDER: Final[int] + SDL_MESSAGEBOX_COLOR_BUTTON_SELECTED: Final[int] + SDL_MESSAGEBOX_COLOR_COUNT: Final[int] + SDL_MESSAGEBOX_COLOR_TEXT: Final[int] + SDL_MESSAGEBOX_ERROR: Final[int] + SDL_MESSAGEBOX_INFORMATION: Final[int] + SDL_MESSAGEBOX_WARNING: Final[int] + SDL_MICRO_VERSION: Final[int] + SDL_MINOR_VERSION: Final[int] + SDL_MIN_SINT16: Final[int] + SDL_MIN_SINT32: Final[int] + SDL_MIN_SINT64: Final[int] + SDL_MIN_SINT8: Final[int] + SDL_MIN_TIME: Final[int] + SDL_MIN_UINT16: Final[int] + SDL_MIN_UINT32: Final[int] + SDL_MIN_UINT64: Final[int] + SDL_MIN_UINT8: Final[int] + SDL_MOUSEWHEEL_FLIPPED: Final[int] + SDL_MOUSEWHEEL_NORMAL: Final[int] + SDL_MOUSE_TOUCHID: Final[int] + SDL_MS_PER_SECOND: Final[int] + SDL_NS_PER_MS: Final[int] + SDL_NS_PER_SECOND: Final[int] + SDL_NS_PER_US: Final[int] + SDL_NULL_WHILE_LOOP_CONDITION: Final[int] + SDL_ORIENTATION_LANDSCAPE: Final[int] + SDL_ORIENTATION_LANDSCAPE_FLIPPED: Final[int] + SDL_ORIENTATION_PORTRAIT: Final[int] + SDL_ORIENTATION_PORTRAIT_FLIPPED: Final[int] + SDL_ORIENTATION_UNKNOWN: Final[int] + SDL_PACKEDLAYOUT_1010102: Final[int] + SDL_PACKEDLAYOUT_1555: Final[int] + SDL_PACKEDLAYOUT_2101010: Final[int] + SDL_PACKEDLAYOUT_332: Final[int] + SDL_PACKEDLAYOUT_4444: Final[int] + SDL_PACKEDLAYOUT_5551: Final[int] + SDL_PACKEDLAYOUT_565: Final[int] + SDL_PACKEDLAYOUT_8888: Final[int] + SDL_PACKEDLAYOUT_NONE: Final[int] + SDL_PACKEDORDER_ABGR: Final[int] + SDL_PACKEDORDER_ARGB: Final[int] + SDL_PACKEDORDER_BGRA: Final[int] + SDL_PACKEDORDER_BGRX: Final[int] + SDL_PACKEDORDER_NONE: Final[int] + SDL_PACKEDORDER_RGBA: Final[int] + SDL_PACKEDORDER_RGBX: Final[int] + SDL_PACKEDORDER_XBGR: Final[int] + SDL_PACKEDORDER_XRGB: Final[int] + SDL_PATHTYPE_DIRECTORY: Final[int] + SDL_PATHTYPE_FILE: Final[int] + SDL_PATHTYPE_NONE: Final[int] + SDL_PATHTYPE_OTHER: Final[int] + SDL_PEEKEVENT: Final[int] + SDL_PEN_AXIS_COUNT: Final[int] + SDL_PEN_AXIS_DISTANCE: Final[int] + SDL_PEN_AXIS_PRESSURE: Final[int] + SDL_PEN_AXIS_ROTATION: Final[int] + SDL_PEN_AXIS_SLIDER: Final[int] + SDL_PEN_AXIS_TANGENTIAL_PRESSURE: Final[int] + SDL_PEN_AXIS_XTILT: Final[int] + SDL_PEN_AXIS_YTILT: Final[int] + SDL_PEN_INPUT_BUTTON_1: Final[int] + SDL_PEN_INPUT_BUTTON_2: Final[int] + SDL_PEN_INPUT_BUTTON_3: Final[int] + SDL_PEN_INPUT_BUTTON_4: Final[int] + SDL_PEN_INPUT_BUTTON_5: Final[int] + SDL_PEN_INPUT_DOWN: Final[int] + SDL_PEN_INPUT_ERASER_TIP: Final[int] + SDL_PEN_MOUSEID: Final[int] + SDL_PEN_TOUCHID: Final[int] + SDL_PIXELTYPE_ARRAYF16: Final[int] + SDL_PIXELTYPE_ARRAYF32: Final[int] + SDL_PIXELTYPE_ARRAYU16: Final[int] + SDL_PIXELTYPE_ARRAYU32: Final[int] + SDL_PIXELTYPE_ARRAYU8: Final[int] + SDL_PIXELTYPE_INDEX1: Final[int] + SDL_PIXELTYPE_INDEX2: Final[int] + SDL_PIXELTYPE_INDEX4: Final[int] + SDL_PIXELTYPE_INDEX8: Final[int] + SDL_PIXELTYPE_PACKED16: Final[int] + SDL_PIXELTYPE_PACKED32: Final[int] + SDL_PIXELTYPE_PACKED8: Final[int] + SDL_PIXELTYPE_UNKNOWN: Final[int] + SDL_POWERSTATE_CHARGED: Final[int] + SDL_POWERSTATE_CHARGING: Final[int] + SDL_POWERSTATE_ERROR: Final[Literal[-1]] = -1 + SDL_POWERSTATE_NO_BATTERY: Final[int] + SDL_POWERSTATE_ON_BATTERY: Final[int] + SDL_POWERSTATE_UNKNOWN: Final[int] + SDL_PROCESS_STDIO_APP: Final[int] + SDL_PROCESS_STDIO_INHERITED: Final[int] + SDL_PROCESS_STDIO_NULL: Final[int] + SDL_PROCESS_STDIO_REDIRECT: Final[int] + SDL_PROPERTY_TYPE_BOOLEAN: Final[int] + SDL_PROPERTY_TYPE_FLOAT: Final[int] + SDL_PROPERTY_TYPE_INVALID: Final[int] + SDL_PROPERTY_TYPE_NUMBER: Final[int] + SDL_PROPERTY_TYPE_POINTER: Final[int] + SDL_PROPERTY_TYPE_STRING: Final[int] + SDL_RENDERER_VSYNC_ADAPTIVE: Final[int] + SDL_RENDERER_VSYNC_DISABLED: Final[int] + SDL_SANDBOX_FLATPAK: Final[int] + SDL_SANDBOX_MACOS: Final[int] + SDL_SANDBOX_NONE: Final[Literal[0]] = 0 + SDL_SANDBOX_SNAP: Final[int] + SDL_SANDBOX_UNKNOWN_CONTAINER: Final[int] + SDL_SCALEMODE_INVALID: Final[Literal[-1]] = -1 + SDL_SCALEMODE_LINEAR: Final[int] + SDL_SCALEMODE_NEAREST: Final[int] + SDL_SCANCODE_0: Final[Literal[39]] = 39 + SDL_SCANCODE_1: Final[Literal[30]] = 30 + SDL_SCANCODE_2: Final[Literal[31]] = 31 + SDL_SCANCODE_3: Final[Literal[32]] = 32 + SDL_SCANCODE_4: Final[Literal[33]] = 33 + SDL_SCANCODE_5: Final[Literal[34]] = 34 + SDL_SCANCODE_6: Final[Literal[35]] = 35 + SDL_SCANCODE_7: Final[Literal[36]] = 36 + SDL_SCANCODE_8: Final[Literal[37]] = 37 + SDL_SCANCODE_9: Final[Literal[38]] = 38 + SDL_SCANCODE_A: Final[Literal[4]] = 4 + SDL_SCANCODE_AC_BACK: Final[Literal[282]] = 282 + SDL_SCANCODE_AC_BOOKMARKS: Final[Literal[286]] = 286 + SDL_SCANCODE_AC_CLOSE: Final[Literal[275]] = 275 + SDL_SCANCODE_AC_EXIT: Final[Literal[276]] = 276 + SDL_SCANCODE_AC_FORWARD: Final[Literal[283]] = 283 + SDL_SCANCODE_AC_HOME: Final[Literal[281]] = 281 + SDL_SCANCODE_AC_NEW: Final[Literal[273]] = 273 + SDL_SCANCODE_AC_OPEN: Final[Literal[274]] = 274 + SDL_SCANCODE_AC_PRINT: Final[Literal[278]] = 278 + SDL_SCANCODE_AC_PROPERTIES: Final[Literal[279]] = 279 + SDL_SCANCODE_AC_REFRESH: Final[Literal[285]] = 285 + SDL_SCANCODE_AC_SAVE: Final[Literal[277]] = 277 + SDL_SCANCODE_AC_SEARCH: Final[Literal[280]] = 280 + SDL_SCANCODE_AC_STOP: Final[Literal[284]] = 284 + SDL_SCANCODE_AGAIN: Final[Literal[121]] = 121 + SDL_SCANCODE_ALTERASE: Final[Literal[153]] = 153 + SDL_SCANCODE_APOSTROPHE: Final[Literal[52]] = 52 + SDL_SCANCODE_APPLICATION: Final[Literal[101]] = 101 + SDL_SCANCODE_B: Final[Literal[5]] = 5 + SDL_SCANCODE_BACKSLASH: Final[Literal[49]] = 49 + SDL_SCANCODE_BACKSPACE: Final[Literal[42]] = 42 + SDL_SCANCODE_C: Final[Literal[6]] = 6 + SDL_SCANCODE_CALL: Final[Literal[289]] = 289 + SDL_SCANCODE_CANCEL: Final[Literal[155]] = 155 + SDL_SCANCODE_CAPSLOCK: Final[Literal[57]] = 57 + SDL_SCANCODE_CHANNEL_DECREMENT: Final[Literal[261]] = 261 + SDL_SCANCODE_CHANNEL_INCREMENT: Final[Literal[260]] = 260 + SDL_SCANCODE_CLEAR: Final[Literal[156]] = 156 + SDL_SCANCODE_CLEARAGAIN: Final[Literal[162]] = 162 + SDL_SCANCODE_COMMA: Final[Literal[54]] = 54 + SDL_SCANCODE_COPY: Final[Literal[124]] = 124 + SDL_SCANCODE_COUNT: Final[Literal[512]] = 512 + SDL_SCANCODE_CRSEL: Final[Literal[163]] = 163 + SDL_SCANCODE_CURRENCYSUBUNIT: Final[Literal[181]] = 181 + SDL_SCANCODE_CURRENCYUNIT: Final[Literal[180]] = 180 + SDL_SCANCODE_CUT: Final[Literal[123]] = 123 + SDL_SCANCODE_D: Final[Literal[7]] = 7 + SDL_SCANCODE_DECIMALSEPARATOR: Final[Literal[179]] = 179 + SDL_SCANCODE_DELETE: Final[Literal[76]] = 76 + SDL_SCANCODE_DOWN: Final[Literal[81]] = 81 + SDL_SCANCODE_E: Final[Literal[8]] = 8 + SDL_SCANCODE_END: Final[Literal[77]] = 77 + SDL_SCANCODE_ENDCALL: Final[Literal[290]] = 290 + SDL_SCANCODE_EQUALS: Final[Literal[46]] = 46 + SDL_SCANCODE_ESCAPE: Final[Literal[41]] = 41 + SDL_SCANCODE_EXECUTE: Final[Literal[116]] = 116 + SDL_SCANCODE_EXSEL: Final[Literal[164]] = 164 + SDL_SCANCODE_F10: Final[Literal[67]] = 67 + SDL_SCANCODE_F11: Final[Literal[68]] = 68 + SDL_SCANCODE_F12: Final[Literal[69]] = 69 + SDL_SCANCODE_F13: Final[Literal[104]] = 104 + SDL_SCANCODE_F14: Final[Literal[105]] = 105 + SDL_SCANCODE_F15: Final[Literal[106]] = 106 + SDL_SCANCODE_F16: Final[Literal[107]] = 107 + SDL_SCANCODE_F17: Final[Literal[108]] = 108 + SDL_SCANCODE_F18: Final[Literal[109]] = 109 + SDL_SCANCODE_F19: Final[Literal[110]] = 110 + SDL_SCANCODE_F1: Final[Literal[58]] = 58 + SDL_SCANCODE_F20: Final[Literal[111]] = 111 + SDL_SCANCODE_F21: Final[Literal[112]] = 112 + SDL_SCANCODE_F22: Final[Literal[113]] = 113 + SDL_SCANCODE_F23: Final[Literal[114]] = 114 + SDL_SCANCODE_F24: Final[Literal[115]] = 115 + SDL_SCANCODE_F2: Final[Literal[59]] = 59 + SDL_SCANCODE_F3: Final[Literal[60]] = 60 + SDL_SCANCODE_F4: Final[Literal[61]] = 61 + SDL_SCANCODE_F5: Final[Literal[62]] = 62 + SDL_SCANCODE_F6: Final[Literal[63]] = 63 + SDL_SCANCODE_F7: Final[Literal[64]] = 64 + SDL_SCANCODE_F8: Final[Literal[65]] = 65 + SDL_SCANCODE_F9: Final[Literal[66]] = 66 + SDL_SCANCODE_F: Final[Literal[9]] = 9 + SDL_SCANCODE_FIND: Final[Literal[126]] = 126 + SDL_SCANCODE_G: Final[Literal[10]] = 10 + SDL_SCANCODE_GRAVE: Final[Literal[53]] = 53 + SDL_SCANCODE_H: Final[Literal[11]] = 11 + SDL_SCANCODE_HELP: Final[Literal[117]] = 117 + SDL_SCANCODE_HOME: Final[Literal[74]] = 74 + SDL_SCANCODE_I: Final[Literal[12]] = 12 + SDL_SCANCODE_INSERT: Final[Literal[73]] = 73 + SDL_SCANCODE_INTERNATIONAL1: Final[Literal[135]] = 135 + SDL_SCANCODE_INTERNATIONAL2: Final[Literal[136]] = 136 + SDL_SCANCODE_INTERNATIONAL3: Final[Literal[137]] = 137 + SDL_SCANCODE_INTERNATIONAL4: Final[Literal[138]] = 138 + SDL_SCANCODE_INTERNATIONAL5: Final[Literal[139]] = 139 + SDL_SCANCODE_INTERNATIONAL6: Final[Literal[140]] = 140 + SDL_SCANCODE_INTERNATIONAL7: Final[Literal[141]] = 141 + SDL_SCANCODE_INTERNATIONAL8: Final[Literal[142]] = 142 + SDL_SCANCODE_INTERNATIONAL9: Final[Literal[143]] = 143 + SDL_SCANCODE_J: Final[Literal[13]] = 13 + SDL_SCANCODE_K: Final[Literal[14]] = 14 + SDL_SCANCODE_KP_000: Final[Literal[177]] = 177 + SDL_SCANCODE_KP_00: Final[Literal[176]] = 176 + SDL_SCANCODE_KP_0: Final[Literal[98]] = 98 + SDL_SCANCODE_KP_1: Final[Literal[89]] = 89 + SDL_SCANCODE_KP_2: Final[Literal[90]] = 90 + SDL_SCANCODE_KP_3: Final[Literal[91]] = 91 + SDL_SCANCODE_KP_4: Final[Literal[92]] = 92 + SDL_SCANCODE_KP_5: Final[Literal[93]] = 93 + SDL_SCANCODE_KP_6: Final[Literal[94]] = 94 + SDL_SCANCODE_KP_7: Final[Literal[95]] = 95 + SDL_SCANCODE_KP_8: Final[Literal[96]] = 96 + SDL_SCANCODE_KP_9: Final[Literal[97]] = 97 + SDL_SCANCODE_KP_A: Final[Literal[188]] = 188 + SDL_SCANCODE_KP_AMPERSAND: Final[Literal[199]] = 199 + SDL_SCANCODE_KP_AT: Final[Literal[206]] = 206 + SDL_SCANCODE_KP_B: Final[Literal[189]] = 189 + SDL_SCANCODE_KP_BACKSPACE: Final[Literal[187]] = 187 + SDL_SCANCODE_KP_BINARY: Final[Literal[218]] = 218 + SDL_SCANCODE_KP_C: Final[Literal[190]] = 190 + SDL_SCANCODE_KP_CLEAR: Final[Literal[216]] = 216 + SDL_SCANCODE_KP_CLEARENTRY: Final[Literal[217]] = 217 + SDL_SCANCODE_KP_COLON: Final[Literal[203]] = 203 + SDL_SCANCODE_KP_COMMA: Final[Literal[133]] = 133 + SDL_SCANCODE_KP_D: Final[Literal[191]] = 191 + SDL_SCANCODE_KP_DBLAMPERSAND: Final[Literal[200]] = 200 + SDL_SCANCODE_KP_DBLVERTICALBAR: Final[Literal[202]] = 202 + SDL_SCANCODE_KP_DECIMAL: Final[Literal[220]] = 220 + SDL_SCANCODE_KP_DIVIDE: Final[Literal[84]] = 84 + SDL_SCANCODE_KP_E: Final[Literal[192]] = 192 + SDL_SCANCODE_KP_ENTER: Final[Literal[88]] = 88 + SDL_SCANCODE_KP_EQUALS: Final[Literal[103]] = 103 + SDL_SCANCODE_KP_EQUALSAS400: Final[Literal[134]] = 134 + SDL_SCANCODE_KP_EXCLAM: Final[Literal[207]] = 207 + SDL_SCANCODE_KP_F: Final[Literal[193]] = 193 + SDL_SCANCODE_KP_GREATER: Final[Literal[198]] = 198 + SDL_SCANCODE_KP_HASH: Final[Literal[204]] = 204 + SDL_SCANCODE_KP_HEXADECIMAL: Final[Literal[221]] = 221 + SDL_SCANCODE_KP_LEFTBRACE: Final[Literal[184]] = 184 + SDL_SCANCODE_KP_LEFTPAREN: Final[Literal[182]] = 182 + SDL_SCANCODE_KP_LESS: Final[Literal[197]] = 197 + SDL_SCANCODE_KP_MEMADD: Final[Literal[211]] = 211 + SDL_SCANCODE_KP_MEMCLEAR: Final[Literal[210]] = 210 + SDL_SCANCODE_KP_MEMDIVIDE: Final[Literal[214]] = 214 + SDL_SCANCODE_KP_MEMMULTIPLY: Final[Literal[213]] = 213 + SDL_SCANCODE_KP_MEMRECALL: Final[Literal[209]] = 209 + SDL_SCANCODE_KP_MEMSTORE: Final[Literal[208]] = 208 + SDL_SCANCODE_KP_MEMSUBTRACT: Final[Literal[212]] = 212 + SDL_SCANCODE_KP_MINUS: Final[Literal[86]] = 86 + SDL_SCANCODE_KP_MULTIPLY: Final[Literal[85]] = 85 + SDL_SCANCODE_KP_OCTAL: Final[Literal[219]] = 219 + SDL_SCANCODE_KP_PERCENT: Final[Literal[196]] = 196 + SDL_SCANCODE_KP_PERIOD: Final[Literal[99]] = 99 + SDL_SCANCODE_KP_PLUS: Final[Literal[87]] = 87 + SDL_SCANCODE_KP_PLUSMINUS: Final[Literal[215]] = 215 + SDL_SCANCODE_KP_POWER: Final[Literal[195]] = 195 + SDL_SCANCODE_KP_RIGHTBRACE: Final[Literal[185]] = 185 + SDL_SCANCODE_KP_RIGHTPAREN: Final[Literal[183]] = 183 + SDL_SCANCODE_KP_SPACE: Final[Literal[205]] = 205 + SDL_SCANCODE_KP_TAB: Final[Literal[186]] = 186 + SDL_SCANCODE_KP_VERTICALBAR: Final[Literal[201]] = 201 + SDL_SCANCODE_KP_XOR: Final[Literal[194]] = 194 + SDL_SCANCODE_L: Final[Literal[15]] = 15 + SDL_SCANCODE_LALT: Final[Literal[226]] = 226 + SDL_SCANCODE_LANG1: Final[Literal[144]] = 144 + SDL_SCANCODE_LANG2: Final[Literal[145]] = 145 + SDL_SCANCODE_LANG3: Final[Literal[146]] = 146 + SDL_SCANCODE_LANG4: Final[Literal[147]] = 147 + SDL_SCANCODE_LANG5: Final[Literal[148]] = 148 + SDL_SCANCODE_LANG6: Final[Literal[149]] = 149 + SDL_SCANCODE_LANG7: Final[Literal[150]] = 150 + SDL_SCANCODE_LANG8: Final[Literal[151]] = 151 + SDL_SCANCODE_LANG9: Final[Literal[152]] = 152 + SDL_SCANCODE_LCTRL: Final[Literal[224]] = 224 + SDL_SCANCODE_LEFT: Final[Literal[80]] = 80 + SDL_SCANCODE_LEFTBRACKET: Final[Literal[47]] = 47 + SDL_SCANCODE_LGUI: Final[Literal[227]] = 227 + SDL_SCANCODE_LSHIFT: Final[Literal[225]] = 225 + SDL_SCANCODE_M: Final[Literal[16]] = 16 + SDL_SCANCODE_MEDIA_EJECT: Final[Literal[270]] = 270 + SDL_SCANCODE_MEDIA_FAST_FORWARD: Final[Literal[265]] = 265 + SDL_SCANCODE_MEDIA_NEXT_TRACK: Final[Literal[267]] = 267 + SDL_SCANCODE_MEDIA_PAUSE: Final[Literal[263]] = 263 + SDL_SCANCODE_MEDIA_PLAY: Final[Literal[262]] = 262 + SDL_SCANCODE_MEDIA_PLAY_PAUSE: Final[Literal[271]] = 271 + SDL_SCANCODE_MEDIA_PREVIOUS_TRACK: Final[Literal[268]] = 268 + SDL_SCANCODE_MEDIA_RECORD: Final[Literal[264]] = 264 + SDL_SCANCODE_MEDIA_REWIND: Final[Literal[266]] = 266 + SDL_SCANCODE_MEDIA_SELECT: Final[Literal[272]] = 272 + SDL_SCANCODE_MEDIA_STOP: Final[Literal[269]] = 269 + SDL_SCANCODE_MENU: Final[Literal[118]] = 118 + SDL_SCANCODE_MINUS: Final[Literal[45]] = 45 + SDL_SCANCODE_MODE: Final[Literal[257]] = 257 + SDL_SCANCODE_MUTE: Final[Literal[127]] = 127 + SDL_SCANCODE_N: Final[Literal[17]] = 17 + SDL_SCANCODE_NONUSBACKSLASH: Final[Literal[100]] = 100 + SDL_SCANCODE_NONUSHASH: Final[Literal[50]] = 50 + SDL_SCANCODE_NUMLOCKCLEAR: Final[Literal[83]] = 83 + SDL_SCANCODE_O: Final[Literal[18]] = 18 + SDL_SCANCODE_OPER: Final[Literal[161]] = 161 + SDL_SCANCODE_OUT: Final[Literal[160]] = 160 + SDL_SCANCODE_P: Final[Literal[19]] = 19 + SDL_SCANCODE_PAGEDOWN: Final[Literal[78]] = 78 + SDL_SCANCODE_PAGEUP: Final[Literal[75]] = 75 + SDL_SCANCODE_PASTE: Final[Literal[125]] = 125 + SDL_SCANCODE_PAUSE: Final[Literal[72]] = 72 + SDL_SCANCODE_PERIOD: Final[Literal[55]] = 55 + SDL_SCANCODE_POWER: Final[Literal[102]] = 102 + SDL_SCANCODE_PRINTSCREEN: Final[Literal[70]] = 70 + SDL_SCANCODE_PRIOR: Final[Literal[157]] = 157 + SDL_SCANCODE_Q: Final[Literal[20]] = 20 + SDL_SCANCODE_R: Final[Literal[21]] = 21 + SDL_SCANCODE_RALT: Final[Literal[230]] = 230 + SDL_SCANCODE_RCTRL: Final[Literal[228]] = 228 + SDL_SCANCODE_RESERVED: Final[Literal[400]] = 400 + SDL_SCANCODE_RETURN2: Final[Literal[158]] = 158 + SDL_SCANCODE_RETURN: Final[Literal[40]] = 40 + SDL_SCANCODE_RGUI: Final[Literal[231]] = 231 + SDL_SCANCODE_RIGHT: Final[Literal[79]] = 79 + SDL_SCANCODE_RIGHTBRACKET: Final[Literal[48]] = 48 + SDL_SCANCODE_RSHIFT: Final[Literal[229]] = 229 + SDL_SCANCODE_S: Final[Literal[22]] = 22 + SDL_SCANCODE_SCROLLLOCK: Final[Literal[71]] = 71 + SDL_SCANCODE_SELECT: Final[Literal[119]] = 119 + SDL_SCANCODE_SEMICOLON: Final[Literal[51]] = 51 + SDL_SCANCODE_SEPARATOR: Final[Literal[159]] = 159 + SDL_SCANCODE_SLASH: Final[Literal[56]] = 56 + SDL_SCANCODE_SLEEP: Final[Literal[258]] = 258 + SDL_SCANCODE_SOFTLEFT: Final[Literal[287]] = 287 + SDL_SCANCODE_SOFTRIGHT: Final[Literal[288]] = 288 + SDL_SCANCODE_SPACE: Final[Literal[44]] = 44 + SDL_SCANCODE_STOP: Final[Literal[120]] = 120 + SDL_SCANCODE_SYSREQ: Final[Literal[154]] = 154 + SDL_SCANCODE_T: Final[Literal[23]] = 23 + SDL_SCANCODE_TAB: Final[Literal[43]] = 43 + SDL_SCANCODE_THOUSANDSSEPARATOR: Final[Literal[178]] = 178 + SDL_SCANCODE_U: Final[Literal[24]] = 24 + SDL_SCANCODE_UNDO: Final[Literal[122]] = 122 + SDL_SCANCODE_UNKNOWN: Final[Literal[0]] = 0 + SDL_SCANCODE_UP: Final[Literal[82]] = 82 + SDL_SCANCODE_V: Final[Literal[25]] = 25 + SDL_SCANCODE_VOLUMEDOWN: Final[Literal[129]] = 129 + SDL_SCANCODE_VOLUMEUP: Final[Literal[128]] = 128 + SDL_SCANCODE_W: Final[Literal[26]] = 26 + SDL_SCANCODE_WAKE: Final[Literal[259]] = 259 + SDL_SCANCODE_X: Final[Literal[27]] = 27 + SDL_SCANCODE_Y: Final[Literal[28]] = 28 + SDL_SCANCODE_Z: Final[Literal[29]] = 29 + SDL_SENSOR_ACCEL: Final[int] + SDL_SENSOR_ACCEL_L: Final[int] + SDL_SENSOR_ACCEL_R: Final[int] + SDL_SENSOR_GYRO: Final[int] + SDL_SENSOR_GYRO_L: Final[int] + SDL_SENSOR_GYRO_R: Final[int] + SDL_SENSOR_INVALID: Final[Literal[-1]] = -1 + SDL_SENSOR_UNKNOWN: Final[int] + SDL_SIZE_MAX: Final[int] + SDL_SURFACE_LOCKED: Final[int] + SDL_SURFACE_LOCK_NEEDED: Final[int] + SDL_SURFACE_PREALLOCATED: Final[int] + SDL_SURFACE_SIMD_ALIGNED: Final[int] + SDL_SYSTEM_CURSOR_COUNT: Final[int] + SDL_SYSTEM_CURSOR_CROSSHAIR: Final[int] + SDL_SYSTEM_CURSOR_DEFAULT: Final[int] + SDL_SYSTEM_CURSOR_EW_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_E_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_MOVE: Final[int] + SDL_SYSTEM_CURSOR_NESW_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_NE_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_NOT_ALLOWED: Final[int] + SDL_SYSTEM_CURSOR_NS_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_NWSE_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_NW_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_N_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_POINTER: Final[int] + SDL_SYSTEM_CURSOR_PROGRESS: Final[int] + SDL_SYSTEM_CURSOR_SE_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_SW_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_S_RESIZE: Final[int] + SDL_SYSTEM_CURSOR_TEXT: Final[int] + SDL_SYSTEM_CURSOR_WAIT: Final[int] + SDL_SYSTEM_CURSOR_W_RESIZE: Final[int] + SDL_SYSTEM_THEME_DARK: Final[int] + SDL_SYSTEM_THEME_LIGHT: Final[int] + SDL_SYSTEM_THEME_UNKNOWN: Final[int] + SDL_TEXTINPUT_TYPE_NUMBER: Final[int] + SDL_TEXTINPUT_TYPE_NUMBER_PASSWORD_HIDDEN: Final[int] + SDL_TEXTINPUT_TYPE_NUMBER_PASSWORD_VISIBLE: Final[int] + SDL_TEXTINPUT_TYPE_TEXT: Final[int] + SDL_TEXTINPUT_TYPE_TEXT_EMAIL: Final[int] + SDL_TEXTINPUT_TYPE_TEXT_NAME: Final[int] + SDL_TEXTINPUT_TYPE_TEXT_PASSWORD_HIDDEN: Final[int] + SDL_TEXTINPUT_TYPE_TEXT_PASSWORD_VISIBLE: Final[int] + SDL_TEXTINPUT_TYPE_TEXT_USERNAME: Final[int] + SDL_TEXTUREACCESS_STATIC: Final[int] + SDL_TEXTUREACCESS_STREAMING: Final[int] + SDL_TEXTUREACCESS_TARGET: Final[int] + SDL_THREAD_ALIVE: Final[int] + SDL_THREAD_COMPLETE: Final[int] + SDL_THREAD_DETACHED: Final[int] + SDL_THREAD_PRIORITY_HIGH: Final[int] + SDL_THREAD_PRIORITY_LOW: Final[int] + SDL_THREAD_PRIORITY_NORMAL: Final[int] + SDL_THREAD_PRIORITY_TIME_CRITICAL: Final[int] + SDL_THREAD_UNKNOWN: Final[int] + SDL_TIME_FORMAT_12HR: Final[Literal[1]] = 1 + SDL_TIME_FORMAT_24HR: Final[Literal[0]] = 0 + SDL_TOUCH_DEVICE_DIRECT: Final[int] + SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE: Final[int] + SDL_TOUCH_DEVICE_INDIRECT_RELATIVE: Final[int] + SDL_TOUCH_DEVICE_INVALID: Final[Literal[-1]] = -1 + SDL_TOUCH_MOUSEID: Final[int] + SDL_TRANSFER_CHARACTERISTICS_BT1361: Final[Literal[12]] = 12 + SDL_TRANSFER_CHARACTERISTICS_BT2020_10BIT: Final[Literal[14]] = 14 + SDL_TRANSFER_CHARACTERISTICS_BT2020_12BIT: Final[Literal[15]] = 15 + SDL_TRANSFER_CHARACTERISTICS_BT601: Final[Literal[6]] = 6 + SDL_TRANSFER_CHARACTERISTICS_BT709: Final[Literal[1]] = 1 + SDL_TRANSFER_CHARACTERISTICS_CUSTOM: Final[Literal[31]] = 31 + SDL_TRANSFER_CHARACTERISTICS_GAMMA22: Final[Literal[4]] = 4 + SDL_TRANSFER_CHARACTERISTICS_GAMMA28: Final[Literal[5]] = 5 + SDL_TRANSFER_CHARACTERISTICS_HLG: Final[Literal[18]] = 18 + SDL_TRANSFER_CHARACTERISTICS_IEC61966: Final[Literal[11]] = 11 + SDL_TRANSFER_CHARACTERISTICS_LINEAR: Final[Literal[8]] = 8 + SDL_TRANSFER_CHARACTERISTICS_LOG100: Final[Literal[9]] = 9 + SDL_TRANSFER_CHARACTERISTICS_LOG100_SQRT10: Final[Literal[10]] = 10 + SDL_TRANSFER_CHARACTERISTICS_PQ: Final[Literal[16]] = 16 + SDL_TRANSFER_CHARACTERISTICS_SMPTE240: Final[Literal[7]] = 7 + SDL_TRANSFER_CHARACTERISTICS_SMPTE428: Final[Literal[17]] = 17 + SDL_TRANSFER_CHARACTERISTICS_SRGB: Final[Literal[13]] = 13 + SDL_TRANSFER_CHARACTERISTICS_UNKNOWN: Final[Literal[0]] = 0 + SDL_TRANSFER_CHARACTERISTICS_UNSPECIFIED: Final[Literal[2]] = 2 + SDL_TRAYENTRY_BUTTON: Final[int] + SDL_TRAYENTRY_CHECKBOX: Final[int] + SDL_TRAYENTRY_CHECKED: Final[int] + SDL_TRAYENTRY_DISABLED: Final[int] + SDL_TRAYENTRY_SUBMENU: Final[int] + SDL_US_PER_SECOND: Final[int] + SDL_VERSION: Final[int] + SDL_WINDOWPOS_CENTERED: Final[int] + SDL_WINDOWPOS_CENTERED_MASK: Final[int] + SDL_WINDOWPOS_UNDEFINED: Final[int] + SDL_WINDOWPOS_UNDEFINED_MASK: Final[int] + SDL_WINDOW_ALWAYS_ON_TOP: Final[int] + SDL_WINDOW_BORDERLESS: Final[int] + SDL_WINDOW_EXTERNAL: Final[int] + SDL_WINDOW_FULLSCREEN: Final[int] + SDL_WINDOW_HIDDEN: Final[int] + SDL_WINDOW_HIGH_PIXEL_DENSITY: Final[int] + SDL_WINDOW_INPUT_FOCUS: Final[int] + SDL_WINDOW_KEYBOARD_GRABBED: Final[int] + SDL_WINDOW_MAXIMIZED: Final[int] + SDL_WINDOW_METAL: Final[int] + SDL_WINDOW_MINIMIZED: Final[int] + SDL_WINDOW_MODAL: Final[int] + SDL_WINDOW_MOUSE_CAPTURE: Final[int] + SDL_WINDOW_MOUSE_FOCUS: Final[int] + SDL_WINDOW_MOUSE_GRABBED: Final[int] + SDL_WINDOW_MOUSE_RELATIVE_MODE: Final[int] + SDL_WINDOW_NOT_FOCUSABLE: Final[int] + SDL_WINDOW_OCCLUDED: Final[int] + SDL_WINDOW_OPENGL: Final[int] + SDL_WINDOW_POPUP_MENU: Final[int] + SDL_WINDOW_RESIZABLE: Final[int] + SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE: Final[int] + SDL_WINDOW_SURFACE_VSYNC_DISABLED: Final[int] + SDL_WINDOW_TOOLTIP: Final[int] + SDL_WINDOW_TRANSPARENT: Final[int] + SDL_WINDOW_UTILITY: Final[int] + SDL_WINDOW_VULKAN: Final[int] + TCODK_0: Final[int] + TCODK_1: Final[int] + TCODK_2: Final[int] + TCODK_3: Final[int] + TCODK_4: Final[int] + TCODK_5: Final[int] + TCODK_6: Final[int] + TCODK_7: Final[int] + TCODK_8: Final[int] + TCODK_9: Final[int] + TCODK_ALT: Final[int] + TCODK_APPS: Final[int] + TCODK_BACKSPACE: Final[int] + TCODK_CAPSLOCK: Final[int] + TCODK_CHAR: Final[int] + TCODK_CONTROL: Final[int] + TCODK_DELETE: Final[int] + TCODK_DOWN: Final[int] + TCODK_END: Final[int] + TCODK_ENTER: Final[int] + TCODK_ESCAPE: Final[int] + TCODK_F10: Final[int] + TCODK_F11: Final[int] + TCODK_F12: Final[int] + TCODK_F1: Final[int] + TCODK_F2: Final[int] + TCODK_F3: Final[int] + TCODK_F4: Final[int] + TCODK_F5: Final[int] + TCODK_F6: Final[int] + TCODK_F7: Final[int] + TCODK_F8: Final[int] + TCODK_F9: Final[int] + TCODK_HOME: Final[int] + TCODK_INSERT: Final[int] + TCODK_KP0: Final[int] + TCODK_KP1: Final[int] + TCODK_KP2: Final[int] + TCODK_KP3: Final[int] + TCODK_KP4: Final[int] + TCODK_KP5: Final[int] + TCODK_KP6: Final[int] + TCODK_KP7: Final[int] + TCODK_KP8: Final[int] + TCODK_KP9: Final[int] + TCODK_KPADD: Final[int] + TCODK_KPDEC: Final[int] + TCODK_KPDIV: Final[int] + TCODK_KPENTER: Final[int] + TCODK_KPMUL: Final[int] + TCODK_KPSUB: Final[int] + TCODK_LEFT: Final[int] + TCODK_LWIN: Final[int] + TCODK_NONE: Final[int] + TCODK_NUMLOCK: Final[int] + TCODK_PAGEDOWN: Final[int] + TCODK_PAGEUP: Final[int] + TCODK_PAUSE: Final[int] + TCODK_PRINTSCREEN: Final[int] + TCODK_RIGHT: Final[int] + TCODK_RWIN: Final[int] + TCODK_SCROLLLOCK: Final[int] + TCODK_SHIFT: Final[int] + TCODK_SPACE: Final[int] + TCODK_TAB: Final[int] + TCODK_TEXT: Final[int] + TCODK_UP: Final[int] + TCOD_BKGND_ADD: Final[int] + TCOD_BKGND_ADDA: Final[int] + TCOD_BKGND_ALPH: Final[int] + TCOD_BKGND_BURN: Final[int] + TCOD_BKGND_COLOR_BURN: Final[int] + TCOD_BKGND_COLOR_DODGE: Final[int] + TCOD_BKGND_DARKEN: Final[int] + TCOD_BKGND_DEFAULT: Final[int] + TCOD_BKGND_LIGHTEN: Final[int] + TCOD_BKGND_MULTIPLY: Final[int] + TCOD_BKGND_NONE: Final[int] + TCOD_BKGND_OVERLAY: Final[int] + TCOD_BKGND_SCREEN: Final[int] + TCOD_BKGND_SET: Final[int] + TCOD_CENTER: Final[int] + TCOD_CHAR_ARROW2_E: Final[Literal[16]] = 16 + TCOD_CHAR_ARROW2_N: Final[Literal[30]] = 30 + TCOD_CHAR_ARROW2_S: Final[Literal[31]] = 31 + TCOD_CHAR_ARROW2_W: Final[Literal[17]] = 17 + TCOD_CHAR_ARROW_E: Final[Literal[26]] = 26 + TCOD_CHAR_ARROW_N: Final[Literal[24]] = 24 + TCOD_CHAR_ARROW_S: Final[Literal[25]] = 25 + TCOD_CHAR_ARROW_W: Final[Literal[27]] = 27 + TCOD_CHAR_BLOCK1: Final[Literal[176]] = 176 + TCOD_CHAR_BLOCK2: Final[Literal[177]] = 177 + TCOD_CHAR_BLOCK3: Final[Literal[178]] = 178 + TCOD_CHAR_BULLET: Final[Literal[7]] = 7 + TCOD_CHAR_BULLET_INV: Final[Literal[8]] = 8 + TCOD_CHAR_BULLET_SQUARE: Final[Literal[254]] = 254 + TCOD_CHAR_CENT: Final[Literal[189]] = 189 + TCOD_CHAR_CHECKBOX_SET: Final[Literal[225]] = 225 + TCOD_CHAR_CHECKBOX_UNSET: Final[Literal[224]] = 224 + TCOD_CHAR_CLUB: Final[Literal[5]] = 5 + TCOD_CHAR_COPYRIGHT: Final[Literal[184]] = 184 + TCOD_CHAR_CROSS: Final[Literal[197]] = 197 + TCOD_CHAR_CURRENCY: Final[Literal[207]] = 207 + TCOD_CHAR_DARROW_H: Final[Literal[29]] = 29 + TCOD_CHAR_DARROW_V: Final[Literal[18]] = 18 + TCOD_CHAR_DCROSS: Final[Literal[206]] = 206 + TCOD_CHAR_DHLINE: Final[Literal[205]] = 205 + TCOD_CHAR_DIAMOND: Final[Literal[4]] = 4 + TCOD_CHAR_DIVISION: Final[Literal[246]] = 246 + TCOD_CHAR_DNE: Final[Literal[187]] = 187 + TCOD_CHAR_DNW: Final[Literal[201]] = 201 + TCOD_CHAR_DSE: Final[Literal[188]] = 188 + TCOD_CHAR_DSW: Final[Literal[200]] = 200 + TCOD_CHAR_DTEEE: Final[Literal[204]] = 204 + TCOD_CHAR_DTEEN: Final[Literal[202]] = 202 + TCOD_CHAR_DTEES: Final[Literal[203]] = 203 + TCOD_CHAR_DTEEW: Final[Literal[185]] = 185 + TCOD_CHAR_DVLINE: Final[Literal[186]] = 186 + TCOD_CHAR_EXCLAM_DOUBLE: Final[Literal[19]] = 19 + TCOD_CHAR_FEMALE: Final[Literal[12]] = 12 + TCOD_CHAR_FUNCTION: Final[Literal[159]] = 159 + TCOD_CHAR_GRADE: Final[Literal[248]] = 248 + TCOD_CHAR_HALF: Final[Literal[171]] = 171 + TCOD_CHAR_HEART: Final[Literal[3]] = 3 + TCOD_CHAR_HLINE: Final[Literal[196]] = 196 + TCOD_CHAR_LIGHT: Final[Literal[15]] = 15 + TCOD_CHAR_MALE: Final[Literal[11]] = 11 + TCOD_CHAR_MULTIPLICATION: Final[Literal[158]] = 158 + TCOD_CHAR_NE: Final[Literal[191]] = 191 + TCOD_CHAR_NOTE: Final[Literal[13]] = 13 + TCOD_CHAR_NOTE_DOUBLE: Final[Literal[14]] = 14 + TCOD_CHAR_NW: Final[Literal[218]] = 218 + TCOD_CHAR_ONE_QUARTER: Final[Literal[172]] = 172 + TCOD_CHAR_PILCROW: Final[Literal[20]] = 20 + TCOD_CHAR_POUND: Final[Literal[156]] = 156 + TCOD_CHAR_POW1: Final[Literal[251]] = 251 + TCOD_CHAR_POW2: Final[Literal[253]] = 253 + TCOD_CHAR_POW3: Final[Literal[252]] = 252 + TCOD_CHAR_RADIO_SET: Final[Literal[10]] = 10 + TCOD_CHAR_RADIO_UNSET: Final[Literal[9]] = 9 + TCOD_CHAR_RESERVED: Final[Literal[169]] = 169 + TCOD_CHAR_SE: Final[Literal[217]] = 217 + TCOD_CHAR_SECTION: Final[Literal[21]] = 21 + TCOD_CHAR_SMILIE: Final[Literal[1]] = 1 + TCOD_CHAR_SMILIE_INV: Final[Literal[2]] = 2 + TCOD_CHAR_SPADE: Final[Literal[6]] = 6 + TCOD_CHAR_SUBP_DIAG: Final[Literal[230]] = 230 + TCOD_CHAR_SUBP_E: Final[Literal[231]] = 231 + TCOD_CHAR_SUBP_N: Final[Literal[228]] = 228 + TCOD_CHAR_SUBP_NE: Final[Literal[227]] = 227 + TCOD_CHAR_SUBP_NW: Final[Literal[226]] = 226 + TCOD_CHAR_SUBP_SE: Final[Literal[229]] = 229 + TCOD_CHAR_SUBP_SW: Final[Literal[232]] = 232 + TCOD_CHAR_SW: Final[Literal[192]] = 192 + TCOD_CHAR_TEEE: Final[Literal[195]] = 195 + TCOD_CHAR_TEEN: Final[Literal[193]] = 193 + TCOD_CHAR_TEES: Final[Literal[194]] = 194 + TCOD_CHAR_TEEW: Final[Literal[180]] = 180 + TCOD_CHAR_THREE_QUARTERS: Final[Literal[243]] = 243 + TCOD_CHAR_UMLAUT: Final[Literal[249]] = 249 + TCOD_CHAR_VLINE: Final[Literal[179]] = 179 + TCOD_CHAR_YEN: Final[Literal[190]] = 190 + TCOD_COLCTRL_1: Final[Literal[1]] = 1 + TCOD_COLCTRL_2: Final[int] + TCOD_COLCTRL_3: Final[int] + TCOD_COLCTRL_4: Final[int] + TCOD_COLCTRL_5: Final[int] + TCOD_COLCTRL_BACK_RGB: Final[int] + TCOD_COLCTRL_FORE_RGB: Final[int] + TCOD_COLCTRL_NUMBER: Final[Literal[5]] = 5 + TCOD_COLCTRL_STOP: Final[int] + TCOD_DISTRIBUTION_GAUSSIAN: Final[int] + TCOD_DISTRIBUTION_GAUSSIAN_INVERSE: Final[int] + TCOD_DISTRIBUTION_GAUSSIAN_RANGE: Final[int] + TCOD_DISTRIBUTION_GAUSSIAN_RANGE_INVERSE: Final[int] + TCOD_DISTRIBUTION_LINEAR: Final[int] + TCOD_EVENT_ANY: Final[int] + TCOD_EVENT_FINGER: Final[int] + TCOD_EVENT_FINGER_MOVE: Final[Literal[32]] = 32 + TCOD_EVENT_FINGER_PRESS: Final[Literal[64]] = 64 + TCOD_EVENT_FINGER_RELEASE: Final[Literal[128]] = 128 + TCOD_EVENT_KEY: Final[int] + TCOD_EVENT_KEY_PRESS: Final[Literal[1]] = 1 + TCOD_EVENT_KEY_RELEASE: Final[Literal[2]] = 2 + TCOD_EVENT_MOUSE: Final[int] + TCOD_EVENT_MOUSE_MOVE: Final[Literal[4]] = 4 + TCOD_EVENT_MOUSE_PRESS: Final[Literal[8]] = 8 + TCOD_EVENT_MOUSE_RELEASE: Final[Literal[16]] = 16 + TCOD_EVENT_NONE: Final[Literal[0]] = 0 + TCOD_E_ERROR: Final[Literal[-1]] = -1 + TCOD_E_INVALID_ARGUMENT: Final[Literal[-2]] = -2 + TCOD_E_OK: Final[Literal[0]] = 0 + TCOD_E_OUT_OF_MEMORY: Final[Literal[-3]] = -3 + TCOD_E_REQUIRES_ATTENTION: Final[Literal[-4]] = -4 + TCOD_E_WARN: Final[Literal[1]] = 1 + TCOD_FALLBACK_FONT_SIZE: Final[Literal[16]] = 16 + TCOD_FONT_LAYOUT_ASCII_INCOL: Final[Literal[1]] = 1 + TCOD_FONT_LAYOUT_ASCII_INROW: Final[Literal[2]] = 2 + TCOD_FONT_LAYOUT_CP437: Final[Literal[16]] = 16 + TCOD_FONT_LAYOUT_TCOD: Final[Literal[8]] = 8 + TCOD_FONT_TYPE_GRAYSCALE: Final[Literal[4]] = 4 + TCOD_FONT_TYPE_GREYSCALE: Final[Literal[4]] = 4 + TCOD_KEY_PRESSED: Final[Literal[1]] = 1 + TCOD_KEY_RELEASED: Final[Literal[2]] = 2 + TCOD_KEY_TEXT_SIZE: Final[Literal[32]] = 32 + TCOD_LEFT: Final[int] + TCOD_LEX_CHAR: Final[Literal[7]] = 7 + TCOD_LEX_COMMENT: Final[Literal[9]] = 9 + TCOD_LEX_EOF: Final[Literal[8]] = 8 + TCOD_LEX_FLAG_NESTING_COMMENT: Final[Literal[2]] = 2 + TCOD_LEX_FLAG_NOCASE: Final[Literal[1]] = 1 + TCOD_LEX_FLAG_TOKENIZE_COMMENTS: Final[Literal[4]] = 4 + TCOD_LEX_FLOAT: Final[Literal[6]] = 6 + TCOD_LEX_IDEN: Final[Literal[3]] = 3 + TCOD_LEX_INTEGER: Final[Literal[5]] = 5 + TCOD_LEX_KEYWORD: Final[Literal[2]] = 2 + TCOD_LEX_KEYWORD_SIZE: Final[Literal[20]] = 20 + TCOD_LEX_MAX_KEYWORDS: Final[Literal[100]] = 100 + TCOD_LEX_MAX_SYMBOLS: Final[Literal[100]] = 100 + TCOD_LEX_STRING: Final[Literal[4]] = 4 + TCOD_LEX_SYMBOL: Final[Literal[1]] = 1 + TCOD_LEX_SYMBOL_SIZE: Final[Literal[5]] = 5 + TCOD_LEX_UNKNOWN: Final[Literal[0]] = 0 + TCOD_LOG_CRITICAL: Final[Literal[50]] = 50 + TCOD_LOG_DEBUG: Final[Literal[10]] = 10 + TCOD_LOG_ERROR: Final[Literal[40]] = 40 + TCOD_LOG_INFO: Final[Literal[20]] = 20 + TCOD_LOG_WARNING: Final[Literal[30]] = 30 + TCOD_MAJOR_VERSION: Final[Literal[2]] = 2 + TCOD_MINOR_VERSION: Final[Literal[1]] = 1 + TCOD_NB_RENDERERS: Final[int] + TCOD_NOISE_DEFAULT: Final[Literal[0]] = 0 + TCOD_NOISE_MAX_DIMENSIONS: Final[Literal[4]] = 4 + TCOD_NOISE_MAX_OCTAVES: Final[Literal[128]] = 128 + TCOD_NOISE_PERLIN: Final[Literal[1]] = 1 + TCOD_NOISE_SIMPLEX: Final[Literal[2]] = 2 + TCOD_NOISE_WAVELET: Final[Literal[4]] = 4 + TCOD_PATCHLEVEL: Final[Literal[1]] = 1 + TCOD_PATHFINDER_MAX_DIMENSIONS: Final[Literal[4]] = 4 + TCOD_RENDERER_GLSL: Final[int] + TCOD_RENDERER_OPENGL2: Final[int] + TCOD_RENDERER_OPENGL: Final[int] + TCOD_RENDERER_SDL2: Final[int] + TCOD_RENDERER_SDL: Final[int] + TCOD_RENDERER_XTERM: Final[int] + TCOD_RIGHT: Final[int] + TCOD_RNG_CMWC: Final[int] + TCOD_RNG_MT: Final[int] + TCOD_TYPE_BOOL: Final[int] + TCOD_TYPE_CHAR: Final[int] + TCOD_TYPE_COLOR: Final[int] + TCOD_TYPE_CUSTOM00: Final[int] + TCOD_TYPE_CUSTOM01: Final[int] + TCOD_TYPE_CUSTOM02: Final[int] + TCOD_TYPE_CUSTOM03: Final[int] + TCOD_TYPE_CUSTOM04: Final[int] + TCOD_TYPE_CUSTOM05: Final[int] + TCOD_TYPE_CUSTOM06: Final[int] + TCOD_TYPE_CUSTOM07: Final[int] + TCOD_TYPE_CUSTOM08: Final[int] + TCOD_TYPE_CUSTOM09: Final[int] + TCOD_TYPE_CUSTOM10: Final[int] + TCOD_TYPE_CUSTOM11: Final[int] + TCOD_TYPE_CUSTOM12: Final[int] + TCOD_TYPE_CUSTOM13: Final[int] + TCOD_TYPE_CUSTOM14: Final[int] + TCOD_TYPE_CUSTOM15: Final[int] + TCOD_TYPE_DICE: Final[int] + TCOD_TYPE_FLOAT: Final[int] + TCOD_TYPE_INT: Final[int] + TCOD_TYPE_LIST: Final[Literal[1024]] = 1024 + TCOD_TYPE_NONE: Final[int] + TCOD_TYPE_STRING: Final[int] + TCOD_TYPE_VALUELIST00: Final[int] + TCOD_TYPE_VALUELIST01: Final[int] + TCOD_TYPE_VALUELIST02: Final[int] + TCOD_TYPE_VALUELIST03: Final[int] + TCOD_TYPE_VALUELIST04: Final[int] + TCOD_TYPE_VALUELIST05: Final[int] + TCOD_TYPE_VALUELIST06: Final[int] + TCOD_TYPE_VALUELIST07: Final[int] + TCOD_TYPE_VALUELIST08: Final[int] + TCOD_TYPE_VALUELIST09: Final[int] + TCOD_TYPE_VALUELIST10: Final[int] + TCOD_TYPE_VALUELIST11: Final[int] + TCOD_TYPE_VALUELIST12: Final[int] + TCOD_TYPE_VALUELIST13: Final[int] + TCOD_TYPE_VALUELIST14: Final[int] + TCOD_TYPE_VALUELIST15: Final[int] + kNoiseImplementationFBM: Final[int] + kNoiseImplementationSimple: Final[int] + kNoiseImplementationTurbulence: Final[int] + +lib: _lib +ffi: Any diff --git a/tcod/cffi.py b/tcod/cffi.py index d1c93025..b0590d0e 100644 --- a/tcod/cffi.py +++ b/tcod/cffi.py @@ -15,17 +15,12 @@ __sdl_version__ = "" +REQUIRED_SDL_VERSION = (3, 2, 0) + ffi_check = cffi.FFI() ffi_check.cdef( """ -typedef struct SDL_version -{ - uint8_t major; - uint8_t minor; - uint8_t patch; -} SDL_version; - -void SDL_GetVersion(SDL_version * ver); +int SDL_GetVersion(void); """ ) @@ -33,11 +28,13 @@ def verify_dependencies() -> None: """Try to make sure dependencies exist on this system.""" if sys.platform == "win32": - lib_test: Any = ffi_check.dlopen("SDL2.dll") # Make sure SDL2.dll is here. - version: Any = ffi_check.new("struct SDL_version*") - lib_test.SDL_GetVersion(version) # Need to check this version. - version_tuple = version.major, version.minor, version.patch - if version_tuple < (2, 0, 5): + lib_test: Any = ffi_check.dlopen("SDL3.dll") # Make sure SDL3.dll is here. + int_version = lib_test.SDL_GetVersion() # Need to check this version. + major = int_version // 1000000 + minor = (int_version // 1000) % 1000 + patch = int_version % 1000 + version_tuple = major, minor, patch + if version_tuple < REQUIRED_SDL_VERSION: msg = f"Tried to load an old version of SDL {version_tuple!r}" raise RuntimeError(msg) @@ -48,9 +45,8 @@ def get_architecture() -> str: def get_sdl_version() -> str: - sdl_version = ffi.new("SDL_version*") - lib.SDL_GetVersion(sdl_version) - return f"{sdl_version.major}.{sdl_version.minor}.{sdl_version.patch}" + int_version = lib.SDL_GetVersion() + return f"{int_version // 1000000}.{(int_version // 1000) % 1000}.{int_version % 1000}" if sys.platform == "win32": diff --git a/tcod/context.py b/tcod/context.py index f9d562ee..40dcc09c 100644 --- a/tcod/context.py +++ b/tcod/context.py @@ -68,14 +68,9 @@ _Event = TypeVar("_Event", bound=tcod.event.Event) SDL_WINDOW_FULLSCREEN = lib.SDL_WINDOW_FULLSCREEN -"""Exclusive fullscreen mode. - -It's generally not recommended to use this flag unless you know what you're -doing. -`SDL_WINDOW_FULLSCREEN_DESKTOP` should be used instead whenever possible. -""" -SDL_WINDOW_FULLSCREEN_DESKTOP = lib.SDL_WINDOW_FULLSCREEN_DESKTOP -"""A borderless fullscreen window at the desktop resolution.""" +"""Fullscreen mode.""" +# SDL_WINDOW_FULLSCREEN_DESKTOP = lib.SDL_WINDOW_FULLSCREEN_DESKTOP +# """A borderless fullscreen window at the desktop resolution.""" SDL_WINDOW_HIDDEN = lib.SDL_WINDOW_HIDDEN """Window is hidden.""" SDL_WINDOW_BORDERLESS = lib.SDL_WINDOW_BORDERLESS @@ -86,9 +81,9 @@ """Window is minimized.""" SDL_WINDOW_MAXIMIZED = lib.SDL_WINDOW_MAXIMIZED """Window is maximized.""" -SDL_WINDOW_INPUT_GRABBED = lib.SDL_WINDOW_INPUT_GRABBED +SDL_WINDOW_INPUT_GRABBED = lib.SDL_WINDOW_MOUSE_GRABBED """Window has grabbed the input.""" -SDL_WINDOW_ALLOW_HIGHDPI = lib.SDL_WINDOW_ALLOW_HIGHDPI +SDL_WINDOW_ALLOW_HIGHDPI = lib.SDL_WINDOW_HIGH_PIXEL_DENSITY """High DPI mode, see the SDL documentation.""" RENDERER_OPENGL = lib.TCOD_RENDERER_OPENGL diff --git a/tcod/event.py b/tcod/event.py index 25abfb7f..9190b8d4 100644 --- a/tcod/event.py +++ b/tcod/event.py @@ -743,22 +743,20 @@ def __repr__(self) -> str: return f"tcod.event.{self.__class__.__name__}(type={self.type!r})" __WINDOW_TYPES: Final = { - lib.SDL_WINDOWEVENT_SHOWN: "WindowShown", - lib.SDL_WINDOWEVENT_HIDDEN: "WindowHidden", - lib.SDL_WINDOWEVENT_EXPOSED: "WindowExposed", - lib.SDL_WINDOWEVENT_MOVED: "WindowMoved", - lib.SDL_WINDOWEVENT_RESIZED: "WindowResized", - lib.SDL_WINDOWEVENT_SIZE_CHANGED: "WindowSizeChanged", - lib.SDL_WINDOWEVENT_MINIMIZED: "WindowMinimized", - lib.SDL_WINDOWEVENT_MAXIMIZED: "WindowMaximized", - lib.SDL_WINDOWEVENT_RESTORED: "WindowRestored", - lib.SDL_WINDOWEVENT_ENTER: "WindowEnter", - lib.SDL_WINDOWEVENT_LEAVE: "WindowLeave", - lib.SDL_WINDOWEVENT_FOCUS_GAINED: "WindowFocusGained", - lib.SDL_WINDOWEVENT_FOCUS_LOST: "WindowFocusLost", - lib.SDL_WINDOWEVENT_CLOSE: "WindowClose", - lib.SDL_WINDOWEVENT_TAKE_FOCUS: "WindowTakeFocus", - lib.SDL_WINDOWEVENT_HIT_TEST: "WindowHitTest", + lib.SDL_EVENT_WINDOW_SHOWN: "WindowShown", + lib.SDL_EVENT_WINDOW_HIDDEN: "WindowHidden", + lib.SDL_EVENT_WINDOW_EXPOSED: "WindowExposed", + lib.SDL_EVENT_WINDOW_MOVED: "WindowMoved", + lib.SDL_EVENT_WINDOW_RESIZED: "WindowResized", + lib.SDL_EVENT_WINDOW_MINIMIZED: "WindowMinimized", + lib.SDL_EVENT_WINDOW_MAXIMIZED: "WindowMaximized", + lib.SDL_EVENT_WINDOW_RESTORED: "WindowRestored", + lib.SDL_EVENT_WINDOW_MOUSE_ENTER: "WindowEnter", + lib.SDL_EVENT_WINDOW_MOUSE_LEAVE: "WindowLeave", + lib.SDL_EVENT_WINDOW_FOCUS_GAINED: "WindowFocusGained", + lib.SDL_EVENT_WINDOW_FOCUS_LOST: "WindowFocusLost", + lib.SDL_EVENT_WINDOW_CLOSE_REQUESTED: "WindowClose", + lib.SDL_EVENT_WINDOW_HIT_TEST: "WindowHitTest", } @@ -1153,28 +1151,28 @@ def __str__(self) -> str: _SDL_TO_CLASS_TABLE: dict[int, type[Event]] = { - lib.SDL_QUIT: Quit, - lib.SDL_KEYDOWN: KeyDown, - lib.SDL_KEYUP: KeyUp, - lib.SDL_MOUSEMOTION: MouseMotion, - lib.SDL_MOUSEBUTTONDOWN: MouseButtonDown, - lib.SDL_MOUSEBUTTONUP: MouseButtonUp, - lib.SDL_MOUSEWHEEL: MouseWheel, - lib.SDL_TEXTINPUT: TextInput, - lib.SDL_WINDOWEVENT: WindowEvent, - lib.SDL_JOYAXISMOTION: JoystickAxis, - lib.SDL_JOYBALLMOTION: JoystickBall, - lib.SDL_JOYHATMOTION: JoystickHat, - lib.SDL_JOYBUTTONDOWN: JoystickButton, - lib.SDL_JOYBUTTONUP: JoystickButton, - lib.SDL_JOYDEVICEADDED: JoystickDevice, - lib.SDL_JOYDEVICEREMOVED: JoystickDevice, - lib.SDL_CONTROLLERAXISMOTION: ControllerAxis, - lib.SDL_CONTROLLERBUTTONDOWN: ControllerButton, - lib.SDL_CONTROLLERBUTTONUP: ControllerButton, - lib.SDL_CONTROLLERDEVICEADDED: ControllerDevice, - lib.SDL_CONTROLLERDEVICEREMOVED: ControllerDevice, - lib.SDL_CONTROLLERDEVICEREMAPPED: ControllerDevice, + lib.SDL_EVENT_QUIT: Quit, + lib.SDL_EVENT_KEY_DOWN: KeyDown, + lib.SDL_EVENT_KEY_UP: KeyUp, + lib.SDL_EVENT_MOUSE_MOTION: MouseMotion, + lib.SDL_EVENT_MOUSE_BUTTON_DOWN: MouseButtonDown, + lib.SDL_EVENT_MOUSE_BUTTON_UP: MouseButtonUp, + lib.SDL_EVENT_MOUSE_WHEEL: MouseWheel, + lib.SDL_EVENT_TEXT_INPUT: TextInput, + # lib.SDL_EVENT_WINDOW_EVENT: WindowEvent, + lib.SDL_EVENT_JOYSTICK_AXIS_MOTION: JoystickAxis, + lib.SDL_EVENT_JOYSTICK_BALL_MOTION: JoystickBall, + lib.SDL_EVENT_JOYSTICK_HAT_MOTION: JoystickHat, + lib.SDL_EVENT_JOYSTICK_BUTTON_DOWN: JoystickButton, + lib.SDL_EVENT_JOYSTICK_BUTTON_UP: JoystickButton, + lib.SDL_EVENT_JOYSTICK_ADDED: JoystickDevice, + lib.SDL_EVENT_JOYSTICK_REMOVED: JoystickDevice, + lib.SDL_EVENT_GAMEPAD_AXIS_MOTION: ControllerAxis, + lib.SDL_EVENT_GAMEPAD_BUTTON_DOWN: ControllerButton, + lib.SDL_EVENT_GAMEPAD_BUTTON_UP: ControllerButton, + lib.SDL_EVENT_GAMEPAD_ADDED: ControllerDevice, + lib.SDL_EVENT_GAMEPAD_REMOVED: ControllerDevice, + lib.SDL_EVENT_GAMEPAD_REMAPPED: ControllerDevice, } @@ -2129,35 +2127,41 @@ class Scancode(enum.IntEnum): RALT = 230 RGUI = 231 MODE = 257 - AUDIONEXT = 258 - AUDIOPREV = 259 - AUDIOSTOP = 260 - AUDIOPLAY = 261 - AUDIOMUTE = 262 - MEDIASELECT = 263 - WWW = 264 - MAIL = 265 - CALCULATOR = 266 - COMPUTER = 267 - AC_SEARCH = 268 - AC_HOME = 269 - AC_BACK = 270 - AC_FORWARD = 271 - AC_STOP = 272 - AC_REFRESH = 273 - AC_BOOKMARKS = 274 - BRIGHTNESSDOWN = 275 - BRIGHTNESSUP = 276 - DISPLAYSWITCH = 277 - KBDILLUMTOGGLE = 278 - KBDILLUMDOWN = 279 - KBDILLUMUP = 280 - EJECT = 281 - SLEEP = 282 - APP1 = 283 - APP2 = 284 - AUDIOREWIND = 285 - AUDIOFASTFORWARD = 286 + SLEEP = 258 + WAKE = 259 + CHANNEL_INCREMENT = 260 + CHANNEL_DECREMENT = 261 + MEDIA_PLAY = 262 + MEDIA_PAUSE = 263 + MEDIA_RECORD = 264 + MEDIA_FAST_FORWARD = 265 + MEDIA_REWIND = 266 + MEDIA_NEXT_TRACK = 267 + MEDIA_PREVIOUS_TRACK = 268 + MEDIA_STOP = 269 + MEDIA_EJECT = 270 + MEDIA_PLAY_PAUSE = 271 + MEDIA_SELECT = 272 + AC_NEW = 273 + AC_OPEN = 274 + AC_CLOSE = 275 + AC_EXIT = 276 + AC_SAVE = 277 + AC_PRINT = 278 + AC_PROPERTIES = 279 + AC_SEARCH = 280 + AC_HOME = 281 + AC_BACK = 282 + AC_FORWARD = 283 + AC_STOP = 284 + AC_REFRESH = 285 + AC_BOOKMARKS = 286 + SOFTLEFT = 287 + SOFTRIGHT = 288 + CALL = 289 + ENDCALL = 290 + RESERVED = 400 + COUNT = 512 # --- end --- @property @@ -2472,12 +2476,12 @@ class KeySym(enum.IntEnum): ESCAPE = 27 SPACE = 32 EXCLAIM = 33 - QUOTEDBL = 34 + DBLAPOSTROPHE = 34 HASH = 35 DOLLAR = 36 PERCENT = 37 AMPERSAND = 38 - QUOTE = 39 + APOSTROPHE = 39 LEFTPAREN = 40 RIGHTPAREN = 41 ASTERISK = 42 @@ -2508,34 +2512,47 @@ class KeySym(enum.IntEnum): RIGHTBRACKET = 93 CARET = 94 UNDERSCORE = 95 - BACKQUOTE = 96 - a = 97 - b = 98 - c = 99 - d = 100 - e = 101 - f = 102 - g = 103 - h = 104 - i = 105 - j = 106 - k = 107 - l = 108 # noqa: E741 - m = 109 - n = 110 - o = 111 - p = 112 - q = 113 - r = 114 - s = 115 - t = 116 - u = 117 - v = 118 - w = 119 - x = 120 - y = 121 - z = 122 + GRAVE = 96 + A = 97 + B = 98 + C = 99 + D = 100 + E = 101 + F = 102 + G = 103 + H = 104 + I = 105 # noqa: E741 + J = 106 + K = 107 + L = 108 + M = 109 + N = 110 + O = 111 # noqa: E741 + P = 112 + Q = 113 + R = 114 + S = 115 + T = 116 + U = 117 + V = 118 + W = 119 + X = 120 + Y = 121 + Z = 122 + LEFTBRACE = 123 + PIPE = 124 + RIGHTBRACE = 125 + TILDE = 126 DELETE = 127 + PLUSMINUS = 177 + EXTENDED_MASK = 536870912 + LEFT_TAB = 536870913 + LEVEL5_SHIFT = 536870914 + MULTI_KEY_COMPOSE = 536870915 + LMETA = 536870916 + RMETA = 536870917 + LHYPER = 536870918 + RHYPER = 536870919 SCANCODE_MASK = 1073741824 CAPSLOCK = 1073741881 F1 = 1073741882 @@ -2677,35 +2694,39 @@ class KeySym(enum.IntEnum): RALT = 1073742054 RGUI = 1073742055 MODE = 1073742081 - AUDIONEXT = 1073742082 - AUDIOPREV = 1073742083 - AUDIOSTOP = 1073742084 - AUDIOPLAY = 1073742085 - AUDIOMUTE = 1073742086 - MEDIASELECT = 1073742087 - WWW = 1073742088 - MAIL = 1073742089 - CALCULATOR = 1073742090 - COMPUTER = 1073742091 - AC_SEARCH = 1073742092 - AC_HOME = 1073742093 - AC_BACK = 1073742094 - AC_FORWARD = 1073742095 - AC_STOP = 1073742096 - AC_REFRESH = 1073742097 - AC_BOOKMARKS = 1073742098 - BRIGHTNESSDOWN = 1073742099 - BRIGHTNESSUP = 1073742100 - DISPLAYSWITCH = 1073742101 - KBDILLUMTOGGLE = 1073742102 - KBDILLUMDOWN = 1073742103 - KBDILLUMUP = 1073742104 - EJECT = 1073742105 - SLEEP = 1073742106 - APP1 = 1073742107 - APP2 = 1073742108 - AUDIOREWIND = 1073742109 - AUDIOFASTFORWARD = 1073742110 + SLEEP = 1073742082 + WAKE = 1073742083 + CHANNEL_INCREMENT = 1073742084 + CHANNEL_DECREMENT = 1073742085 + MEDIA_PLAY = 1073742086 + MEDIA_PAUSE = 1073742087 + MEDIA_RECORD = 1073742088 + MEDIA_FAST_FORWARD = 1073742089 + MEDIA_REWIND = 1073742090 + MEDIA_NEXT_TRACK = 1073742091 + MEDIA_PREVIOUS_TRACK = 1073742092 + MEDIA_STOP = 1073742093 + MEDIA_EJECT = 1073742094 + MEDIA_PLAY_PAUSE = 1073742095 + MEDIA_SELECT = 1073742096 + AC_NEW = 1073742097 + AC_OPEN = 1073742098 + AC_CLOSE = 1073742099 + AC_EXIT = 1073742100 + AC_SAVE = 1073742101 + AC_PRINT = 1073742102 + AC_PROPERTIES = 1073742103 + AC_SEARCH = 1073742104 + AC_HOME = 1073742105 + AC_BACK = 1073742106 + AC_FORWARD = 1073742107 + AC_STOP = 1073742108 + AC_REFRESH = 1073742109 + AC_BOOKMARKS = 1073742110 + SOFTLEFT = 1073742111 + SOFTRIGHT = 1073742112 + CALL = 1073742113 + ENDCALL = 1073742114 # --- end --- @property diff --git a/tcod/event_constants.py b/tcod/event_constants.py index 6f012293..efeecc56 100644 --- a/tcod/event_constants.py +++ b/tcod/event_constants.py @@ -218,35 +218,41 @@ SCANCODE_RALT = 230 SCANCODE_RGUI = 231 SCANCODE_MODE = 257 -SCANCODE_AUDIONEXT = 258 -SCANCODE_AUDIOPREV = 259 -SCANCODE_AUDIOSTOP = 260 -SCANCODE_AUDIOPLAY = 261 -SCANCODE_AUDIOMUTE = 262 -SCANCODE_MEDIASELECT = 263 -SCANCODE_WWW = 264 -SCANCODE_MAIL = 265 -SCANCODE_CALCULATOR = 266 -SCANCODE_COMPUTER = 267 -SCANCODE_AC_SEARCH = 268 -SCANCODE_AC_HOME = 269 -SCANCODE_AC_BACK = 270 -SCANCODE_AC_FORWARD = 271 -SCANCODE_AC_STOP = 272 -SCANCODE_AC_REFRESH = 273 -SCANCODE_AC_BOOKMARKS = 274 -SCANCODE_BRIGHTNESSDOWN = 275 -SCANCODE_BRIGHTNESSUP = 276 -SCANCODE_DISPLAYSWITCH = 277 -SCANCODE_KBDILLUMTOGGLE = 278 -SCANCODE_KBDILLUMDOWN = 279 -SCANCODE_KBDILLUMUP = 280 -SCANCODE_EJECT = 281 -SCANCODE_SLEEP = 282 -SCANCODE_APP1 = 283 -SCANCODE_APP2 = 284 -SCANCODE_AUDIOREWIND = 285 -SCANCODE_AUDIOFASTFORWARD = 286 +SCANCODE_SLEEP = 258 +SCANCODE_WAKE = 259 +SCANCODE_CHANNEL_INCREMENT = 260 +SCANCODE_CHANNEL_DECREMENT = 261 +SCANCODE_MEDIA_PLAY = 262 +SCANCODE_MEDIA_PAUSE = 263 +SCANCODE_MEDIA_RECORD = 264 +SCANCODE_MEDIA_FAST_FORWARD = 265 +SCANCODE_MEDIA_REWIND = 266 +SCANCODE_MEDIA_NEXT_TRACK = 267 +SCANCODE_MEDIA_PREVIOUS_TRACK = 268 +SCANCODE_MEDIA_STOP = 269 +SCANCODE_MEDIA_EJECT = 270 +SCANCODE_MEDIA_PLAY_PAUSE = 271 +SCANCODE_MEDIA_SELECT = 272 +SCANCODE_AC_NEW = 273 +SCANCODE_AC_OPEN = 274 +SCANCODE_AC_CLOSE = 275 +SCANCODE_AC_EXIT = 276 +SCANCODE_AC_SAVE = 277 +SCANCODE_AC_PRINT = 278 +SCANCODE_AC_PROPERTIES = 279 +SCANCODE_AC_SEARCH = 280 +SCANCODE_AC_HOME = 281 +SCANCODE_AC_BACK = 282 +SCANCODE_AC_FORWARD = 283 +SCANCODE_AC_STOP = 284 +SCANCODE_AC_REFRESH = 285 +SCANCODE_AC_BOOKMARKS = 286 +SCANCODE_SOFTLEFT = 287 +SCANCODE_SOFTRIGHT = 288 +SCANCODE_CALL = 289 +SCANCODE_ENDCALL = 290 +SCANCODE_RESERVED = 400 +SCANCODE_COUNT = 512 # --- SDL keyboard symbols --- K_UNKNOWN = 0 @@ -256,12 +262,12 @@ K_ESCAPE = 27 K_SPACE = 32 K_EXCLAIM = 33 -K_QUOTEDBL = 34 +K_DBLAPOSTROPHE = 34 K_HASH = 35 K_DOLLAR = 36 K_PERCENT = 37 K_AMPERSAND = 38 -K_QUOTE = 39 +K_APOSTROPHE = 39 K_LEFTPAREN = 40 K_RIGHTPAREN = 41 K_ASTERISK = 42 @@ -292,34 +298,47 @@ K_RIGHTBRACKET = 93 K_CARET = 94 K_UNDERSCORE = 95 -K_BACKQUOTE = 96 -K_a = 97 -K_b = 98 -K_c = 99 -K_d = 100 -K_e = 101 -K_f = 102 -K_g = 103 -K_h = 104 -K_i = 105 -K_j = 106 -K_k = 107 -K_l = 108 -K_m = 109 -K_n = 110 -K_o = 111 -K_p = 112 -K_q = 113 -K_r = 114 -K_s = 115 -K_t = 116 -K_u = 117 -K_v = 118 -K_w = 119 -K_x = 120 -K_y = 121 -K_z = 122 +K_GRAVE = 96 +K_A = 97 +K_B = 98 +K_C = 99 +K_D = 100 +K_E = 101 +K_F = 102 +K_G = 103 +K_H = 104 +K_I = 105 +K_J = 106 +K_K = 107 +K_L = 108 +K_M = 109 +K_N = 110 +K_O = 111 +K_P = 112 +K_Q = 113 +K_R = 114 +K_S = 115 +K_T = 116 +K_U = 117 +K_V = 118 +K_W = 119 +K_X = 120 +K_Y = 121 +K_Z = 122 +K_LEFTBRACE = 123 +K_PIPE = 124 +K_RIGHTBRACE = 125 +K_TILDE = 126 K_DELETE = 127 +K_PLUSMINUS = 177 +K_EXTENDED_MASK = 536870912 +K_LEFT_TAB = 536870913 +K_LEVEL5_SHIFT = 536870914 +K_MULTI_KEY_COMPOSE = 536870915 +K_LMETA = 536870916 +K_RMETA = 536870917 +K_LHYPER = 536870918 +K_RHYPER = 536870919 K_SCANCODE_MASK = 1073741824 K_CAPSLOCK = 1073741881 K_F1 = 1073741882 @@ -461,41 +480,46 @@ K_RALT = 1073742054 K_RGUI = 1073742055 K_MODE = 1073742081 -K_AUDIONEXT = 1073742082 -K_AUDIOPREV = 1073742083 -K_AUDIOSTOP = 1073742084 -K_AUDIOPLAY = 1073742085 -K_AUDIOMUTE = 1073742086 -K_MEDIASELECT = 1073742087 -K_WWW = 1073742088 -K_MAIL = 1073742089 -K_CALCULATOR = 1073742090 -K_COMPUTER = 1073742091 -K_AC_SEARCH = 1073742092 -K_AC_HOME = 1073742093 -K_AC_BACK = 1073742094 -K_AC_FORWARD = 1073742095 -K_AC_STOP = 1073742096 -K_AC_REFRESH = 1073742097 -K_AC_BOOKMARKS = 1073742098 -K_BRIGHTNESSDOWN = 1073742099 -K_BRIGHTNESSUP = 1073742100 -K_DISPLAYSWITCH = 1073742101 -K_KBDILLUMTOGGLE = 1073742102 -K_KBDILLUMDOWN = 1073742103 -K_KBDILLUMUP = 1073742104 -K_EJECT = 1073742105 -K_SLEEP = 1073742106 -K_APP1 = 1073742107 -K_APP2 = 1073742108 -K_AUDIOREWIND = 1073742109 -K_AUDIOFASTFORWARD = 1073742110 +K_SLEEP = 1073742082 +K_WAKE = 1073742083 +K_CHANNEL_INCREMENT = 1073742084 +K_CHANNEL_DECREMENT = 1073742085 +K_MEDIA_PLAY = 1073742086 +K_MEDIA_PAUSE = 1073742087 +K_MEDIA_RECORD = 1073742088 +K_MEDIA_FAST_FORWARD = 1073742089 +K_MEDIA_REWIND = 1073742090 +K_MEDIA_NEXT_TRACK = 1073742091 +K_MEDIA_PREVIOUS_TRACK = 1073742092 +K_MEDIA_STOP = 1073742093 +K_MEDIA_EJECT = 1073742094 +K_MEDIA_PLAY_PAUSE = 1073742095 +K_MEDIA_SELECT = 1073742096 +K_AC_NEW = 1073742097 +K_AC_OPEN = 1073742098 +K_AC_CLOSE = 1073742099 +K_AC_EXIT = 1073742100 +K_AC_SAVE = 1073742101 +K_AC_PRINT = 1073742102 +K_AC_PROPERTIES = 1073742103 +K_AC_SEARCH = 1073742104 +K_AC_HOME = 1073742105 +K_AC_BACK = 1073742106 +K_AC_FORWARD = 1073742107 +K_AC_STOP = 1073742108 +K_AC_REFRESH = 1073742109 +K_AC_BOOKMARKS = 1073742110 +K_SOFTLEFT = 1073742111 +K_SOFTRIGHT = 1073742112 +K_CALL = 1073742113 +K_ENDCALL = 1073742114 # --- SDL keyboard modifiers --- KMOD_NONE = 0 KMOD_LSHIFT = 1 KMOD_RSHIFT = 2 KMOD_SHIFT = 3 +KMOD_LEVEL5 = 4 KMOD_LCTRL = 64 KMOD_RCTRL = 128 KMOD_CTRL = 192 @@ -514,6 +538,7 @@ 1: "KMOD_LSHIFT", 2: "KMOD_RSHIFT", 3: "KMOD_SHIFT", + 4: "KMOD_LEVEL5", 64: "KMOD_LCTRL", 128: "KMOD_RCTRL", 192: "KMOD_CTRL", @@ -532,15 +557,12 @@ # --- SDL wheel --- MOUSEWHEEL_NORMAL = 0 MOUSEWHEEL_FLIPPED = 1 -MOUSEWHEEL = 1027 _REVERSE_WHEEL_TABLE = { 0: "MOUSEWHEEL_NORMAL", 1: "MOUSEWHEEL_FLIPPED", - 1027: "MOUSEWHEEL", } __all__ = [ # noqa: RUF022 "MOUSEWHEEL_NORMAL", "MOUSEWHEEL_FLIPPED", - "MOUSEWHEEL", ] diff --git a/tcod/path.c b/tcod/path.c index 873e2dae..61a09260 100644 --- a/tcod/path.c +++ b/tcod/path.c @@ -315,8 +315,8 @@ int compute_heuristic(const struct PathfinderHeuristic* __restrict heuristic, in default: return 0; } - int diagonal = heuristic->diagonal != 0 ? MIN(x, y) : 0; - int straight = MAX(x, y) - diagonal; + int diagonal = heuristic->diagonal != 0 ? TCOD_MIN(x, y) : 0; + int straight = TCOD_MAX(x, y) - diagonal; return (straight * heuristic->cardinal + diagonal * heuristic->diagonal + w * heuristic->w + z * heuristic->z); } void path_compute_add_edge( diff --git a/tcod/sdl/_internal.py b/tcod/sdl/_internal.py index 23b41632..122d1d7a 100644 --- a/tcod/sdl/_internal.py +++ b/tcod/sdl/_internal.py @@ -92,7 +92,7 @@ def _check_p(result: Any) -> Any: # noqa: ANN401 def _compiled_version() -> tuple[int, int, int]: - return int(lib.SDL_MAJOR_VERSION), int(lib.SDL_MINOR_VERSION), int(lib.SDL_PATCHLEVEL) + return int(lib.SDL_MAJOR_VERSION), int(lib.SDL_MINOR_VERSION), int(lib.SDL_MICRO_VERSION) def _linked_version() -> tuple[int, int, int]: @@ -122,6 +122,6 @@ def replacement(*_args: object, **_kwargs: object) -> NoReturn: return lambda _: replacement # type: ignore[return-value] -lib.SDL_LogSetOutputFunction(lib._sdl_log_output_function, ffi.NULL) +lib.SDL_SetLogOutputFunction(lib._sdl_log_output_function, ffi.NULL) if __debug__: - lib.SDL_LogSetAllPriority(lib.SDL_LOG_PRIORITY_VERBOSE) + lib.SDL_SetLogPriorities(lib.SDL_LOG_PRIORITY_VERBOSE) diff --git a/tcod/sdl/joystick.py b/tcod/sdl/joystick.py index 9015605c..6f324a57 100644 --- a/tcod/sdl/joystick.py +++ b/tcod/sdl/joystick.py @@ -29,54 +29,54 @@ class ControllerAxis(enum.IntEnum): """The standard axes for a game controller.""" - INVALID = int(lib.SDL_CONTROLLER_AXIS_INVALID) - LEFTX = int(lib.SDL_CONTROLLER_AXIS_LEFTX) + INVALID = int(lib.SDL_GAMEPAD_AXIS_INVALID) + LEFTX = int(lib.SDL_GAMEPAD_AXIS_LEFTX) """""" - LEFTY = int(lib.SDL_CONTROLLER_AXIS_LEFTY) + LEFTY = int(lib.SDL_GAMEPAD_AXIS_LEFTY) """""" - RIGHTX = int(lib.SDL_CONTROLLER_AXIS_RIGHTX) + RIGHTX = int(lib.SDL_GAMEPAD_AXIS_RIGHTX) """""" - RIGHTY = int(lib.SDL_CONTROLLER_AXIS_RIGHTY) + RIGHTY = int(lib.SDL_GAMEPAD_AXIS_RIGHTY) """""" - TRIGGERLEFT = int(lib.SDL_CONTROLLER_AXIS_TRIGGERLEFT) + TRIGGERLEFT = int(lib.SDL_GAMEPAD_AXIS_LEFT_TRIGGER) """""" - TRIGGERRIGHT = int(lib.SDL_CONTROLLER_AXIS_TRIGGERRIGHT) + TRIGGERRIGHT = int(lib.SDL_GAMEPAD_AXIS_RIGHT_TRIGGER) """""" class ControllerButton(enum.IntEnum): """The standard buttons for a game controller.""" - INVALID = int(lib.SDL_CONTROLLER_BUTTON_INVALID) - A = int(lib.SDL_CONTROLLER_BUTTON_A) + INVALID = int(lib.SDL_GAMEPAD_BUTTON_INVALID) + A = int(lib.SDL_GAMEPAD_BUTTON_SOUTH) """""" - B = int(lib.SDL_CONTROLLER_BUTTON_B) + B = int(lib.SDL_GAMEPAD_BUTTON_EAST) """""" - X = int(lib.SDL_CONTROLLER_BUTTON_X) + X = int(lib.SDL_GAMEPAD_BUTTON_WEST) """""" - Y = int(lib.SDL_CONTROLLER_BUTTON_Y) + Y = int(lib.SDL_GAMEPAD_BUTTON_NORTH) """""" - BACK = int(lib.SDL_CONTROLLER_BUTTON_BACK) + BACK = int(lib.SDL_GAMEPAD_BUTTON_BACK) """""" - GUIDE = int(lib.SDL_CONTROLLER_BUTTON_GUIDE) + GUIDE = int(lib.SDL_GAMEPAD_BUTTON_GUIDE) """""" - START = int(lib.SDL_CONTROLLER_BUTTON_START) + START = int(lib.SDL_GAMEPAD_BUTTON_START) """""" - LEFTSTICK = int(lib.SDL_CONTROLLER_BUTTON_LEFTSTICK) + LEFTSTICK = int(lib.SDL_GAMEPAD_BUTTON_LEFT_STICK) """""" - RIGHTSTICK = int(lib.SDL_CONTROLLER_BUTTON_RIGHTSTICK) + RIGHTSTICK = int(lib.SDL_GAMEPAD_BUTTON_RIGHT_STICK) """""" - LEFTSHOULDER = int(lib.SDL_CONTROLLER_BUTTON_LEFTSHOULDER) + LEFTSHOULDER = int(lib.SDL_GAMEPAD_BUTTON_LEFT_SHOULDER) """""" - RIGHTSHOULDER = int(lib.SDL_CONTROLLER_BUTTON_RIGHTSHOULDER) + RIGHTSHOULDER = int(lib.SDL_GAMEPAD_BUTTON_RIGHT_SHOULDER) """""" - DPAD_UP = int(lib.SDL_CONTROLLER_BUTTON_DPAD_UP) + DPAD_UP = int(lib.SDL_GAMEPAD_BUTTON_DPAD_UP) """""" - DPAD_DOWN = int(lib.SDL_CONTROLLER_BUTTON_DPAD_DOWN) + DPAD_DOWN = int(lib.SDL_GAMEPAD_BUTTON_DPAD_DOWN) """""" - DPAD_LEFT = int(lib.SDL_CONTROLLER_BUTTON_DPAD_LEFT) + DPAD_LEFT = int(lib.SDL_GAMEPAD_BUTTON_DPAD_LEFT) """""" - DPAD_RIGHT = int(lib.SDL_CONTROLLER_BUTTON_DPAD_RIGHT) + DPAD_RIGHT = int(lib.SDL_GAMEPAD_BUTTON_DPAD_RIGHT) """""" MISC1 = 15 """""" @@ -92,29 +92,6 @@ class ControllerButton(enum.IntEnum): """""" -class Power(enum.IntEnum): - """The possible power states of a controller. - - .. seealso:: - :any:`Joystick.get_current_power` - """ - - UNKNOWN = int(lib.SDL_JOYSTICK_POWER_UNKNOWN) - """Power state is unknown.""" - EMPTY = int(lib.SDL_JOYSTICK_POWER_EMPTY) - """<= 5% power.""" - LOW = int(lib.SDL_JOYSTICK_POWER_LOW) - """<= 20% power.""" - MEDIUM = int(lib.SDL_JOYSTICK_POWER_MEDIUM) - """<= 70% power.""" - FULL = int(lib.SDL_JOYSTICK_POWER_FULL) - """<= 100% power.""" - WIRED = int(lib.SDL_JOYSTICK_POWER_WIRED) - """""" - MAX = int(lib.SDL_JOYSTICK_POWER_MAX) - """""" - - class Joystick: """A low-level SDL joystick. @@ -128,19 +105,19 @@ class Joystick: def __init__(self, sdl_joystick_p: Any) -> None: # noqa: ANN401 self.sdl_joystick_p: Final = sdl_joystick_p """The CFFI pointer to an SDL_Joystick struct.""" - self.axes: Final[int] = _check(lib.SDL_JoystickNumAxes(self.sdl_joystick_p)) + self.axes: Final[int] = _check(lib.SDL_GetNumJoystickAxes(self.sdl_joystick_p)) """The total number of axes.""" - self.balls: Final[int] = _check(lib.SDL_JoystickNumBalls(self.sdl_joystick_p)) + self.balls: Final[int] = _check(lib.SDL_GetNumJoystickBalls(self.sdl_joystick_p)) """The total number of trackballs.""" - self.buttons: Final[int] = _check(lib.SDL_JoystickNumButtons(self.sdl_joystick_p)) + self.buttons: Final[int] = _check(lib.SDL_GetNumJoystickButtons(self.sdl_joystick_p)) """The total number of buttons.""" - self.hats: Final[int] = _check(lib.SDL_JoystickNumHats(self.sdl_joystick_p)) + self.hats: Final[int] = _check(lib.SDL_GetNumJoystickHats(self.sdl_joystick_p)) """The total number of hats.""" - self.name: Final[str] = str(ffi.string(lib.SDL_JoystickName(self.sdl_joystick_p)), encoding="utf-8") + self.name: Final[str] = str(ffi.string(lib.SDL_GetJoystickName(self.sdl_joystick_p)), encoding="utf-8") """The name of this joystick.""" self.guid: Final[str] = self._get_guid() """The GUID of this joystick.""" - self.id: Final[int] = _check(lib.SDL_JoystickInstanceID(self.sdl_joystick_p)) + self.id: Final[int] = _check(lib.SDL_GetJoystickID(self.sdl_joystick_p)) """The instance ID of this joystick. This is not the same as the device ID.""" self._keep_alive: Any = None """The owner of this objects memory if this object does not own itself.""" @@ -150,7 +127,7 @@ def __init__(self, sdl_joystick_p: Any) -> None: # noqa: ANN401 @classmethod def _open(cls, device_index: int) -> Joystick: tcod.sdl.sys.init(tcod.sdl.sys.Subsystem.JOYSTICK) - p = _check_p(ffi.gc(lib.SDL_JoystickOpen(device_index), lib.SDL_JoystickClose)) + p = _check_p(ffi.gc(lib.SDL_OpenJoystick(device_index), lib.SDL_CloseJoystick)) return cls(p) @classmethod @@ -167,30 +144,26 @@ def __hash__(self) -> int: def _get_guid(self) -> str: guid_str = ffi.new("char[33]") - lib.SDL_JoystickGetGUIDString(lib.SDL_JoystickGetGUID(self.sdl_joystick_p), guid_str, len(guid_str)) + lib.SDL_GUIDToString(lib.SDL_GetJoystickGUID(self.sdl_joystick_p), guid_str, len(guid_str)) return str(ffi.string(guid_str), encoding="ascii") - def get_current_power(self) -> Power: - """Return the power level/state of this joystick. See :any:`Power`.""" - return Power(lib.SDL_JoystickCurrentPowerLevel(self.sdl_joystick_p)) - def get_axis(self, axis: int) -> int: """Return the raw value of `axis` in the range -32768 to 32767.""" - return int(lib.SDL_JoystickGetAxis(self.sdl_joystick_p, axis)) + return int(lib.SDL_GetJoystickAxis(self.sdl_joystick_p, axis)) def get_ball(self, ball: int) -> tuple[int, int]: """Return the values (delta_x, delta_y) of `ball` since the last poll.""" xy = ffi.new("int[2]") - _check(lib.SDL_JoystickGetBall(ball, xy, xy + 1)) + _check(lib.SDL_GetJoystickBall(self.sdl_joystick_p, ball, xy, xy + 1)) return int(xy[0]), int(xy[1]) def get_button(self, button: int) -> bool: """Return True if `button` is currently held.""" - return bool(lib.SDL_JoystickGetButton(self.sdl_joystick_p, button)) + return bool(lib.SDL_GetJoystickButton(self.sdl_joystick_p, button)) def get_hat(self, hat: int) -> tuple[Literal[-1, 0, 1], Literal[-1, 0, 1]]: """Return the direction of `hat` as (x, y). With (-1, -1) being in the upper-left.""" - return _HAT_DIRECTIONS[lib.SDL_JoystickGetHat(self.sdl_joystick_p, hat)] + return _HAT_DIRECTIONS[lib.SDL_GetJoystickHat(self.sdl_joystick_p, hat)] class GameController: @@ -201,14 +174,14 @@ class GameController: def __init__(self, sdl_controller_p: Any) -> None: # noqa: ANN401 self.sdl_controller_p: Final = sdl_controller_p - self.joystick: Final = Joystick(lib.SDL_GameControllerGetJoystick(self.sdl_controller_p)) + self.joystick: Final = Joystick(lib.SDL_GetGamepadJoystick(self.sdl_controller_p)) """The :any:`Joystick` associated with this controller.""" self.joystick._keep_alive = self.sdl_controller_p # This objects real owner needs to be kept alive. self._by_instance_id[self.joystick.id] = self @classmethod def _open(cls, joystick_index: int) -> GameController: - return cls(_check_p(ffi.gc(lib.SDL_GameControllerOpen(joystick_index), lib.SDL_GameControllerClose))) + return cls(_check_p(ffi.gc(lib.SDL_OpenGamepad(joystick_index), lib.SDL_CloseGamepad))) @classmethod def _from_instance_id(cls, instance_id: int) -> GameController: @@ -216,7 +189,7 @@ def _from_instance_id(cls, instance_id: int) -> GameController: def get_button(self, button: ControllerButton) -> bool: """Return True if `button` is currently held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, button)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, button)) def get_axis(self, axis: ControllerAxis) -> int: """Return the state of the given `axis`. @@ -224,7 +197,7 @@ def get_axis(self, axis: ControllerAxis) -> int: The state is usually a value from -32768 to 32767, with positive values towards the lower-right direction. Triggers have the range of 0 to 32767 instead. """ - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, axis)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, axis)) def __eq__(self, other: object) -> bool: if isinstance(other, GameController): @@ -238,126 +211,126 @@ def __hash__(self) -> int: @property def _left_x(self) -> int: """Return the position of this axis (-32768 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_LEFTX)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_LEFTX)) @property def _left_y(self) -> int: """Return the position of this axis (-32768 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_LEFTY)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_LEFTY)) @property def _right_x(self) -> int: """Return the position of this axis (-32768 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_RIGHTX)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_RIGHTX)) @property def _right_y(self) -> int: """Return the position of this axis (-32768 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_RIGHTY)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_RIGHTY)) @property def _trigger_left(self) -> int: """Return the position of this trigger (0 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_TRIGGERLEFT)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_LEFT_TRIGGER)) @property def _trigger_right(self) -> int: """Return the position of this trigger (0 to 32767).""" - return int(lib.SDL_GameControllerGetAxis(self.sdl_controller_p, lib.SDL_CONTROLLER_AXIS_TRIGGERRIGHT)) + return int(lib.SDL_GetGamepadAxis(self.sdl_controller_p, lib.SDL_GAMEPAD_AXIS_RIGHT_TRIGGER)) @property def _a(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_A)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_SOUTH)) @property def _b(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_B)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_EAST)) @property def _x(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_X)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_WEST)) @property def _y(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_Y)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_NORTH)) @property def _back(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_BACK)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_BACK)) @property def _guide(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_GUIDE)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_GUIDE)) @property def _start(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_START)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_START)) @property def _left_stick(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_LEFTSTICK)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_LEFT_STICK)) @property def _right_stick(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_RIGHTSTICK)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_RIGHT_STICK)) @property def _left_shoulder(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_LEFTSHOULDER)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_LEFT_SHOULDER)) @property def _right_shoulder(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_RIGHTSHOULDER)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_RIGHT_SHOULDER)) @property def _dpad(self) -> tuple[Literal[-1, 0, 1], Literal[-1, 0, 1]]: return ( - lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_DPAD_RIGHT) - - lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_DPAD_LEFT), - lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_DPAD_DOWN) - - lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_DPAD_UP), - ) + lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_DPAD_RIGHT) + - lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_DPAD_LEFT), + lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_DPAD_DOWN) + - lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_DPAD_UP), + ) # type: ignore[return-value] # Boolean math has predictable values @property def _misc1(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_MISC1)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_MISC1)) @property def _paddle1(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_PADDLE1)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_RIGHT_PADDLE1)) @property def _paddle2(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_PADDLE2)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_LEFT_PADDLE1)) @property def _paddle3(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_PADDLE3)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_RIGHT_PADDLE2)) @property def _paddle4(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_PADDLE4)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_LEFT_PADDLE2)) @property def _touchpad(self) -> bool: """Return True if this button is held.""" - return bool(lib.SDL_GameControllerGetButton(self.sdl_controller_p, lib.SDL_CONTROLLER_BUTTON_TOUCHPAD)) + return bool(lib.SDL_GetGamepadButton(self.sdl_controller_p, lib.SDL_GAMEPAD_BUTTON_TOUCHPAD)) def init() -> None: @@ -371,7 +344,9 @@ def init() -> None: def _get_number() -> int: """Return the number of attached joysticks.""" init() - return _check(lib.SDL_NumJoysticks()) + count = ffi.new("int*") + lib.SDL_GetJoysticks(count) + return int(count[0]) def get_joysticks() -> list[Joystick]: @@ -384,7 +359,7 @@ def get_controllers() -> list[GameController]: This ignores joysticks without a game controller mapping. """ - return [GameController._open(i) for i in range(_get_number()) if lib.SDL_IsGameController(i)] + return [GameController._open(i) for i in range(_get_number()) if lib.SDL_IsGamepad(i)] def _get_all() -> list[Joystick | GameController]: @@ -393,7 +368,7 @@ def _get_all() -> list[Joystick | GameController]: If the joystick has a controller mapping then it is returned as a :any:`GameController`. Otherwise it is returned as a :any:`Joystick`. """ - return [GameController._open(i) if lib.SDL_IsGameController(i) else Joystick._open(i) for i in range(_get_number())] + return [GameController._open(i) if lib.SDL_IsGamepad(i) else Joystick._open(i) for i in range(_get_number())] def joystick_event_state(new_state: bool | None = None) -> bool: diff --git a/tcod/sdl/sys.py b/tcod/sdl/sys.py index 7e7b2d88..869d6448 100644 --- a/tcod/sdl/sys.py +++ b/tcod/sdl/sys.py @@ -18,14 +18,16 @@ class Subsystem(enum.IntFlag): GAMECONTROLLER = 0x00002000 EVENTS = 0x00004000 SENSOR = 0x00008000 - EVERYTHING = int(lib.SDL_INIT_EVERYTHING) -def init(flags: int = Subsystem.EVERYTHING) -> None: +def init(flags: int) -> None: _check(lib.SDL_InitSubSystem(flags)) -def quit(flags: int = Subsystem.EVERYTHING) -> None: +def quit(flags: int | None = None) -> None: + if flags is None: + lib.SDL_Quit() + return lib.SDL_QuitSubSystem(flags) diff --git a/tcod/sdl/video.py b/tcod/sdl/video.py index b140aa17..2f66253f 100644 --- a/tcod/sdl/video.py +++ b/tcod/sdl/video.py @@ -40,12 +40,8 @@ class WindowFlags(enum.IntFlag): FULLSCREEN = int(lib.SDL_WINDOW_FULLSCREEN) """""" - FULLSCREEN_DESKTOP = int(lib.SDL_WINDOW_FULLSCREEN_DESKTOP) - """""" OPENGL = int(lib.SDL_WINDOW_OPENGL) """""" - SHOWN = int(lib.SDL_WINDOW_SHOWN) - """""" HIDDEN = int(lib.SDL_WINDOW_HIDDEN) """""" BORDERLESS = int(lib.SDL_WINDOW_BORDERLESS) @@ -56,22 +52,18 @@ class WindowFlags(enum.IntFlag): """""" MAXIMIZED = int(lib.SDL_WINDOW_MAXIMIZED) """""" - MOUSE_GRABBED = int(lib.SDL_WINDOW_INPUT_GRABBED) + MOUSE_GRABBED = int(lib.SDL_WINDOW_MOUSE_GRABBED) """""" INPUT_FOCUS = int(lib.SDL_WINDOW_INPUT_FOCUS) """""" MOUSE_FOCUS = int(lib.SDL_WINDOW_MOUSE_FOCUS) """""" - FOREIGN = int(lib.SDL_WINDOW_FOREIGN) - """""" - ALLOW_HIGHDPI = int(lib.SDL_WINDOW_ALLOW_HIGHDPI) + ALLOW_HIGHDPI = int(lib.SDL_WINDOW_HIGH_PIXEL_DENSITY) """""" MOUSE_CAPTURE = int(lib.SDL_WINDOW_MOUSE_CAPTURE) """""" ALWAYS_ON_TOP = int(lib.SDL_WINDOW_ALWAYS_ON_TOP) """""" - SKIP_TASKBAR = int(lib.SDL_WINDOW_SKIP_TASKBAR) - """""" UTILITY = int(lib.SDL_WINDOW_UTILITY) """""" TOOLTIP = int(lib.SDL_WINDOW_TOOLTIP) diff --git a/tcod/tcod.c b/tcod/tcod.c index 75994b85..91f7cc6f 100644 --- a/tcod/tcod.c +++ b/tcod/tcod.c @@ -18,7 +18,7 @@ */ int bresenham(int x1, int y1, int x2, int y2, int n, int* __restrict out) { // Bresenham length is Chebyshev distance. - int length = MAX(abs(x1 - x2), abs(y1 - y2)) + 1; + int length = TCOD_MAX(abs(x1 - x2), abs(y1 - y2)) + 1; if (!out) { return length; } if (n < length) { return TCOD_set_errorv("Bresenham output length mismatched."); } TCOD_bresenham_data_t bresenham;