HierarchyFrameDataView
класс в UnityEditor.Profiling
Наследуется от:Profiling.FrameDataView
Описание
Обеспечивает доступ к данным Profiler для конкретного кадра и потока.
Используйте HierarchyFrameDataView, чтобы получать выборки Profiler, организованные в виде иерархии.
Это представление используется, например, в режиме Hierachy модуля CPU Использование Profiler, в частности.
Класс HierarchyFrameDataView агрегирует данные вместе со сведениями о времени и памяти. Каждый элемент иерархии содержит накопленные данные своих дочерних элементов.
using System; using System.Collections.Generic; using UnityEditor.Profiling; using UnityEditorInternal;
public class Example { List<int> parentsCacheList = new List<int>(); List<int> childrenCacheList = new List<int>();
public void ProcessFrameData(int frame) { using (var frameData = ProfilerDriver.GetHierarchyFrameDataView(frame, 0, HierarchyFrameDataView.ViewModes.Default, HierarchyFrameDataView.columnGcMemory, false)) { int rootId = frameData.GetRootItemID(); frameData.GetItemDescendantsThatHaveChildren(rootId, parentsCacheList); foreach (int parentId in parentsCacheList) { frameData.GetItemChildren(parentId, childrenCacheList); // Process further records } } } }
Статические свойства
| Свойство | Описание |
|---|---|
| columnCalls | Столбец Вызовы. |
| columnDontSort | Идентификатор столбца, указывающий, отключена ли сортировка. |
| columnGcMemory | Количество управляемых распределений в выборке. |
| columnName | Столбец Profiler Имя образца. |
| columnObjectName | Столбец Имя объекта. |
| columnSelfPercent | Процент времени CPU, которое Unity проводит в самой выборке, за исключением времени в дочерних выборках. |
| columnSelfTime | Время CPU в миллисекундах, которое Unity проводит в самом образце, исключая время в дочерних образцах. |
| columnStartTime | Время начала вызова в миллисекундах. |
| columnTotalPercent | Процент времени CPU, которое Unity проводит в выборке, включая время из дочерних выборок. |
| columnTotalTime | Время CPU в миллисекундах, которое Unity тратит на выборку, включая время из дочерних выборок. |
| columnWarningCount | Количество образцов, находящихся внутри пути выполнения кода, который не является оптимальным для производительности. |
| invalidSampleId | Индекс недействительного элемента. |
Свойства
| Свойство | Описание |
|---|---|
| sortColumn | Идентификатор столбца, определяющий столбец сортировки. |
| sortColumnAscending | Если порядок сортировки восходящий, true, или нисходящий, false. |
| viewMode | Режим представления, определяющий способ агрегирования данных. |
Открытые методы
| Метод | Описание |
|---|---|
| GetItemAncestors | Получает список предков элементов иерархии. |
| GetItemCallstack | Получить стек вызовов, связанный с указанным элементом иерархии. |
| GetItemCategoryIndex | Получает категорию маркера Profiler для определенного идентификатора маркера. |
| GetItemChildren | Получает список дочерних элементов иерархии. |
| GetItemColumnData | Возвращает строковое представление значения элемента иерархии, связанного со столбцом. |
| GetItemColumnDataAsDouble | Возвращает двойное представление значения элемента иерархии, связанного со столбцом. |
| GetItemColumnDataAsFloat | Возвращает плавающее представление значения элемента иерархии, связанного со столбцом. |
| GetItemColumnDataAsSingle | Возвращает плавающее представление значения элемента иерархии, связанного со столбцом. |
| GetItemDepth | Возвращает уровень иерархии элемента. |
| GetItemDescendantsThatHaveChildren | Используется для получения списка потомков элемента иерархии, которые имеют других потомков. |
| GetItemEntityId | Возвращает EntityId из UnityEngine.Object, связанного с выборкой. |
| GetItemMarkerFlags | Используется для получения флагов использования маркеров. |
| GetItemMarkerID | Возвращает маркер Profiler, который уникально идентифицирует имя образца. |
| GetItemMarkerIDPath | Используется для получения списка идентификаторов маркеров всех родительских элементов иерархии. |
| GetItemMergedSampleCallstack | Получить стек вызовов, связанный с указанным элементом иерархии. |
| GetItemMergedSamplesColumnData | Используется для получения значений слиянных образцов элемента иерархии. |
| GetItemMergedSamplesColumnDataAsDoubles | Получает слившиеся образцы для определенного элемента иерархии. Слившиеся образцы возвращаются как список дубликатов через параметр outValues. |
| GetItemMergedSamplesColumnDataAsFloats | Получает слившиеся образцы для определенного элемента иерархии. Слившиеся образцы возвращаются как список с плавающей запятой через параметр outValues. |
| GetItemMergedSamplesCount | Возвращает число объединенных образцов, представленных элементом иерархии. |
| GetItemMergedSamplesEntityId | Получает EntityId из объединенных образцов, соответствующих элементу иерархии. |
| GetItemMergedSamplesMetadata | Возвращает строковое представление значения метаданных элемента иерархии. |
| GetItemMergedSamplesMetadataAsFloat | Возвращает плавающее представление значения метаданных элемента иерархии. |
| GetItemMergedSamplesMetadataAsLong | Возвращает длинное представление метаданных элемента иерархии. |
| GetItemMergedSamplesMetadataCount | Возвращает количество метаданных, связанных с элементом иерархии. |
| GetItemMetadata | Возвращает строковое представление значения метаданных элемента иерархии. |
| GetItemMetadataAsFloat | Возвращает плавающее представление значения метаданных элемента иерархии. |
| GetItemMetadataAsLong | Возвращает длинное представление метаданных элемента иерархии. |
| GetItemMetadataCount | Возвращает количество метаданных, связанных с элементом иерархии. |
| GetItemName | Получает имя образца, связанного с элементом. |
| GetItemPath | Получает путь к элементу иерархии в виде строки. Каждый уровень разделен косыми чертами ('/'). |
| GetItemRawFrameDataViewIndices | Получает необработанные индексы всех образцов, связанных с этим идентификатором элемента Hierarchy. |
| GetRootItemID | Получает идентификатор элемента корневого дерева. |
| HasItemChildren | Проверяет, имеет ли элемент дерева дочерей. |
| ItemContainsRawFrameDataViewIndex | Проверяет, соответствует ли предоставленный индекс необработанной выборки любому из индексов необработанной выборки, связанных с этим идентификатором элемента Hierarchy. |
| ResolveItemCallstack | Получить стек вызовов, связанный с указанным элементом иерархии. |
| ResolveItemMergedSampleCallstack | Получить стек вызовов, связанный с конкретным элементом образца. |
| Sort | Сортировка представления иерархии. |
Унаследованные члены 3
Статические свойства
| Свойство | Описание |
|---|---|
| invalidMarkerId | Идентификатор недействительного маркера. |
| invalidThreadId | Эта константа определяет идентификатор потока, который не соответствует никакому действительному идентификатору потока. |
| invalidThreadIndex | Эта константа определяет индекс потока, который не соответствует никакому действительному индексу потока. |
Свойства
| Свойство | Описание |
|---|---|
| frameFps | Текущее количество кадров в секунду (FPS) для кадра. |
| frameGpuTimeMs | Количество времени кадра GPU в миллисекундах. |
| frameGpuTimeNs | Количество времени кадра GPU в наносекундах. |
| frameIndex | Индекс кадра для FrameDataView. |
| frameStartTimeMs | Время начала кадра CPU в миллисекундах. |
| frameStartTimeNs | Время начала кадра CPU в наносекундах. |
| frameTimeMs | Количество времени кадра CPU в миллисекундах. |
| frameTimeNs | Количество времени кадра CPU в наносекундах. |
| maxDepth | Максимальные уровни дочерних выборок в данных потока. |
| sampleCount | Количество образцов в кадре для потока. |
| threadGroupName | Имя группы, к которой относится поток. |
| threadId | Постоянный идентификатор, связанный с потоком. |
| threadIndex | Индекс потока в текущем кадре. |
| threadName | Имя потока. |
| valid | True после того, как данные кадра для потока были обработаны и готовы для извлечения. |
Открытые методы
| Метод | Описание |
|---|---|
| GetAllCategories | Получает все доступные Profiler Категории для текущей сессии профилирования. |
| GetCategoryInfo | Получает информацию о категории Profiler для данной категории ID. |
| GetCounterValueAsDouble | Получает последнее значение маркера счетчика в кадре в качестве двойного типа данных '. |
| GetCounterValueAsFloat | Получает последнее значение маркера счетчика в кадре в качестве типа данных float'. |
| GetCounterValueAsInt | Получает последнее значение маркера счетчика в кадре в качестве типа данных int'. |
| GetCounterValueAsLong | Получает последнее значение маркера счетчика в кадре в качестве типа данных long. |
| GetCounterValuePtr | Получает небезопасный указатель на последнее значение маркера счетчика в кадре. |
| GetFrameMetaData | Получает метаданные, связанные с кадром. |
| GetFrameMetaDataCount | Получает общее число кусочков метаданных для каждой пары id и тег в кадре. |
| GetGfxResourceInfo | Получает информацию для заданного идентификатора ресурса графики. |
| GetMarkerCategoryIndex | Получает категорию маркера Profiler для определенного идентификатора маркера. |
| GetMarkerFlags | Получает флаги маркера Profiler для определенного идентификатора маркера. |
| GetMarkerId | Получить идентификатор маркеров Profiler для конкретного имени. |
| GetMarkerMetadataInfo | Получает информацию о метаданных маркера Profiler для определенного идентификатора маркера. |
| GetMarkerName | Получает имя маркера Profiler для определенного идентификатора маркера. |
| GetMarkers | Получает все доступные метки для текущего сеанса профилирования. |
| GetSessionMetaData | Получает метаданные сессии, в которой произошел этот кадр, как NativeArray. |
| GetSessionMetaDataCount | Получает общее количество кусочков метаданных для каждой пары id и тега в сессии Profiler. |
| GetUnityObjectInfo | Получает информацию UnityEngine.Object для заданного экземпляра ID. |
| GetUnityObjectNativeTypeInfo | Получает информацию типа Unity. |
| GetUnityObjectNativeTypeInfoCount | Возвращает нативные типы, учитываемые при захвате. |
| HasCounterValue | Возвращает true для маркера, который включает счетчик в активном кадре. |
| ResolveMethodInfo | Возвращает имя метода и сведения о расположении для указанного адреса метода. |