Files
UnrealEngineUWP/Engine/Source/Developer/TargetDeviceServices/Private/TargetDeviceServicesModule.cpp
Thomas Sarkanen 8ba3c4c087 Merging //UE4/Dev-Main to Dev-Anim (//UE4/Dev-Anim) @ CL 4643671
#rb none
#jira none

[CL 4665410 by Thomas Sarkanen in Dev-Anim branch]
2018-12-17 06:31:16 -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);