mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-22 01:34:21 +00:00
HostedAudioProcessorParameter: Extract from AudioPluginInstance
This commit is contained in:
parent
d5e9793cb1
commit
b5064f361f
4 changed files with 55 additions and 18 deletions
|
|
@ -120,6 +120,7 @@
|
|||
#include "utilities/juce_VST3ClientExtensions.h"
|
||||
#include "utilities/juce_ExtensionsVisitor.h"
|
||||
#include "processors/juce_AudioProcessorParameter.h"
|
||||
#include "processors/juce_HostedAudioProcessorParameter.h"
|
||||
#include "processors/juce_AudioProcessorEditorHostContext.h"
|
||||
#include "processors/juce_AudioProcessorEditor.h"
|
||||
#include "processors/juce_AudioProcessorListener.h"
|
||||
|
|
|
|||
|
|
@ -76,23 +76,7 @@ public:
|
|||
*/
|
||||
virtual void getExtensions (ExtensionsVisitor&) const;
|
||||
|
||||
/**
|
||||
A parameter with functions which are useful for plugin hosts.
|
||||
*/
|
||||
struct HostedParameter : public AudioProcessorParameter
|
||||
{
|
||||
/** Returns an ID which is unique to this parameter.
|
||||
|
||||
Parameter indices are unstable across plugin versions, which means that the
|
||||
parameter found at a particular index in one version of a plugin might move
|
||||
to a different index in the subsequent version.
|
||||
|
||||
Unlike the parameter index, the ID returned by this function should be
|
||||
somewhat stable (depending on the format of the plugin), so it is more
|
||||
suitable for storing/recalling automation data.
|
||||
*/
|
||||
virtual String getParameterID() const = 0;
|
||||
};
|
||||
using HostedParameter = HostedAudioProcessorParameter;
|
||||
|
||||
/** Adds a parameter to this instance.
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,50 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This file is part of the JUCE library.
|
||||
Copyright (c) 2020 - Raw Material Software Limited
|
||||
|
||||
JUCE is an open source library subject to commercial or open-source
|
||||
licensing.
|
||||
|
||||
By using JUCE, you agree to the terms of both the JUCE 6 End-User License
|
||||
Agreement and JUCE Privacy Policy (both effective as of the 16th June 2020).
|
||||
|
||||
End User License Agreement: www.juce.com/juce-6-licence
|
||||
Privacy Policy: www.juce.com/juce-privacy-policy
|
||||
|
||||
Or: You may also use this code under the terms of the GPL v3 (see
|
||||
www.gnu.org/licenses).
|
||||
|
||||
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
|
||||
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
|
||||
DISCLAIMED.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
namespace juce
|
||||
{
|
||||
|
||||
//==============================================================================
|
||||
/**
|
||||
A parameter with functions that are useful for plugin hosts.
|
||||
|
||||
@tags{Audio}
|
||||
*/
|
||||
struct HostedAudioProcessorParameter : public AudioProcessorParameter
|
||||
{
|
||||
/** Returns an ID that is unique to this parameter.
|
||||
|
||||
Parameter indices are unstable across plugin versions, which means that the
|
||||
parameter found at a particular index in one version of a plugin might move
|
||||
to a different index in the subsequent version.
|
||||
|
||||
Unlike the parameter index, the ID returned by this function should be
|
||||
somewhat stable (depending on the format of the plugin), so it is more
|
||||
suitable for storing/recalling automation data.
|
||||
*/
|
||||
virtual String getParameterID() const = 0;
|
||||
};
|
||||
|
||||
} // namespace juce
|
||||
|
|
@ -33,7 +33,7 @@ namespace juce
|
|||
|
||||
@tags{Audio}
|
||||
*/
|
||||
class JUCE_API AudioProcessorParameterWithID : public AudioProcessorParameter
|
||||
class JUCE_API AudioProcessorParameterWithID : public HostedAudioProcessorParameter
|
||||
{
|
||||
public:
|
||||
/** The creation of this object requires providing a name and ID which will be
|
||||
|
|
@ -63,6 +63,8 @@ public:
|
|||
String getLabel() const override;
|
||||
Category getCategory() const override;
|
||||
|
||||
String getParameterID() const override { return paramID; }
|
||||
|
||||
private:
|
||||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioProcessorParameterWithID)
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue