// Copyright Citra Emulator Project / Azahar Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.

package org.citra.citra_emu.features.settings

// This list should mirror the list in GenerateSettingKeys.cmake,
// specifically the Shared and Android setting keys.
@Suppress("KotlinJniMissingFunction", "FunctionName")
object SettingKeys {
    // Shared
    external fun use_artic_base_controller(): String
    external fun use_cpu_jit(): String
    external fun cpu_clock_percentage(): String
    external fun is_new_3ds(): String
    external fun lle_applets(): String
    external fun deterministic_async_operations(): String
    external fun enable_required_online_lle_modules(): String
    external fun use_virtual_sd(): String
    external fun compress_cia_installs(): String
    external fun region_value(): String
    external fun init_clock(): String
    external fun init_time(): String
    external fun init_ticks_type(): String
    external fun init_ticks_override(): String
    external fun plugin_loader(): String
    external fun allow_plugin_loader(): String
    external fun steps_per_hour(): String
    external fun apply_region_free_patch(): String
    external fun graphics_api(): String
    external fun use_gles(): String
    external fun renderer_debug(): String
    external fun spirv_shader_gen(): String
    external fun disable_spirv_optimizer(): String
    external fun async_shader_compilation(): String
    external fun async_presentation(): String
    external fun use_hw_shader(): String
    external fun use_disk_shader_cache(): String
    external fun shaders_accurate_mul(): String
    external fun use_vsync(): String
    external fun use_shader_jit(): String
    external fun resolution_factor(): String
    external fun frame_limit(): String
    external fun turbo_limit(): String
    external fun texture_filter(): String
    external fun texture_sampling(): String
    external fun delay_game_render_thread_us(): String
    external fun layout_option(): String
    external fun swap_screen(): String
    external fun upright_screen(): String
    external fun secondary_display_layout(): String
    external fun large_screen_proportion(): String
    external fun screen_gap(): String
    external fun small_screen_position(): String
    external fun custom_top_x(): String
    external fun custom_top_y(): String
    external fun custom_top_width(): String
    external fun custom_top_height(): String
    external fun custom_bottom_x(): String
    external fun custom_bottom_y(): String
    external fun custom_bottom_width(): String
    external fun custom_bottom_height(): String
    external fun custom_second_layer_opacity(): String
    external fun aspect_ratio(): String
    external fun portrait_layout_option(): String
    external fun custom_portrait_top_x(): String
    external fun custom_portrait_top_y(): String
    external fun custom_portrait_top_width(): String
    external fun custom_portrait_top_height(): String
    external fun custom_portrait_bottom_x(): String
    external fun custom_portrait_bottom_y(): String
    external fun custom_portrait_bottom_width(): String
    external fun custom_portrait_bottom_height(): String
    external fun bg_red(): String
    external fun bg_green(): String
    external fun bg_blue(): String
    external fun render_3d(): String
    external fun factor_3d(): String
    external fun swap_eyes_3d(): String
    external fun render_3d_which_display(): String
    external fun cardboard_screen_size(): String
    external fun cardboard_x_shift(): String
    external fun cardboard_y_shift(): String
    external fun filter_mode(): String
    external fun pp_shader_name(): String
    external fun anaglyph_shader_name(): String
    external fun dump_textures(): String
    external fun custom_textures(): String
    external fun preload_textures(): String
    external fun async_custom_loading(): String
    external fun disable_right_eye_render(): String
    external fun audio_emulation(): String
    external fun enable_audio_stretching(): String
    external fun enable_realtime_audio(): String
    external fun volume(): String
    external fun output_type(): String
    external fun output_device(): String
    external fun input_type(): String
    external fun input_device(): String
    external fun delay_start_for_lle_modules(): String
    external fun use_gdbstub(): String
    external fun gdbstub_port(): String
    external fun instant_debug_log(): String
    external fun enable_rpc_server(): String
    external fun log_filter(): String
    external fun log_regex_filter(): String
    external fun use_integer_scaling(): String
    external fun layouts_to_cycle(): String
    external fun camera_inner_flip(): String
    external fun camera_outer_left_flip(): String
    external fun camera_outer_right_flip(): String
    external fun camera_inner_name(): String
    external fun camera_inner_config(): String
    external fun camera_outer_left_name(): String
    external fun camera_outer_left_config(): String
    external fun camera_outer_right_name(): String
    external fun camera_outer_right_config(): String
    external fun last_artic_base_addr(): String
    external fun motion_device(): String
    external fun touch_device(): String
    external fun udp_input_address(): String
    external fun udp_input_port(): String
    external fun udp_pad_index(): String
    external fun record_frame_times(): String

    // Android
    external fun expand_to_cutout_area(): String
    external fun performance_overlay_enable(): String
    external fun performance_overlay_show_fps(): String
    external fun performance_overlay_show_frame_time(): String
    external fun performance_overlay_show_speed(): String
    external fun performance_overlay_show_app_ram_usage(): String
    external fun performance_overlay_show_available_ram(): String
    external fun performance_overlay_show_battery_temp(): String
    external fun performance_overlay_background(): String
    external fun use_frame_limit(): String
    external fun android_hide_images(): String
    external fun screen_orientation(): String
    external fun performance_overlay_position(): String
}