> For the complete documentation index, see [llms.txt](https://dante-3.gitbook.io/dante-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dante-3.gitbook.io/dante-docs/indicator-system-plugin/indicator-setup-action/execution-model.md).

# Execution Model

```
UIndicatorSetupConfig
  └─ TArray<UIndicatorSetupActions*> Configs
       ├─ UIndicatorAction_IndicatorClass
       ├─ UIndicatorAction_ProjectionMode
       ├─ UIndicatorAction_ClampToScreen
       └─ ... (any order)
```

At `BeginPlay`, `UIndicatorManagerComponent` creates a `UIndicatorDescriptor` (with default values), then calls `OnIndicatorSetupActivated` on each action in order. Each action writes specific properties onto the descriptor.

When the component is destroyed (or manually removed), `OnIndicatorSetupDeactivated` is called on each action in reverse order — useful for cleanup or unregistering delegates.
