Files
eden/src/core/hle/service/bcat/module.h
T

45 lines
1.1 KiB
C++
Raw Normal View History

2018-05-28 16:36:38 +03:00
// Copyright 2018 yuzu emulator team
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#pragma once
#include "core/hle/service/service.h"
2019-10-01 09:13:09 -04:00
namespace Service {
namespace FileSystem {
class FileSystemController;
} // namespace FileSystem
namespace BCAT {
2018-05-28 16:36:38 +03:00
class Backend;
2018-05-28 16:36:38 +03:00
class Module final {
public:
class Interface : public ServiceFramework<Interface> {
public:
2019-10-01 09:13:09 -04:00
explicit Interface(std::shared_ptr<Module> module, FileSystem::FileSystemController& fsc,
const char* name);
~Interface() override;
2018-05-28 16:36:38 +03:00
void CreateBcatService(Kernel::HLERequestContext& ctx);
void CreateDeliveryCacheStorageService(Kernel::HLERequestContext& ctx);
void CreateDeliveryCacheStorageServiceWithApplicationId(Kernel::HLERequestContext& ctx);
2018-05-28 16:36:38 +03:00
protected:
2019-10-01 09:13:09 -04:00
FileSystem::FileSystemController& fsc;
2018-05-28 16:36:38 +03:00
std::shared_ptr<Module> module;
std::unique_ptr<Backend> backend;
2018-05-28 16:36:38 +03:00
};
};
/// Registers all BCAT services with the specified service manager.
2019-10-01 09:13:09 -04:00
void InstallInterfaces(Core::System& system);
} // namespace BCAT
2018-05-28 16:36:38 +03:00
2019-10-01 09:13:09 -04:00
} // namespace Service