Files
UnrealEngine/Engine/Source/Developer/TraceInsights/Private/Insights/TimingProfiler/ViewModels/TimerNodeHelper.h
2025-05-18 13:04:45 +08:00

62 lines
1.9 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreTypes.h"
#include "Styling/SlateBrush.h"
// TraceInsights
#include "Insights/TimingProfiler/ViewModels/TimerNode.h"
#include "Insights/TimingProfiler/ViewModels/TimerGroupingAndSorting.h"
namespace UE::Insights::TimingProfiler
{
////////////////////////////////////////////////////////////////////////////////////////////////////
/** Helper struct that contains helper functions and classes for ETimerNodeType enum. */
struct TimerNodeTypeHelper
{
/**
* @param Type - The value to get the text for.
*
* @return text representation of the specified ETimerNodeType value.
*/
static FText ToText(const ETimerNodeType Type);
/**
* @param Type - The value to get the text for.
*
* @return text representation with more detailed explanation of the specified ETimerNodeType value.
*/
static FText ToDescription(const ETimerNodeType Type);
static const FSlateBrush* GetIconForGroup();
static const FSlateBrush* GetIconForTimerNodeType(const ETimerNodeType Type);
};
////////////////////////////////////////////////////////////////////////////////////////////////////
/** Helper struct that contains grouping static functions and classes. */
struct TimerNodeGroupingHelper
{
/**
* @param TimerGroupingMode - The value to get the text for.
*
* @return text representation of the specified ETimerGroupingMode value.
*/
static FText ToText(const ETimerGroupingMode TimerGroupingMode);
/**
* @param TimerGroupingMode - The value to get the text for.
*
* @return text representation with more detailed explanation of the specified ETimerGroupingMode value.
*/
static FText ToDescription(const ETimerGroupingMode TimerGroupingMode);
};
////////////////////////////////////////////////////////////////////////////////////////////////////
} // namespace UE::Insights::TimingProfiler