# Transformer reference

This section documents the V-SwiFT transformer classes that variants use to change live part behavior or generate saved override data.

## Transformer contract

All transformer classes implement `ITransformer` and expose the same core surface:

* `ApplyCommon(Module_PartSwitch)`
* `ApplyInOab(Module_PartSwitch)`
* `ApplyInFlight(Module_PartSwitch)`
* `Reverter`
* `SavesInformation`
* `VisualizesInformation`

## How to think about the phases

* `ApplyCommon` changes the live part object in both OAB and flight contexts.
* `ApplyInOab` applies changes that only make sense in the editor state.
* `ApplyInFlight` is reserved for flight-time behavior, though many current transformers leave it empty.

## Saved-information transformers

Some transformers do not mutate the live OAB part directly. Instead they emit saved override data through `SaveInformation()`, and that data is later replayed into generated `PartCore` data by V-SwiFT persistence hooks.

## Visualized transformers

Transformers with `VisualizesInformation = true` are intended to contribute information blocks to the V-SwiFT popout UI. In the current codebase, some transformers set this flag but do not yet provide a custom visualizer method, so treat the runtime UI support as implementation-specific rather than guaranteed.

## Reference groups

[Attach Node Transformers](/doc/5462acb9-2fb5-45dc-975e-eff62e6410e6) 

[Engine Transformers](/doc/bad67290-d45b-4c47-b065-c1ad6d88b717) 

[Mass and Scalar Transformers](/doc/e96d27a7-b18a-4a2d-8c10-c5751d47b126) 

[Resource Transformers](/doc/b8c23119-ae7f-4cf8-a51a-8eda272e3f32) 

[Visual and Module Transformers](/doc/cf106b6c-fc01-4e73-a149-20f76c5ec3de)

---

**Documents**

- [Visual and Module Transformers](https://docs.ksp2redux.org/s/0a4a3e31-0b40-48e0-bd81-e14856f80d3d/doc/visual-and-module-transformers-cVxQ6dTQEq)
- [Resource Transformers](https://docs.ksp2redux.org/s/0a4a3e31-0b40-48e0-bd81-e14856f80d3d/doc/resource-transformers-aWB5nUewVP)
- [Mass and Scalar Transformers](https://docs.ksp2redux.org/s/0a4a3e31-0b40-48e0-bd81-e14856f80d3d/doc/mass-and-scalar-transformers-5a7RaD2V1c)
- [Engine Transformers](https://docs.ksp2redux.org/s/0a4a3e31-0b40-48e0-bd81-e14856f80d3d/doc/engine-transformers-vrJMXbrBgD)
- [Attach Node Transformers](https://docs.ksp2redux.org/s/0a4a3e31-0b40-48e0-bd81-e14856f80d3d/doc/attach-node-transformers-3lJKdsOQFy)