# TypeManager.SystemAttributeKind

> Options for the kinds of attributes that can be added to systems. These dictate the execution order of their OnCreate and OnUpdate functions.

## Definition

* **Type:** Enum
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule

```csharp
public enum TypeManager.SystemAttributeKind
```

## Fields

| Value                                                                                                                                                | Description                                                                                |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [CreateAfter](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/createafter.md)                                         | Specifies that the system should be created after another system.                          |
| [CreateBefore](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/createbefore.md)                                       | Specifies that the system should be created before another system.                         |
| [DisableAutoCreation](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/disableautocreation.md)                         | Disables automatic creation of the system.                                                 |
| [RequireMatchingQueriesForUpdate](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/requirematchingqueriesforupdate.md) | Ensures that the system doesn't call OnUpdate if every EntityQuery in the system is empty. |
| [UpdateAfter](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/updateafter.md)                                         | Specifies that the system should update after another system.                              |
| [UpdateBefore](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/updatebefore.md)                                       | Specifies that the system should update before another system.                             |
| [UpdateInGroup](/engine/7000.0/script-reference/unity/entities/typemanager/systemattributekind/updateingroup.md)                                     | Specifies that the system belongs to a specific system group.                              |
