Files
eden/src/core/loader/homebrew_nxlink.h
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

31 lines
1016 B
C++
Raw Normal View History

2026-08-01 12:34:33 -03:00
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
#include <cstddef>
#include <optional>
#include <string>
#include <string_view>
2026-08-01 12:35:45 -03:00
#include "common/settings_enums.h"
2026-08-01 12:34:33 -03:00
namespace Loader::HomebrewNxlink {
constexpr size_t ArgvMarkerSize = 16;
constexpr std::string_view ArgvMarkerSuffix = "_NXLINK_";
2026-08-01 12:35:45 -03:00
constexpr std::string_view LoopbackArgvMarker = "0100007F_NXLINK_";
2026-08-01 12:34:33 -03:00
bool IsArgvMarker(std::string_view token);
2026-08-01 12:35:45 -03:00
bool IsLoopbackArgvMarker(std::string_view token);
2026-08-01 12:34:33 -03:00
std::optional<std::string> GetArgvMarker(std::string_view argv_string);
std::optional<std::string> PrepareArgv(std::string& argv_string,
2026-08-01 12:35:45 -03:00
std::string_view inherited_marker,
bool append_loopback_marker = false);
void ApplyServerMode(Settings::HomebrewNxlinkServerMode mode,
const std::optional<std::string>& active_marker);
void StopServer();
2026-08-01 12:34:33 -03:00
} // namespace Loader::HomebrewNxlink