Kelsidavis-WoWee/tools/editor/cli_zone_inventory.hpp
Kelsi c0f2ab7515 refactor(editor): extract per-zone inventory into cli_zone_inventory.cpp
Continues the modularization. Moves the four per-zone inventory
handlers into their own file:

  --list-zone-meshes    (WOM stats)
  --list-zone-audio     (WAV header parse)
  --list-zone-textures  (texture-ref histogram)
  --info-zone-summary   (BOOTSTRAPPED/PARTIAL/EMPTY status)

Each consumes a trailing --json flag the same way; consolidated
that check into a consumeJsonFlag helper at the top.

main.cpp drops 27,445 → 27,200 lines (-245). Per-zone inventory
behavior unchanged (re-verified all 4 commands).

A pre-existing duplicate --list-zone-meshes handler (the older
detailed per-mesh listing, similar to the --list-project-meshes
collision fixed in 976549fe) is now dead code in the in-line
chain since the extracted module dispatches first. Will rename
or remove that duplicate in a follow-up cleanup.
2026-05-08 18:24:01 -07:00

18 lines
561 B
C++

#pragma once
namespace wowee {
namespace editor {
namespace cli {
// Dispatch the four per-zone inventory handlers:
// --list-zone-meshes (WOMs with vert/tri/bone/anim/batch counts)
// --list-zone-audio (WAVs with sample-rate/duration)
// --list-zone-textures (texture refs across every WOM)
// --info-zone-summary (one-glance BOOTSTRAPPED/PARTIAL/EMPTY)
//
// Returns true if matched; outRc holds the exit code.
bool handleZoneInventory(int& i, int argc, char** argv, int& outRc);
} // namespace cli
} // namespace editor
} // namespace wowee