Files
UnrealEngineUWP/Engine/Source/Developer/TargetDeviceServices/Private/TargetDeviceServicesModule.cpp
Ryan Vance 7c51ff94af Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR)
CL 1 of 8
#rb integration

[CL 4748712 by Ryan Vance in Dev-VR branch]
2019-01-17 18:54:05 -05:00

57 lines
1.4 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "TargetDeviceServicesPrivate.h"
#include "CoreTypes.h"
#include "Modules/ModuleManager.h"
#include "ITargetDeviceServicesModule.h"
#include "TargetDeviceProxyManager.h"
#include "TargetDeviceServiceManager.h"
DEFINE_LOG_CATEGORY(TargetDeviceServicesLog);
/**
* Implements the TargetDeviceServices module.
*/
class FTargetDeviceServicesModule
: public ITargetDeviceServicesModule
{
public:
//~ ITargetDeviceServicesModule interface
virtual TSharedRef<ITargetDeviceProxyManager> GetDeviceProxyManager() override
{
if (!DeviceProxyManagerSingleton.IsValid())
{
DeviceProxyManagerSingleton = MakeShareable(new FTargetDeviceProxyManager());
}
return DeviceProxyManagerSingleton.ToSharedRef();
}
virtual TSharedRef<ITargetDeviceServiceManager> GetDeviceServiceManager() override
{
if (!DeviceServiceManagerSingleton.IsValid())
{
DeviceServiceManagerSingleton = MakeShareable(new FTargetDeviceServiceManager());
}
return DeviceServiceManagerSingleton.ToSharedRef();
}
private:
/** Holds the device proxy manager singleton. */
TSharedPtr<FTargetDeviceProxyManager> DeviceProxyManagerSingleton;
/** Holds the device service manager singleton. */
TSharedPtr<FTargetDeviceServiceManager> DeviceServiceManagerSingleton;
};
IMPLEMENT_MODULE(FTargetDeviceServicesModule, TargetDeviceServices);