diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-17 08:46:01 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-17 08:46:01 +0100 |
| commit | 7041babc9e5333d01191f3eb80fd711bd26cd4f7 (patch) | |
| tree | ef2dcaa72e36de5e2300c96cf1b731db5021b1a6 /src/tests/gpu/test_demo_effects.cc | |
| parent | 9876148b3b6dcd4604fac5518d11f097069e8cfa (diff) | |
feat: add time-based effect activation with auto-passthrough
Effects now accept start/end time parameters and automatically passthrough
when inactive. Implements buffer chain integrity via compile-time validation.
- Effect base class: dispatch_render() checks time bounds, auto-passthroughs
1:1 input/output effects outside [start, end] interval
- seq_compiler.py: validates producer/consumer lifespan constraints for
multi-output effects, adds --validate flag, always validates before codegen
- Updated all 9 effect classes and test fixtures to pass start/end times
- check_all.sh: includes timeline validation step
- Tests: 34/34 passing, demo runs successfully
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'src/tests/gpu/test_demo_effects.cc')
| -rw-r--r-- | src/tests/gpu/test_demo_effects.cc | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/tests/gpu/test_demo_effects.cc b/src/tests/gpu/test_demo_effects.cc index 7f9d3da..f193c76 100644 --- a/src/tests/gpu/test_demo_effects.cc +++ b/src/tests/gpu/test_demo_effects.cc @@ -39,31 +39,31 @@ static void test_effects() { std::vector<std::pair<const char*, std::shared_ptr<Effect>>> effects = { {"Passthrough", std::make_shared<Passthrough>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"GaussianBlur", std::make_shared<GaussianBlur>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"Placeholder", std::make_shared<Placeholder>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"Heptagon", std::make_shared<Heptagon>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"Particles", std::make_shared<Particles>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"RotatingCube", std::make_shared<RotatingCube>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"Hybrid3D", std::make_shared<Hybrid3D>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"Flash", std::make_shared<Flash>(fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, {"PeakMeter", std::make_shared<PeakMeter>( fixture.ctx(), std::vector<std::string>{"source"}, - std::vector<std::string>{"sink"})}, + std::vector<std::string>{"sink"}, 0.0f, 1000.0f)}, }; int passed = 0; |
