| .. | ||
| editing.c | ||
| history.c | ||
| project.c | ||
| project_internal.h | ||
| README.md | ||
| sections.c | ||
Project model
project.c owns the opaque C project: graph, bounded tracks, silent/audio arrangement regions and external asset references, tempo and stable ID allocation. The GUI borrows handles and edits through xtc_project.h. Tick/sample conversion and source-preserving trim validation live here; no FLTK, file I/O or callback scheduling belongs in this module.
Phase 8 adds track mix settings, bounded automation and 32-edit C snapshot history in history.c. Checkout/accept separates candidate installation from history cursor movement; allocation IDs stay monotonic across history branches. See ../../docs/MIXER.md.