# Class index — Unreal SDK

Every public type in the **`AR51SDK`** Runtime module, grouped by area and alphabetical within each group. This is the reference; for step-by-step usage see the How-to guides.

:::note[Prototype]
[`USkeletonConsumer`](/docs/sdk-api/unreal-api/classes/skeletonconsumer) is the first type migrated to the new **one-page-per-class** template (declaration → members summary → detail → see also). The remaining links below still point to the current area pages and will move to their own pages in the rollout.
:::

## Connection & services

| Type | Kind | |
|---|---|---|
| [`AAR51SDK`](/docs/sdk-api/unreal-api/classes/aar51sdk) | `AActor` | connection entry-point / root actor |
| [`UAnchorServiceComponent`](/docs/sdk-api/unreal-api/classes/uanchorservicecomponent) | `UActorComponent` | anchors, boundary, AR 51 ↔ world conversion |
| [`UHandSkeletonServiceComponent`](/docs/sdk-api/unreal-api/classes/service-components#uhandskeletonservicecomponent) | `UActorComponent` | hand-stream service |
| [`UEngineServiceComponent`](/docs/sdk-api/unreal-api/classes/service-components#uengineservicecomponent) | `UActorComponent` | remote scene-control endpoint |
| [Pure service endpoints](/docs/sdk-api/unreal-api/classes/service-components#pure-service-endpoints) | `UActorComponent` | `UCameraServiceComponent`, `UDrawServiceComponent`, `UGameServiceComponent`, `URenderServiceComponent` |

## Skeletons & characters

| Type | Kind | |
|---|---|---|
| [`AAR51CharacterActor`](/docs/sdk-api/unreal-api/classes/aar51characteractor) | `AActor` | ready-to-use character actor |
| [`BoneTransform`](/docs/sdk-api/unreal-api/classes/bonetransform) | C++ class | bone handle with bind-pose cache (+ `TTransform`) |
| [`IPersonBase`](/docs/sdk-api/unreal-api/classes/ipersonbase) | `UINTERFACE` | one tracked person |
| [`Keypoints`](/docs/sdk-api/unreal-api/classes/skeletondata#keypoints) | `enum class` | canonical joint index scheme |
| [`SkeletonData`](/docs/sdk-api/unreal-api/classes/skeletondata) | C++ class | one frame of joint data |
| [`UAR51Character`](/docs/sdk-api/unreal-api/classes/uar51character) | `UPoseableMeshComponent` | the mocap-driven mesh |
| [`UAR51FootBoundsComponent`](/docs/sdk-api/unreal-api/classes/uar51footboundscomponent) | `UBoxComponent` | sole-contact box |
| [`UAR51SkeletonMapping`](/docs/sdk-api/unreal-api/classes/uar51skeletonmapping) | `UDataAsset` | bone-mapping asset |
| [**`USkeletonConsumer`**](/docs/sdk-api/unreal-api/classes/skeletonconsumer) | `UActorComponent` | **the central entry point** |

## Object detection

| Type | Kind | |
|---|---|---|
| [`UObjectDetectionConsumer`](/docs/sdk-api/unreal-api/classes/uobjectdetectionconsumer) | `UActorComponent` | spawns/updates tracked actors (+ `FMarkerItem`) |
| [`UTrackedInstance`](/docs/sdk-api/unreal-api/classes/utrackedinstance) | `UActorComponent` | per-detection data record (+ `EInstanceType`) |

## Hands, boundary & anchors

| Type | Kind | |
|---|---|---|
| [`Adapters`](/docs/sdk-api/unreal-api/classes/adapters) | interfaces + factories | `IHandsAdapter`, `IBoundaryAdapter`, `AdapterFactory`, `HandsAdapterFactory`, `BoundaryAdapterFactory` |
| [`Anchor components`](/docs/sdk-api/unreal-api/classes/anchor-components) | `USceneComponent` / `UActorComponent` | `UCameraAnchorComponent`, `UWorldAnchorConstraintComponent` |
| [`HandJointInfo`](/docs/sdk-api/unreal-api/classes/handjointinfo) | struct | one hand-joint pose (+ `EHandJointType`, `EHandType`, `HandJointTypeHelper`) |

## Utilities

| Type | Kind | |
|---|---|---|
| [`UNetworkUtils`](/docs/sdk-api/unreal-api/classes/unetworkutils) | `UObject` | local IP / free-port helpers |
| [`UnrealThread`](/docs/sdk-api/unreal-api/classes/unrealthread) | C++ class | game-thread dispatcher |
| [`ISingleton<T>`](/docs/sdk-api/unreal-api/utilities-platform#isingletont) | template | GC-aware singleton base |

## Enums & data structs

Clustered with their owning area (small POD types don't get their own page):

| Type | Where |
|---|---|
| `EPlatformTypes` | [Utilities & platform](/docs/sdk-api/unreal-api/utilities-platform#eplatformtypes) |
| `EHandJointType`, `EHandType` | [`HandJointInfo`](/docs/sdk-api/unreal-api/classes/handjointinfo) |
| `EInstanceType` | [`UTrackedInstance`](/docs/sdk-api/unreal-api/classes/utrackedinstance) |
| `FMarkerItem` | [`UObjectDetectionConsumer`](/docs/sdk-api/unreal-api/classes/uobjectdetectionconsumer) |
| `Keypoints` | [`SkeletonData`](/docs/sdk-api/unreal-api/classes/skeletondata#keypoints) |
| `FBoneWeight` | [Skeletons & characters](/docs/sdk-api/unreal-api/skeletons-and-characters#fboneweight) |
| `EPredictionModel`, `FPredictionSettings`, `FLinearPredictionTuning`, `FKalmanPredictionTuning` | [Prediction](/docs/sdk-api/unreal-api/skeletons-and-characters#prediction) |
| `FSolverParams`, `EAutoCharacterAssignmentMode`, `EAutoScaleFilterType`, `EActivePersonCameraSpace`, `EAutoScaleType` | [IK solver & auto-scale](/docs/sdk-api/unreal-api/skeletons-and-characters#ik-solver--auto-scale-settings) |
