Files
2025-05-18 13:04:45 +08:00

84 lines
2.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreTypes.h"
#include "Styling/SlateBrush.h"
// TraceInsights
#include "Insights/TimingProfiler/ViewModels/StatsNode.h"
#include "Insights/TimingProfiler/ViewModels/StatsGroupingAndSorting.h"
namespace UE::Insights::TimingProfiler
{
////////////////////////////////////////////////////////////////////////////////////////////////////
/** Helper struct that contains helper functions and classes for EStatsNodeType enum. */
struct StatsNodeTypeHelper
{
/**
* @param Type - The value to get the text for.
*
* @return text representation of the specified EStatsNodeType value.
*/
static FText ToText(const EStatsNodeType Type);
/**
* @param Type - The value to get the text for.
*
* @return text representation with more detailed explanation of the specified EStatsNodeType value.
*/
static FText ToDescription(const EStatsNodeType Type);
static const FSlateBrush* GetIconForGroup();
static const FSlateBrush* GetIcon(const EStatsNodeType Type);
};
////////////////////////////////////////////////////////////////////////////////////////////////////
/** Helper struct that contains helper functions and classes for EStatsNodeDataType enum. */
struct StatsNodeDataTypeHelper
{
/**
* @param Type - The value to get the text for.
*
* @return text representation of the specified EStatsNodeDataType value.
*/
static FText ToText(const EStatsNodeDataType Type);
/**
* @param Type - The value to get the text for.
*
* @return text representation with more detailed explanation of the specified EStatsNodeDataType value.
*/
static FText ToDescription(const EStatsNodeDataType Type);
static const FSlateBrush* GetIcon(const EStatsNodeDataType Type);
};
////////////////////////////////////////////////////////////////////////////////////////////////////
/** Helper struct that contains grouping static functions and classes. */
struct StatsNodeGroupingHelper
{
/**
* @param StatsGroupingMode - The value to get the text for.
*
* @return text representation of the specified EStatsGroupingMode value.
*/
static FText ToText(const EStatsGroupingMode StatsGroupingMode);
/**
* @param StatsGroupingMode - The value to get the text for.
*
* @return text representation with more detailed explanation of the specified EStatsGroupingMode value.
*/
static FText ToDescription(const EStatsGroupingMode StatsGroupingMode);
};
////////////////////////////////////////////////////////////////////////////////////////////////////
} // namespace UE::Insights::TimingProfiler