From 59d70a37ca7a6c1601f437f7a9f99d77399c8d7d Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 25 Jul 2012 23:13:09 +0000 Subject: Remove unnecessary NodeImpl::_srate field. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4552 a436a847-0d15-0410-975c-d299462d15a1 --- src/server/LV2Node.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/server/LV2Node.cpp') diff --git a/src/server/LV2Node.cpp b/src/server/LV2Node.cpp index 23e64df6..3d1e4a52 100644 --- a/src/server/LV2Node.cpp +++ b/src/server/LV2Node.cpp @@ -31,6 +31,7 @@ #include "ingen/shared/URIs.hpp" #include "AudioBuffer.hpp" +#include "Driver.hpp" #include "Engine.hpp" #include "InputPort.hpp" #include "LV2Node.hpp" @@ -68,10 +69,13 @@ LV2Node::~LV2Node() } SharedPtr -LV2Node::make_instance(Shared::URIs& uris, uint32_t voice, bool preparing) +LV2Node::make_instance(Shared::URIs& uris, + SampleRate rate, + uint32_t voice, + bool preparing) { LilvInstance* inst = lilv_plugin_instantiate( - _lv2_plugin->lilv_plugin(), _srate, _features->array()); + _lv2_plugin->lilv_plugin(), rate, _features->array()); if (!inst) { Raul::error(Raul::fmt("Failed to instantiate <%1%>\n") @@ -142,10 +146,11 @@ LV2Node::prepare_poly(BufferFactory& bufs, uint32_t poly) if (_polyphony == poly) return true; + const SampleRate rate = bufs.engine().driver()->sample_rate(); assert(!_prepared_instances); _prepared_instances = new Instances(poly, *_instances, SharedPtr()); for (uint32_t i = _polyphony; i < _prepared_instances->size(); ++i) { - SharedPtr inst = make_instance(bufs.uris(), i, true); + SharedPtr inst = make_instance(bufs.uris(), rate, i, true); if (!inst) { return false; } @@ -370,9 +375,10 @@ LV2Node::instantiate(BufferFactory& bufs) _features = info->world().lv2_features().lv2_features(&info->world(), this); // Actually create plugin instances and port buffers. + const SampleRate rate = bufs.engine().driver()->sample_rate(); _instances = new Instances(_polyphony, SharedPtr()); for (uint32_t i = 0; i < _polyphony; ++i) { - _instances->at(i) = make_instance(bufs.uris(), i, false); + _instances->at(i) = make_instance(bufs.uris(), rate, i, false); if (!_instances->at(i)) { return false; } -- cgit v1.2.1