// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

// Generated By moduleGenerator
#include "common/logging/log.h"
#include "core/libraries/error_codes.h"
#include "core/libraries/libs.h"
#include "mouse.h"

namespace Libraries::Mouse {

int PS4_SYSV_ABI sceMouseClose() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseConnectPort() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseDebugGetDeviceId() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseDeviceOpen() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseDisconnectDevice() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseDisconnectPort() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseGetDeviceInfo() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseInit() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseMbusInit() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseOpen() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseRead() {
    LOG_DEBUG(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseSetHandType() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseSetPointerSpeed() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

int PS4_SYSV_ABI sceMouseSetProcessPrivilege() {
    LOG_ERROR(Lib_Mouse, "(STUBBED) called");
    return ORBIS_OK;
}

void RegisterLib(Core::Loader::SymbolsResolver* sym) {
    LIB_FUNCTION("cAnT0Rw-IwU", "libSceMouse", 1, "libSceMouse", sceMouseClose);
    LIB_FUNCTION("Ymyy1HSSJLQ", "libSceMouse", 1, "libSceMouse", sceMouseConnectPort);
    LIB_FUNCTION("BRXOoXQtb+k", "libSceMouse", 1, "libSceMouse", sceMouseDebugGetDeviceId);
    LIB_FUNCTION("WiGKINCZWkc", "libSceMouse", 1, "libSceMouse", sceMouseDeviceOpen);
    LIB_FUNCTION("eDQTFHbgeTU", "libSceMouse", 1, "libSceMouse", sceMouseDisconnectDevice);
    LIB_FUNCTION("jJP1vYMEPd4", "libSceMouse", 1, "libSceMouse", sceMouseDisconnectPort);
    LIB_FUNCTION("QA9Qupz3Zjw", "libSceMouse", 1, "libSceMouse", sceMouseGetDeviceInfo);
    LIB_FUNCTION("Qs0wWulgl7U", "libSceMouse", 1, "libSceMouse", sceMouseInit);
    LIB_FUNCTION("1FeceR5YhAo", "libSceMouse", 1, "libSceMouse", sceMouseMbusInit);
    LIB_FUNCTION("RaqxZIf6DvE", "libSceMouse", 1, "libSceMouse", sceMouseOpen);
    LIB_FUNCTION("x8qnXqh-tiM", "libSceMouse", 1, "libSceMouse", sceMouseRead);
    LIB_FUNCTION("crkFfp-cmFo", "libSceMouse", 1, "libSceMouse", sceMouseSetHandType);
    LIB_FUNCTION("ghLUU2Z5Lcg", "libSceMouse", 1, "libSceMouse", sceMouseSetPointerSpeed);
    LIB_FUNCTION("6aANndpS0Wo", "libSceMouse", 1, "libSceMouse", sceMouseSetProcessPrivilege);
};

} // namespace Libraries::Mouse