# WorldUnmanaged

> A pointer-to-implementation for the unmanaged representation of a World.

## Definition

* **Type:** Struct
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule
* **Implements:** [IEquatable\<WorldUnmanaged>](https://learn.microsoft.com/dotnet/api/system.iequatable-1), [IComparable\<WorldUnmanaged>](https://learn.microsoft.com/dotnet/api/system.icomparable-1)

```csharp
public struct WorldUnmanaged : IEquatable<WorldUnmanaged>, IComparable<WorldUnmanaged>
```

## Remarks

This is intended to stay small (8 bytes without collections checks, 32 bytes with padding with collections checks), because it is intended to be cheaply passed around by value.

## Properties

| Property                                                                                              | Description                                                                                                         |
| ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| [EntityManager](/engine/7000.0/script-reference/unity/entities/worldunmanaged/entitymanager.md)       | An interface to manipulate the World's entity data from the main thread                                             |
| [Flags](/engine/7000.0/script-reference/unity/entities/worldunmanaged/flags.md)                       | The [WorldFlags](/engine/7000.0/script-reference/unity/entities/worldflags.md) settings for this World              |
| [IsCreated](/engine/7000.0/script-reference/unity/entities/worldunmanaged/iscreated.md)               | Has this World been successfully initialized?                                                                       |
| [MaximumDeltaTime](/engine/7000.0/script-reference/unity/entities/worldunmanaged/maximumdeltatime.md) | The maximum single-frame delta time permitted in this world.                                                        |
| [Name](/engine/7000.0/script-reference/unity/entities/worldunmanaged/name.md)                         | The name of the World                                                                                               |
| [SequenceNumber](/engine/7000.0/script-reference/unity/entities/worldunmanaged/sequencenumber.md)     | The World's current sequence number                                                                                 |
| [Time](/engine/7000.0/script-reference/unity/entities/worldunmanaged/time.md)                         | The world's simulated time, include elapsed time since World creation and the delta time since the previous update. |
| [UpdateAllocator](/engine/7000.0/script-reference/unity/entities/worldunmanaged/updateallocator.md)   | Rewindable allocator instance for this World.                                                                       |
| [Version](/engine/7000.0/script-reference/unity/entities/worldunmanaged/version.md)                   | The World's current version number                                                                                  |

## Methods

| Method                                                                                                                    | Description                                                                                                                                            |
| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [CompareTo](/engine/7000.0/script-reference/unity/entities/worldunmanaged/compareto.md)                                   | Compares this world with another by sequence number, then by version.                                                                                  |
| [GetAllSystems](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getallsystems.md)                           | Retrieve an array of all systems in this world, both unmanaged and managed                                                                             |
| [GetAllUnmanagedSystems](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getallunmanagedsystems.md)         | Retrieve an array of all unmanaged systems in this world                                                                                               |
| [GetExistingSystemState](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getexistingsystemstate.md)         | Return the system state for an existing instance of a system of type `T` in this World.                                                                |
| [GetExistingUnmanagedSystem](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getexistingunmanagedsystem.md) | Return an existing instance of a system of type `type` in this World. Prefer the version that takes a SystemTypeIndex to avoid unnecessary reflection. |
| [GetSystemTypeIndex](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getsystemtypeindex.md)                 | Gets the SystemTypeIndex for the specified SystemHandle.                                                                                               |
| [GetUnsafeSystemRef](/engine/7000.0/script-reference/unity/entities/worldunmanaged/getunsafesystemref.md)                 | Resolves the system handle to a reference to its underlying system instantiation.                                                                      |
| [IsSystemValid](/engine/7000.0/script-reference/unity/entities/worldunmanaged/issystemvalid.md)                           | Checks whether a system identified by its system handle exists and is in a valid state                                                                 |
| [ResetUpdateAllocator](/engine/7000.0/script-reference/unity/entities/worldunmanaged/resetupdateallocator.md)             | Manually update the double update allocators.  This switches to the other allocator and rewinds the newly switched allocator.                          |
| [ResolveSystemStateRef](/engine/7000.0/script-reference/unity/entities/worldunmanaged/resolvesystemstateref.md)           | Resolves the system handle to a reference to its underlying system state.                                                                              |

## Operators

| Operator                                                                                      | Description                                       |
| --------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| [operator ==](/engine/7000.0/script-reference/unity/entities/worldunmanaged/op-equality.md)   | Whether two references point to the same world.   |
| [operator !=](/engine/7000.0/script-reference/unity/entities/worldunmanaged/op-inequality.md) | Whether two references point to different worlds. |
