# FrameDataView

> Base funtionality for accessing the Profiler data.

## Definition

* **Type:** Class
* **Namespace:** [UnityEditor.Profiling](/engine/6000.3/script-reference/unityeditor/profiling.md)
* **Assembly:** UnityEditor
* **Implements:** [IDisposable](https://learn.microsoft.com/dotnet/api/system.idisposable)

```csharp
public abstract class FrameDataView : IDisposable
```

## Remarks

Provides base access to the Profiler data for a specific frame and thread.

Additional Resources: [RawFrameDataView](/engine/6000.3/script-reference/unityeditor/profiling/rawframedataview.md), [HierarchyFrameDataView](/engine/6000.3/script-reference/unityeditor/profiling/hierarchyframedataview.md).

## Static Fields

| Value                                                                                                           | Description                                                                        |
| --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| [invalidMarkerId](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/invalidmarkerid.md)       | Identifier of the invalid marker.                                                  |
| [invalidThreadId](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/invalidthreadid.md)       | This constant defines a thread id that does not match any valid thread's id.       |
| [invalidThreadIndex](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/invalidthreadindex.md) | This constant defines a thread index that does not match any valid thread's index. |

## Properties

| Property                                                                                                    | Description                                                                    |
| ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| [frameFps](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/framefps.md)                 | The current frames per second (FPS) for the frame.                             |
| [frameGpuTimeMs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/framegputimems.md)     | The amount of GPU frame time in milliseconds.                                  |
| [frameGpuTimeNs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/framegputimens.md)     | The amount of GPU frame time in nanoseconds.                                   |
| [frameIndex](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/frameindex.md)             | The frame index for the *FrameDataView*.                                       |
| [frameStartTimeMs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/framestarttimems.md) | The start time of CPU frame in milliseconds.                                   |
| [frameStartTimeNs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/framestarttimens.md) | The start time of CPU frame in nanoseconds.                                    |
| [frameTimeMs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/frametimems.md)           | The amount of CPU frame time in milliseconds.                                  |
| [frameTimeNs](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/frametimens.md)           | The amount of CPU frame time in nanoseconds.                                   |
| [maxDepth](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/maxdepth.md)                 | Maximum child samples levels in the thread data.                               |
| [sampleCount](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/samplecount.md)           | The amount of samples in the frame for the thread.                             |
| [threadGroupName](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/threadgroupname.md)   | The name of the group that the thread belongs to.                              |
| [threadId](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/threadid.md)                 | Persistent identifier associated with the thread.                              |
| [threadIndex](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/threadindex.md)           | The index of the thread in the current frame.                                  |
| [threadName](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/threadname.md)             | Name of the thread.                                                            |
| [valid](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/valid.md)                       | True after the frame data for the thread is processed and ready for retrieval. |

## Methods

| Method                                                                                                                                        | Description                                                                                    |
| --------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| [GetAllCategories](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getallcategories.md)                                   | Gets all the available Profiler Categories for the current profiling session.                  |
| [GetCategoryInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcategoryinfo.md)                                     | Gets the Profiler category information for a given category ID.                                |
| [GetCounterValueAsDouble](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcountervalueasdouble.md)                     | Gets the last value of a counter marker in the frame as a double data type'.                   |
| [GetCounterValueAsFloat](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcountervalueasfloat.md)                       | Gets the last value of a counter marker in the frame as a float data type'.                    |
| [GetCounterValueAsInt](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcountervalueasint.md)                           | Gets the last value of a counter marker in the frame as an int data type'.                     |
| [GetCounterValueAsLong](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcountervalueaslong.md)                         | Gets the last value of a counter marker in the frame as a long data type.                      |
| [GetCounterValuePtr](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getcountervalueptr.md)                               | Gets unsafe pointer to the last value of a counter marker in the frame.                        |
| [GetFrameMetaData](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getframemetadata.md)                                   | Retrieves metadata associated with the frame.                                                  |
| [GetFrameMetaDataCount](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getframemetadatacount.md)                         | Gets the total number of metadata chunks for each *id* and *tag* pair in the frame.            |
| [GetGfxResourceInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getgfxresourceinfo.md)                               | Gets information for a given graphics resource identifier.                                     |
| [GetMarkerCategoryIndex](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkercategoryindex.md)                       | Gets Profiler marker category for the specific marker identifier.                              |
| [GetMarkerFlags](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkerflags.md)                                       | Gets Profiler marker flags for the specific marker identifier.                                 |
| [GetMarkerId](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkerid.md)                                             | Get Profiler marker identifier for a specific name.                                            |
| [GetMarkerMetadataInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkermetadatainfo.md)                         | Gets Profiler marker metadata information for the specific marker identifier.                  |
| [GetMarkerName](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkername.md)                                         | Gets Profiler marker name for the specific marker identifier.                                  |
| [GetMarkers](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getmarkers.md)                                               | Gets all available markers for the current profiling session.                                  |
| [GetSessionMetaData](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getsessionmetadata.md)                               | Retrieves the metadata of the session this frame occurred in as a NativeArray.                 |
| [GetSessionMetaDataCount](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getsessionmetadatacount.md)                     | Gets the total number of metadata chunks for each *id* and *tag* pair in the Profiler session. |
| [GetUnityObjectInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getunityobjectinfo.md)                               | Gets the UnityEngine.Object information for a given Instance ID.                               |
| [GetUnityObjectNativeTypeInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getunityobjectnativetypeinfo.md)           | Gets native Unity type intormation.                                                            |
| [GetUnityObjectNativeTypeInfoCount](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/getunityobjectnativetypeinfocount.md) | Returns native types count in the capture.                                                     |
| [HasCounterValue](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/hascountervalue.md)                                     | Returns true for a marker that includes a counter in the active frame.                         |
| [ResolveMethodInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/resolvemethodinfo.md)                                 | Returns method name and location information for the specified method address.                 |

## Structs

| Struct                                                                                                                                      | Description                                                    |
| ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| [FrameDataView.GfxResourceInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/gfxresourceinfo.md)                     | Provides methods for retrieving graphics resource information. |
| [FrameDataView.MarkerInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/markerinfo.md)                               | Marker descriptor structure.                                   |
| [FrameDataView.MarkerMetadataInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/markermetadatainfo.md)               | Marker metadata descriptor.                                    |
| [FrameDataView.MethodInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/methodinfo.md)                               | Managed method descriptor structure.                           |
| [FrameDataView.UnityObjectInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/unityobjectinfo.md)                     | Unity Object information.                                      |
| [FrameDataView.UnityObjectNativeTypeInfo](/engine/6000.3/script-reference/unityeditor/profiling/framedataview/unityobjectnativetypeinfo.md) | Unity native type information.                                 |
