Skip to the content.

Output Path Routing

When you choose an output path that contains a Public or Private segment anywhere after a Source segment, the .h and .cpp are written to separate branches automatically — .h goes to Public, .cpp goes to Private — regardless of which branch you actually picked.

When no Public/Private structure is detected, both files land in the same directory.

Examples

Input path                                   → .h destination              .cpp destination
─────────────────────────────────────────────────────────────────────────────────────────────
.../Source/MyModule/Private/Systems/Design   → MyModule/Public/Systems/Design   MyModule/Private/Systems/Design
.../Source/MyModule/Public/Systems/Design    → MyModule/Public/Systems/Design   MyModule/Private/Systems/Design
.../Source/MyModule/Private                  → MyModule/Public                  MyModule/Private
.../Plugins/Combat/Source/Combat/Private/AI  → Combat/Public/AI                 Combat/Private/AI
.../Source/MyModule/Shared                   → MyModule/Shared                  MyModule/Shared   (no split)

Only the portion of the path after the first Source segment is examined, so a project or plugin folder named Public or Private above Source has no effect.

Struct Files

Structs only generate a .h file — the routing logic still applies for placing it in the correct Public branch, but no .cpp is created.