HierarchyFrameDataView.GetItemColumnDataAsDouble

Switch to Manual
public double GetItemColumnDataAsDouble (int id, int column);

Parameters

idHierarchy item identifier.
columnColumn identifier.

Returns

double Value of the correspnding column as double.

Description

Returns double representation of hierarchy item value associated with the column.

Use to retrieve value with high precision for columns such as columnStartTime which represents sample start time in milliseconds.

using System.Collections.Generic;
using UnityEditor;
using UnityEditor.Profiling;
using UnityEditorInternal;

class Example { static List<int> childrenIdCache = new List<int>();

static int FindChildItemByFunctionName(HierarchyFrameDataView frameData, int parentId, string functionName) { frameData.GetItemChildren(parentId, childrenIdCache); foreach (var childId in childrenIdCache) { var name = frameData.GetItemName(childId); if (name == functionName) return childId; }

return HierarchyFrameDataView.invalidSampleId; }

static double GetSampleStartTime(string sampleName) { using (var frameData = ProfilerDriver.GetHierarchyFrameDataView(ProfilerDriver.lastFrameIndex, 0, HierarchyFrameDataView.ViewModes.Default, HierarchyFrameDataView.columnDontSort, false)) { var sampleId = FindChildItemByFunctionName(frameData, frameData.GetRootItemID(), sampleName); if (HierarchyFrameDataView.invalidSampleId == sampleId) return 0;

double startTime = frameData.GetItemColumnDataAsDouble(sampleId, HierarchyFrameDataView.columnStartTime); return startTime; } } }