mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2025-07-13 20:52:15 +02:00
ncm: fix up main
This commit is contained in:
parent
e1a5e31152
commit
674fd8f1e2
@ -70,7 +70,7 @@ namespace ams::ncm {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Result ContentManagerImpl::~ContentManagerImpl() {
|
ContentManagerImpl::~ContentManagerImpl() {
|
||||||
{
|
{
|
||||||
std::scoped_lock lk(this->mutex);
|
std::scoped_lock lk(this->mutex);
|
||||||
|
|
||||||
|
@ -113,12 +113,13 @@ namespace {
|
|||||||
}
|
}
|
||||||
public:
|
public:
|
||||||
ContentManagerServerManager(ServiceType *m)
|
ContentManagerServerManager(ServiceType *m)
|
||||||
: thread(ThreadFunction, this, ThreadPriority), ncm_manager(sf::ServiceObjectTraits<ServiceType>::SharedPointerHelper::GetEmptyDeleteSharedPointer(m))
|
: thread(ThreadFunction, this, ThreadPriority), ncm_manager()
|
||||||
{
|
{
|
||||||
/* ... */
|
/* ... */
|
||||||
}
|
}
|
||||||
|
|
||||||
ams::Result Initialize() {
|
ams::Result Initialize(std::shared_ptr<ServiceType> manager_obj) {
|
||||||
|
this->ncm_manager = manager_obj;
|
||||||
return this->RegisterServer<ServiceType>(ContentManagerServiceName, ContentManagerManagerSessions, this->ncm_manager);
|
return this->RegisterServer<ServiceType>(ContentManagerServiceName, ContentManagerManagerSessions, this->ncm_manager);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -183,23 +184,22 @@ namespace {
|
|||||||
lr::LocationResolverManagerImpl g_lr_manager_service_object;
|
lr::LocationResolverManagerImpl g_lr_manager_service_object;
|
||||||
LocationResolverServerManager g_lr_server_manager(std::addressof(g_lr_manager_service_object));
|
LocationResolverServerManager g_lr_server_manager(std::addressof(g_lr_manager_service_object));
|
||||||
|
|
||||||
}
|
ALWAYS_INLINE std::shared_ptr<ncm::ContentManagerImpl> GetSharedPointerToContentManager() {
|
||||||
|
return sf::ServiceObjectTraits<ncm::ContentManagerImpl>::SharedPointerHelper::GetEmptyDeleteSharedPointer(std::addressof(g_ncm_manager_service_object));
|
||||||
|
}
|
||||||
|
|
||||||
void ContentManagerServerMain(void *arg) {
|
|
||||||
/* Create services. */
|
|
||||||
R_ABORT_UNLESS(g_ncm_server_manager.RegisterServer<ncm::ContentManagerImpl>(ContentManagerServiceName, ContentManagerManagerSessions));
|
|
||||||
|
|
||||||
/* Loop forever, servicing our services. */
|
|
||||||
g_ncm_server_manager.LoopProcess();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
/* TODO: Initialize content manager implementation. */
|
auto content_manager = GetSharedPointerToContentManager();
|
||||||
|
R_ABORT_UNLESS(content_manager->Initialize());
|
||||||
|
|
||||||
R_ABORT_UNLESS(g_ncm_server_manager.Initialize());
|
R_ABORT_UNLESS(g_ncm_server_manager.Initialize(content_manager));
|
||||||
R_ABORT_UNLESS(g_ncm_server_manager.StartThreads());
|
R_ABORT_UNLESS(g_ncm_server_manager.StartThreads());
|
||||||
|
|
||||||
|
ncm::InitializeWithObject(content_manager);
|
||||||
|
|
||||||
R_ABORT_UNLESS(g_lr_server_manager.Initialize());
|
R_ABORT_UNLESS(g_lr_server_manager.Initialize());
|
||||||
R_ABORT_UNLESS(g_lr_server_manager.StartThreads());
|
R_ABORT_UNLESS(g_lr_server_manager.StartThreads());
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user