Files
UnrealEngineUWP/Engine/Source/Programs/CrashReportClient/Private/CrashReportAnalytics.h
ben marsh 2b46ba7b94 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 4662404 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4662413 by ben marsh in Dev-Networking branch]
2018-12-14 13:44:01 -05:00

41 lines
1.1 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Templates/UnrealTemplate.h"
#include "Templates/SharedPointer.h"
class IAnalyticsProviderET;
/**
* The public interface for the analytics provider singleton.
* For Epic builds, this will point to epic's internal analytics provider.
* For licensee builds, it will be NULL by default unless they provide their own
* configuration.
*
*/
class FCrashReportAnalytics : FNoncopyable
{
public:
/**
* Return the provider instance. Not valid outside of Initialize/Shutdown calls.
* Note: must check IsAvailable() first else this code will assert if the provider is not valid.
*/
static IAnalyticsProviderET& GetProvider();
/** Helper function to determine if the provider is valid. */
static bool IsAvailable()
{
return Analytics.IsValid();
}
/** Called to initialize the singleton. */
static void Initialize();
/** Called to shut down the singleton */
static void Shutdown();
private:
static bool bIsInitialized;
static TSharedPtr<IAnalyticsProviderET> Analytics;
};