| 610 | |
| 611 | |
| 612 | void Engine::setSampleRate(float sampleRate) { |
| 613 | if (sampleRate == internal->sampleRate) |
| 614 | return; |
| 615 | std::lock_guard<SharedMutex> lock(internal->mutex); |
| 616 | |
| 617 | internal->sampleRate = sampleRate; |
| 618 | internal->sampleTime = 1.f / sampleRate; |
| 619 | // Dispatch SampleRateChangeEvent |
| 620 | Module::SampleRateChangeEvent e; |
| 621 | e.sampleRate = internal->sampleRate; |
| 622 | e.sampleTime = internal->sampleTime; |
| 623 | for (Module* module : internal->modules) { |
| 624 | module->onSampleRateChange(e); |
| 625 | } |
| 626 | for (TerminalModule* terminalModule : internal->terminalModules) { |
| 627 | terminalModule->onSampleRateChange(e); |
| 628 | } |
| 629 | } |
| 630 | |
| 631 | |
| 632 | void Engine::setSuggestedSampleRate(float suggestedSampleRate) { |
no test coverage detected