Files
UnrealEngineUWP/Engine/Source/Editor/RewindDebuggerInterface/Public/IRewindDebuggerViewCreator.h
keith yerex d8cb0c9c81 Rewind Debugger timelines
#rb thomas.sarkanen
#preflight 627be6e9a85e625d6f6da85a

#ROBOMERGE-OWNER: keith.yerex
#ROBOMERGE-AUTHOR: keith.yerex
#ROBOMERGE-SOURCE: CL 20151054 via CL 20152640 via CL 20153506
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20157277 by keith yerex in ue5-main branch]
2022-05-11 21:58:41 -04:00

40 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "IRewindDebuggerView.h"
#include "Textures/SlateIcon.h"
namespace TraceServices
{
class IAnalysisSession;
}
// Interface class which creates debug widgets
class REWINDDEBUGGERINTERFACE_API IRewindDebuggerViewCreator : public IModularFeature
{
public:
static const FName ModularFeatureName;
// returns the name of a type of UObject for which this debug view will be created
virtual FName GetTargetTypeName() const = 0;
// optional additional filter, to prevent debug views from being listed if they have no data
virtual bool HasDebugInfo(uint64 ObjectId) const
{
return true;
};
// returns a unique name for identifying this type of widget (same value returned by IRewindDebuggerView::GetName)
virtual FName GetName() const = 0;
// text for tab header
virtual FText GetTitle() const = 0;
// icon for tab header
virtual FSlateIcon GetIcon() const = 0;
// creates and returns a widget, which will be displayed in Rewind Debugger
virtual TSharedPtr<IRewindDebuggerView> CreateDebugView(uint64 ObjectId, double CurrentTime, const TraceServices::IAnalysisSession& InAnalysisSession) const = 0;
};