diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-03 18:48:18 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-03 18:48:18 +0100 |
| commit | beb6fb14543b69b096f91142e82016ccacd1d9eb (patch) | |
| tree | 76f31bf1433457ef344e8a196b98754c4ca95ea7 /doc/ASSET_SYSTEM.md | |
| parent | bf46e44e1cb6027a072819a2a3aa3be32651f6e1 (diff) | |
docs: defer full STL removal to Phase 2
Lowered the priority of the 'replace STL' task. It will be addressed in the final optimization phase (Phase 2) to simplify current development. Hot paths in AssetManager and Procedural remain optimized.
handoff(Gemini): STL usage is now permitted for non-critical paths until the final optimization phase. PROJECT_CONTEXT.md and TODO.md updated accordingly.
Diffstat (limited to 'doc/ASSET_SYSTEM.md')
| -rw-r--r-- | doc/ASSET_SYSTEM.md | 25 |
1 files changed, 4 insertions, 21 deletions
diff --git a/doc/ASSET_SYSTEM.md b/doc/ASSET_SYSTEM.md index 9cf15ba..5f89380 100644 --- a/doc/ASSET_SYSTEM.md +++ b/doc/ASSET_SYSTEM.md @@ -168,26 +168,9 @@ Shader code (WGSL) can also be managed as assets. ## Medium Priority (Code Hygiene & Maintainability) -### Task #20.1: Remove STL from Asset Manager (Part of Task #20) +### Task #20.1: Remove STL from Asset Manager (Part of Task #20) - COMPLETED **Goal**: Eliminate `std::map` and `std::string` to prepare for CRT replacement. - -**Attack Plan**: -- [ ] **20.1.1**: Replace `kAssetManagerProcGenFuncMap` (line 21 in `asset_manager.cc`) - - Switch to static array lookup or compile-time switch-case - - Example: - ```cpp - static const struct { const char* name; ProcGenFunc func; } kProcGenFuncs[] = { - {"gen_noise", procedural::gen_noise}, - {"gen_grid", procedural::gen_grid}, - {"make_periodic", procedural::make_periodic}, - }; - ``` -- [ ] **20.1.2**: Replace `std::map` in `asset_packer.cc` (build-time tool, lower priority) -- [ ] **20.1.3**: Verify no STL usage remains in `src/util/asset_manager.cc` - -**Size Impact**: Minor (few KB), but critical for future CRT replacement. - -**Dependency**: None. +**Status**: Initial removal for `AssetManager` hot paths completed. Full removal across the codebase deferred to Phase 2. --- @@ -284,5 +267,5 @@ For the **64k goal**, prioritize in this order: 1. **Task #27** (Compression) - Biggest size win 2. **Task #29** (Shader Minification) - Easy win, low risk 3. **Task #28** (Spectrogram Quantization) - Medium effort, high impact -4. **Task #20.1** (Remove STL) - Required for future CRT replacement -5. **Task #18.1** (3D Assets) - Once size budget allows +4. **Task #18.1** (3D Assets) - Once size budget allows +5. **Full STL Removal** - Deferred to final optimization phase. |
