Browse Source

AU: activate/deactivate plugin

pull/121/head
falkTX 7 years ago
parent
commit
a291737aef
1 changed files with 29 additions and 8 deletions
  1. +29
    -8
      distrho/src/DistrhoPluginAU.cpp

+ 29
- 8
distrho/src/DistrhoPluginAU.cpp View File

@@ -54,11 +54,6 @@ public:
{ {
CreateElements(); CreateElements();


// FIXME this does not seem right
fNumChannels = GetNumberOfChannels();
d_stdout("fNumChannels %u", fNumChannels);
DISTRHO_SAFE_ASSERT(fNumChannels == DISTRHO_PLUGIN_NUM_INPUTS);

AUElement* const globals = Globals(); AUElement* const globals = Globals();
DISTRHO_SAFE_ASSERT_RETURN(globals != nullptr,); DISTRHO_SAFE_ASSERT_RETURN(globals != nullptr,);


@@ -84,6 +79,7 @@ public:
} }
} }


protected:
OSStatus GetParameterValueStrings(AudioUnitScope inScope, OSStatus GetParameterValueStrings(AudioUnitScope inScope,
AudioUnitParameterID inParameterID, AudioUnitParameterID inParameterID,
CFArrayRef* outStrings) override CFArrayRef* outStrings) override
@@ -212,9 +208,9 @@ public:
return fPlugin.getVersion(); return fPlugin.getVersion();
} }


OSStatus ProcessBufferLists(AudioUnitRenderActionFlags &ioActionFlags,
const AudioBufferList &inBuffer,
AudioBufferList &outBuffer,
OSStatus ProcessBufferLists(AudioUnitRenderActionFlags& ioActionFlags,
const AudioBufferList& inBuffer,
AudioBufferList& outBuffer,
UInt32 inFramesToProcess) override UInt32 inFramesToProcess) override
{ {
const float* srcBuffer[fNumChannels]; const float* srcBuffer[fNumChannels];
@@ -238,6 +234,31 @@ public:


// ------------------------------------------------------------------- // -------------------------------------------------------------------


ComponentResult Initialize() override
{
ComponentResult err;

if ((err = AUEffectBase::Initialize()) != noErr)
return err;

fPlugin.activate();

// FIXME this does not seem right
fNumChannels = GetNumberOfChannels();
d_stdout("fNumChannels %u", fNumChannels);
DISTRHO_SAFE_ASSERT(fNumChannels == DISTRHO_PLUGIN_NUM_INPUTS);

return noErr;
}

void Cleanup() override
{
AUEffectBase::Cleanup();
fPlugin.deactivate();
}

// -------------------------------------------------------------------

private: private:
LastValuesInit fLastValuesInit; LastValuesInit fLastValuesInit;
PluginExporter fPlugin; PluginExporter fPlugin;


Loading…
Cancel
Save