# ObjectChangeEventStream

> Represents a stream of events that describes the changes applied to objects in memory over the course of a frame.

## Definition

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

```csharp
public struct ObjectChangeEventStream : IDisposable
```

## Properties

| Property                                                                                      | Description                                                                                                                                             |
| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [isCreated](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/iscreated.md) | Indicates whether the [ObjectChangeEventStream](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream.md) has an allocated memory buffer. |
| [length](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/length.md)       | The number of events in the stream.                                                                                                                     |

## Methods

| Method                                                                                                                                                                | Description                                                                                                                                                                                                                                                                                |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Clone](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/clone.md)                                                                                 | Creates a copy of this stream with the specified allocator.                                                                                                                                                                                                                                |
| [Dispose](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/dispose.md)                                                                             | Releases the memory associated with this stream.                                                                                                                                                                                                                                           |
| [GetChangeAssetObjectPropertiesEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangeassetobjectpropertiesevent.md)                     | Retrieves the event data at the given index as a [ChangeAssetObjectPropertiesEventArgs](/engine/6000.0/script-reference/unityeditor/changeassetobjectpropertieseventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.               |
| [GetChangeChildrenOrderEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangechildrenorderevent.md)                                     | Retrieves the event data at the given index as a [ChangeChildrenOrderEventArgs](/engine/6000.0/script-reference/unityeditor/changechildrenordereventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                               |
| [GetChangeGameObjectOrComponentPropertiesEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangegameobjectorcomponentpropertiesevent.md) | Retrieves the event data at the given index as a [ChangeAssetObjectPropertiesEventArgs](/engine/6000.0/script-reference/unityeditor/changeassetobjectpropertieseventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.               |
| [GetChangeGameObjectParentEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangegameobjectparentevent.md)                               | Retrieves the event data at the given index as a [ChangeGameObjectParentEventArgs](/engine/6000.0/script-reference/unityeditor/changegameobjectparenteventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                         |
| [GetChangeGameObjectStructureEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangegameobjectstructureevent.md)                         | Retrieves the event data at the given index as a [ChangeGameObjectStructureEventArgs](/engine/6000.0/script-reference/unityeditor/changegameobjectstructureeventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                   |
| [GetChangeGameObjectStructureHierarchyEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangegameobjectstructurehierarchyevent.md)       | Retrieves the event data at the given index as a [ChangeGameObjectStructureHierarchyEventArgs](/engine/6000.0/script-reference/unityeditor/changegameobjectstructurehierarchyeventargs.md). Throws an exception if the event type requested does not match the event stored in the stream. |
| [GetChangeRootOrderEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangerootorderevent.md)                                             | Retrieves the event data at the given index as a [ChangeRootOrderEventArgs](/engine/6000.0/script-reference/unityeditor/changerootordereventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                                       |
| [GetChangeSceneEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getchangesceneevent.md)                                                     | Retrieves the event data at the given index as a [ChangeSceneEventArgs](/engine/6000.0/script-reference/unityeditor/changesceneeventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                                               |
| [GetCreateAssetObjectEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getcreateassetobjectevent.md)                                         | Retrieves the event data at the given index as a [CreateAssetObjectEventArgs](/engine/6000.0/script-reference/unityeditor/createassetobjecteventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                                   |
| [GetCreateGameObjectHierarchyEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getcreategameobjecthierarchyevent.md)                         | Retrieves the event data at the given index as a [CreateGameObjectHierarchyEventArgs](/engine/6000.0/script-reference/unityeditor/creategameobjecthierarchyeventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                   |
| [GetDestroyAssetObjectEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getdestroyassetobjectevent.md)                                       | Retrieves the event data at the given index as a [DestroyAssetObjectEventArgs](/engine/6000.0/script-reference/unityeditor/destroyassetobjecteventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                                 |
| [GetDestroyGameObjectHierarchyEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getdestroygameobjecthierarchyevent.md)                       | Retrieves the event data at the given index as a [DestroyGameObjectHierarchyEventArgs](/engine/6000.0/script-reference/unityeditor/destroygameobjecthierarchyeventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                 |
| [GetEventType](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/geteventtype.md)                                                                   | Returns the type of the event at the specified index.                                                                                                                                                                                                                                      |
| [GetUpdatePrefabInstancesEvent](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/getupdateprefabinstancesevent.md)                                 | Retrieves the event data at the given index as a [UpdatePrefabInstancesEventArgs](/engine/6000.0/script-reference/unityeditor/updateprefabinstanceseventargs.md). Throws an exception if the event type requested does not match the event stored in the stream.                           |

## Structs

| Struct                                                                                                            | Description                                                                                                                                   |
| ----------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| [ObjectChangeEventStream.Builder](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream/builder.md) | Provides a way to construct an instance of [ObjectChangeEventStream](/engine/6000.0/script-reference/unityeditor/objectchangeeventstream.md). |
