feat(capture): M11 batch capture - one bank sample per selected item / razor area
Pure batch_capture module (plan + mixed-result aggregation, unit-tested); CAPTURE_BATCH_ITEMS/RAZOR actions with transient per-unit selection restored on all paths, per-unit invariants + provenance, single persist. Conform-on-insert already shipped.
This commit is contained in:
+17
-1
@@ -178,6 +178,18 @@ add_library(render_settings STATIC src/render_settings.cpp)
|
||||
target_include_directories(render_settings PUBLIC src)
|
||||
target_link_libraries(render_settings PUBLIC bank_model)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 2f'') Pure batch_capture library — NO REAPER, NO SWELL. The M11 batch-capture
|
||||
# logic: an ordered list of source ranges (one per selected item / per razor
|
||||
# area) -> validated, ordinal-assigned capture units (empty/inverted dropped),
|
||||
# plus order-preserving per-unit result aggregation into a mixed-result summary
|
||||
# line. Split out so the plan/aggregate/summary is unit-tested outside the DAW;
|
||||
# the selection read, transient re-selection, and render loop stay in main.cpp.
|
||||
# No dependency on bank_model — it takes plain ranges/values at its boundary.
|
||||
# ---------------------------------------------------------------------------
|
||||
add_library(batch_capture STATIC src/batch_capture.cpp)
|
||||
target_include_directories(batch_capture PUBLIC src)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 2f') Pure tail_control library — NO REAPER, NO SWELL. The docked bank_panel's
|
||||
# tail-mode toggle logic (T1 exposure): TailSetting state, cycle order
|
||||
@@ -341,6 +353,10 @@ add_executable(render_settings_tests tests/test_render_settings.cpp)
|
||||
target_link_libraries(render_settings_tests PRIVATE render_settings)
|
||||
add_test(NAME render_settings_tests COMMAND render_settings_tests)
|
||||
|
||||
add_executable(batch_capture_tests tests/test_batch_capture.cpp)
|
||||
target_link_libraries(batch_capture_tests PRIVATE batch_capture)
|
||||
add_test(NAME batch_capture_tests COMMAND batch_capture_tests)
|
||||
|
||||
add_executable(tail_control_tests tests/test_tail_control.cpp)
|
||||
target_link_libraries(tail_control_tests PRIVATE tail_control)
|
||||
add_test(NAME tail_control_tests COMMAND tail_control_tests)
|
||||
@@ -417,7 +433,7 @@ add_library(reaper_reasampler MODULE
|
||||
src/bank_book.cpp
|
||||
src/owned_manifest.cpp
|
||||
)
|
||||
target_link_libraries(reaper_reasampler PRIVATE bank_model capture_paths peaks bank_grid mode_switch tab_strip view_mode_model insert_plan render_settings tail_control realtime_record bank_book wav_trim owned_manifest prune_reconcile prune_button app_version provenance)
|
||||
target_link_libraries(reaper_reasampler PRIVATE bank_model capture_paths peaks bank_grid mode_switch tab_strip view_mode_model insert_plan render_settings batch_capture tail_control realtime_record bank_book wav_trim owned_manifest prune_reconcile prune_button app_version provenance)
|
||||
target_include_directories(reaper_reasampler PRIVATE ${SDK_INC} ${WDL_INC})
|
||||
# OUTPUT_NAME is channel-derived (Phase V, V4): "reaper_reasampler" (stable, default) or
|
||||
# "reaper_reasampler_beta" (beta). REAPER dlopen's any reaper_* module, so both channels'
|
||||
|
||||
Reference in New Issue
Block a user