Files
FEX-Emu--FEX/Source/Tools/LinuxEmulation/Thunks.h
T
Lioncache d36c387c1f Core/Thunks: Remove unused IR/forward declarations
Moves the IR include into one of the more specific headers, which avoids dumping the IR header into any core bits that use the interface.

Also uncovered a missing header guard.
2025-09-06 22:28:27 -04:00

26 lines
795 B
C++

// SPDX-License-Identifier: MIT
#pragma once
#include <FEXCore/Core/Thunks.h>
#include <FEXCore/fextl/memory.h>
#include <FEXCore/IR/IR.h>
#include <span>
namespace FEX::HLE {
struct ThreadStateObject;
class ThunkHandler : public FEXCore::ThunkHandler {
public:
virtual void RegisterTLSState(FEX::HLE::ThreadStateObject* ThreadObject) = 0;
/**
* @brief Allows the frontend to register its own thunk handlers independent of what is controlled in the backend.
*
* @param CTX A valid non-null context instance.
* @param Definitions A vector of thunk definitions that the frontend controls
*/
virtual void AppendThunkDefinitions(std::span<const FEXCore::IR::ThunkDefinition> Definitions) = 0;
};
fextl::unique_ptr<ThunkHandler> CreateThunkHandler();
} // namespace FEX::HLE