core: Add VideoDumper to System
This commit is contained in:
parent
3f64aaabbd
commit
f2880b08d1
|
@ -16,6 +16,7 @@
|
||||||
#include "core/cheats/cheats.h"
|
#include "core/cheats/cheats.h"
|
||||||
#include "core/core.h"
|
#include "core/core.h"
|
||||||
#include "core/core_timing.h"
|
#include "core/core_timing.h"
|
||||||
|
#include "core/dumping/backend.h"
|
||||||
#include "core/gdbstub/gdbstub.h"
|
#include "core/gdbstub/gdbstub.h"
|
||||||
#include "core/hle/kernel/client_port.h"
|
#include "core/hle/kernel/client_port.h"
|
||||||
#include "core/hle/kernel/kernel.h"
|
#include "core/hle/kernel/kernel.h"
|
||||||
|
@ -274,6 +275,14 @@ const Cheats::CheatEngine& System::CheatEngine() const {
|
||||||
return *cheat_engine;
|
return *cheat_engine;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VideoDumper::Backend& System::VideoDumper() {
|
||||||
|
return *video_dumper;
|
||||||
|
}
|
||||||
|
|
||||||
|
const VideoDumper::Backend& System::VideoDumper() const {
|
||||||
|
return *video_dumper;
|
||||||
|
}
|
||||||
|
|
||||||
void System::RegisterMiiSelector(std::shared_ptr<Frontend::MiiSelector> mii_selector) {
|
void System::RegisterMiiSelector(std::shared_ptr<Frontend::MiiSelector> mii_selector) {
|
||||||
registered_mii_selector = std::move(mii_selector);
|
registered_mii_selector = std::move(mii_selector);
|
||||||
}
|
}
|
||||||
|
@ -306,6 +315,10 @@ void System::Shutdown() {
|
||||||
timing.reset();
|
timing.reset();
|
||||||
app_loader.reset();
|
app_loader.reset();
|
||||||
|
|
||||||
|
if (video_dumper->IsDumping()) {
|
||||||
|
video_dumper->StopDumping();
|
||||||
|
}
|
||||||
|
|
||||||
if (auto room_member = Network::GetRoomMember().lock()) {
|
if (auto room_member = Network::GetRoomMember().lock()) {
|
||||||
Network::GameInfo game_info{};
|
Network::GameInfo game_info{};
|
||||||
room_member->SendGameInfo(game_info);
|
room_member->SendGameInfo(game_info);
|
||||||
|
|
|
@ -49,6 +49,10 @@ namespace Cheats {
|
||||||
class CheatEngine;
|
class CheatEngine;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace VideoDumper {
|
||||||
|
class Backend;
|
||||||
|
}
|
||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
|
|
||||||
class Timing;
|
class Timing;
|
||||||
|
@ -206,6 +210,12 @@ public:
|
||||||
/// Gets a const reference to the cheat engine
|
/// Gets a const reference to the cheat engine
|
||||||
const Cheats::CheatEngine& CheatEngine() const;
|
const Cheats::CheatEngine& CheatEngine() const;
|
||||||
|
|
||||||
|
/// Gets a reference to the video dumper backend
|
||||||
|
VideoDumper::Backend& VideoDumper();
|
||||||
|
|
||||||
|
/// Gets a const reference to the video dumper backend
|
||||||
|
const VideoDumper::Backend& VideoDumper() const;
|
||||||
|
|
||||||
PerfStats perf_stats;
|
PerfStats perf_stats;
|
||||||
FrameLimiter frame_limiter;
|
FrameLimiter frame_limiter;
|
||||||
|
|
||||||
|
@ -276,6 +286,9 @@ private:
|
||||||
/// Cheats manager
|
/// Cheats manager
|
||||||
std::unique_ptr<Cheats::CheatEngine> cheat_engine;
|
std::unique_ptr<Cheats::CheatEngine> cheat_engine;
|
||||||
|
|
||||||
|
/// Video dumper backend
|
||||||
|
std::unique_ptr<VideoDumper::Backend> video_dumper;
|
||||||
|
|
||||||
/// RPC Server for scripting support
|
/// RPC Server for scripting support
|
||||||
std::unique_ptr<RPC::RPCServer> rpc_server;
|
std::unique_ptr<RPC::RPCServer> rpc_server;
|
||||||
|
|
||||||
|
|
Reference in New Issue