Bake window: derived note lengths carry exact durations, not ladder rungs — a long take is no longer cut at 384 beats
Hold keeps its picker. Also: one home for the %-fold, duration-ordered Hold travel, and a corrupt tail degrades to absent rather than fabricating one.
This commit is contained in:
@@ -24,9 +24,11 @@ constexpr const wchar_t* kChildClassName = L"ReaSampler9000VstEditor";
|
||||
|
||||
// The change-detection poll (WM_TIMER on the child window). A low-frequency UI-thread
|
||||
// timer: responsive enough that a recapture/ingest/assign refreshes within a bounded
|
||||
// cadence, yet cheap — three small ext-state reads per tick, coalescing many bumps
|
||||
// between ticks into one reload. 500 ms is a deliberate build-time residual. The id is a
|
||||
// per-window SetTimer id (any nonzero).
|
||||
// cadence, yet cheap — three small ext-state reads per tick in the steady state, coalescing
|
||||
// many bumps between ticks into one reload. Anything costlier a tick answers (the bake-Hold
|
||||
// predicate's bank parse) is memoized against its inputs, so keep it that way rather than
|
||||
// letting a per-tick full read back in. 500 ms is a deliberate build-time residual. The id is
|
||||
// a per-window SetTimer id (any nonzero).
|
||||
constexpr UINT_PTR kSyncTimerId = 1;
|
||||
constexpr UINT kSyncTimerIntervalMs = 500;
|
||||
} // namespace
|
||||
|
||||
Reference in New Issue
Block a user