| 1343 | } |
| 1344 | |
| 1345 | v3_result setupProcessing(v3_process_setup* const setup) |
| 1346 | { |
| 1347 | DISTRHO_SAFE_ASSERT_RETURN(setup->symbolic_sample_size == V3_SAMPLE_32, V3_INVALID_ARG); |
| 1348 | |
| 1349 | const bool active = fPlugin.isActive(); |
| 1350 | fPlugin.deactivateIfNeeded(); |
| 1351 | |
| 1352 | // TODO process_mode can be V3_REALTIME, V3_PREFETCH, V3_OFFLINE |
| 1353 | |
| 1354 | fPlugin.setSampleRate(setup->sample_rate, true); |
| 1355 | fPlugin.setBufferSize(setup->max_block_size, true); |
| 1356 | |
| 1357 | #if DPF_VST3_USES_SEPARATE_CONTROLLER |
| 1358 | fCachedParameterValues[kVst3InternalParameterBufferSize] = setup->max_block_size; |
| 1359 | fParameterValuesChangedDuringProcessing[kVst3InternalParameterBufferSize] = true; |
| 1360 | |
| 1361 | fCachedParameterValues[kVst3InternalParameterSampleRate] = setup->sample_rate; |
| 1362 | fParameterValuesChangedDuringProcessing[kVst3InternalParameterSampleRate] = true; |
| 1363 | #if DISTRHO_PLUGIN_HAS_UI |
| 1364 | fParameterValueChangesForUI[kVst3InternalParameterSampleRate] = true; |
| 1365 | #endif |
| 1366 | #endif |
| 1367 | |
| 1368 | if (active) |
| 1369 | fPlugin.activate(); |
| 1370 | |
| 1371 | delete[] fDummyAudioBuffer; |
| 1372 | fDummyAudioBuffer = new float[setup->max_block_size]; |
| 1373 | |
| 1374 | return V3_OK; |
| 1375 | } |
| 1376 | |
| 1377 | v3_result setProcessing(const bool processing) |
| 1378 | { |
nothing calls this directly
no test coverage detected