Lime3DS/src/core/hle/service/ir/ir.cpp

45 lines
978 B
C++
Raw Normal View History

// Copyright 2015 Citra Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include <memory>
#include "core/hle/service/ir/ir.h"
#include "core/hle/service/ir/ir_rst.h"
#include "core/hle/service/ir/ir_u.h"
#include "core/hle/service/ir/ir_user.h"
#include "core/hle/service/service.h"
namespace Service {
namespace IR {
static std::weak_ptr<IR_RST> current_ir_rst;
void Init() {
AddService(new IR_User_Interface);
InitUser();
}
void Shutdown() {
ShutdownUser();
}
2017-03-31 19:27:18 +00:00
void ReloadInputDevices() {
ReloadInputDevicesUser();
if (auto ir_rst = current_ir_rst.lock())
ir_rst->ReloadInputDevices();
2017-03-31 19:27:18 +00:00
}
2017-12-09 10:34:23 +00:00
void InstallInterfaces(SM::ServiceManager& service_manager) {
std::make_shared<IR_U>()->InstallAsService(service_manager);
auto ir_rst = std::make_shared<IR_RST>();
ir_rst->InstallAsService(service_manager);
current_ir_rst = ir_rst;
2017-12-09 10:34:23 +00:00
}
} // namespace IR
} // namespace Service