refactor(editor): move 2 more mesh-info handlers into cli_mesh_info.cpp

Adds --info-mesh-storage-budget and --info-project-models-total
to the existing cli_mesh_info module so all 5 mesh-aggregate
info handlers live together. The first computes per-category
byte breakdowns for a single WOM (positions / normals / UVs /
indices / bones / animations); the second walks every zone in
a project for an aggregate WOM/WOB rollup with per-zone rows.

main.cpp shrinks by 250 lines (1,437 to 1,187). All five
handlers preserve --json output for capacity-planning pipelines.
This commit is contained in:
Kelsi 2026-05-09 09:49:39 -07:00
parent b1f6563c0a
commit 25660a0d8b
3 changed files with 268 additions and 255 deletions

View file

@ -7,11 +7,13 @@ namespace cli {
// Dispatch the mesh-aggregate info handlers — surface
// vertex/triangle/bone/animation totals across WOM/WOB
// files, plus per-mesh detail views.
// --info-zone-models-total aggregate WOM/WOB across a zone
// --list-zone-meshes-detail per-mesh table sorted by tris
// --info-mesh single-WOM detail dump
// --info-zone-models-total aggregate WOM/WOB across a zone
// --list-zone-meshes-detail per-mesh table sorted by tris
// --info-mesh single-WOM detail dump
// --info-mesh-storage-budget per-category byte breakdown of a WOM
// --info-project-models-total aggregate across every zone in a project
//
// All three support --json output.
// All five support --json output.
//
// Returns true if matched; outRc holds the exit code.
bool handleMeshInfo(int& i, int argc, char** argv, int& outRc);