/** @file src/steam_auto_sync.h */ #pragma once #include "config_playnite.h" #include #include #include #include #include namespace platf::steam::autosync { struct settings_t { bool enabled = false; bool auto_sync = false; bool sync_all_installed = false; int recent_games = 10; int recent_max_age_days = 30; bool remove_uninstalled = true; bool include_tools = false; std::vector exclusions; }; // Configuration is safe to call before start() and during a hot reload. // The worker copies settings under its mutex and never reads config globals // directly from its polling thread. void configure(settings_t settings); void start(); void stop(); } // namespace platf::steam::autosync