Files
UnrealEngineUWP/Engine/Source/Developer/TargetDeviceServices/Private/TargetDeviceServicesModule.cpp
Ben Marsh 13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00

57 lines
1.4 KiB
C++

// Copyright 1998-2018 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);