mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-04-28 07:18:33 +00:00
The inequality operator is automatically generated by the compiler if `operator==` is defined.
29 lines
910 B
C++
29 lines
910 B
C++
// Copyright 2023 Dolphin Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include "Common/Config/Config.h"
|
|
|
|
// This file lets you register callbacks like in Common/Config/Config.h, with the difference that
|
|
// callbacks registered here are guaranteed to run on the CPU thread. Callbacks registered here may
|
|
// run with a slight delay compared to regular config callbacks.
|
|
|
|
namespace CPUThreadConfigCallback
|
|
{
|
|
struct ConfigChangedCallbackID
|
|
{
|
|
size_t id = -1;
|
|
|
|
bool operator==(const ConfigChangedCallbackID&) const = default;
|
|
};
|
|
|
|
// returns an ID that can be passed to RemoveConfigChangedCallback()
|
|
ConfigChangedCallbackID AddConfigChangedCallback(Config::ConfigChangedCallback func);
|
|
|
|
void RemoveConfigChangedCallback(ConfigChangedCallbackID callback_id);
|
|
|
|
// Should be called regularly from the CPU thread
|
|
void CheckForConfigChanges();
|
|
|
|
} // namespace CPUThreadConfigCallback
|