mirror of
https://github.com/cookiengineer/audacity
synced 2025-07-19 14:17:41 +02:00
Merge pull request #1206 from Paul-Licameli/Extract-lib-components
Extract lib components
This commit is contained in:
commit
06eae90100
@ -1,151 +0,0 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
ImporterInterface.h
|
||||
|
||||
Leland Lucius
|
||||
|
||||
Copyright (c) 2014, Audacity Team
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
#ifndef __AUDACITY_IMPORTERINTERFACE_H__
|
||||
#define __AUDACITY_IMPORTERINTERFACE_H__
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "audacity/ComponentInterface.h"
|
||||
|
||||
// ============================================================================
|
||||
//
|
||||
// ImporterInterface class
|
||||
//
|
||||
// ============================================================================
|
||||
|
||||
class ImporterHostInterface;
|
||||
class ImporterClientInterface;
|
||||
class ImporterInterface : public ComponentInterface
|
||||
{
|
||||
public:
|
||||
virtual ~ImporterInterface() {};
|
||||
|
||||
// Get unique string ID of this plugin, usually it corresponds
|
||||
// to the underlying library, i.e. "libsndfile", "libflac", "libav"
|
||||
// These MUST NOT change across Audacity versions (but new IDs can
|
||||
// be added).
|
||||
virtual wxString GetPluginStringID() = 0;
|
||||
|
||||
// Get a description of the file type this importer can import.
|
||||
// Examples: "Ogg Vorbis", "MP3", "Uncompressed PCM"
|
||||
virtual TranslatableString GetPluginFormatDescription() = 0;
|
||||
|
||||
// Get a list of extensions this plugin expects to be able to
|
||||
// import. If a filename matches any of these extensions,
|
||||
// this importer will get first dibs on importing it.
|
||||
virtual FileExtensions GetSupportedExtensions() = 0;
|
||||
virtual bool SupportsExtension(const FileExtension & extension) = 0;
|
||||
|
||||
// Create the client that will be used to import a file.
|
||||
virtual ImporterClientInterface *CreateClient() = 0;
|
||||
};
|
||||
|
||||
|
||||
// ============================================================================
|
||||
//
|
||||
// ImporterHostInterface class
|
||||
//
|
||||
// ============================================================================
|
||||
|
||||
class ImporterHostInterface
|
||||
{
|
||||
public:
|
||||
virtual ~ImporterHostInterface() {};
|
||||
|
||||
// Called by the client to add a new stream to the import.
|
||||
virtual bool AddStream(int stream,
|
||||
sampleFormat sampleformat,
|
||||
float sampleRate,
|
||||
int numChannels,
|
||||
ChannelName *channelMap) = 0;
|
||||
|
||||
// Accepts interleaved samples from the client.
|
||||
virtual bool PutSamples(int stream, size_t numSamples, samplePtr inBuffer) = 0;
|
||||
|
||||
// Accepts non-interleaved samples from the client.
|
||||
virtual bool PutSamples(int stream, int channel, size_t numSamples, samplePtr inBuffer) = 0;
|
||||
|
||||
// The client will call this as the import progresses.
|
||||
virtual bool UpdateProgress(float current, float total) = 0;
|
||||
};
|
||||
|
||||
// ============================================================================
|
||||
//
|
||||
// ImporterClientInterface class
|
||||
//
|
||||
// ============================================================================
|
||||
|
||||
class ImporterClientInterface
|
||||
{
|
||||
public:
|
||||
virtual ~ImporterClientInterface() {};
|
||||
|
||||
// Provides a pointer to the associated host for this importer.
|
||||
virtual void SetHost(ImporterHostInterface *host) = 0;
|
||||
|
||||
// Open the given file, returning true if it is a recognized
|
||||
// format, false otherwise. This puts the importer into the open
|
||||
// state.
|
||||
virtual bool Open(const wxString & fileName) = 0;
|
||||
|
||||
// Do any processing necessary to close the file and release resources.
|
||||
// This will be called only if Open() succeeded.
|
||||
virtual void Close() = 0;
|
||||
|
||||
// This is similar to GetImporterDescription, but if possible the
|
||||
// importer will return a more specific description of the
|
||||
// specific file that is open.
|
||||
virtual TranslatableString GetFileDescription() = 0;
|
||||
|
||||
// Return stream descriptions list
|
||||
virtual void GetStreamInfo(wxArrayString & streamInfo) = 0;
|
||||
|
||||
// Set stream "import/don't import" flag
|
||||
virtual void SetStreamUsage(int streamID, bool use) = 0;
|
||||
|
||||
// do the actual import, creating whatever tracks are necessary with
|
||||
// the WaveTrackFactory and calling the progress callback every iteration
|
||||
// through the importing loop
|
||||
virtual bool Import() = 0;
|
||||
};
|
||||
|
||||
#endif // __AUDACITY_IMPORTERINTERFACE_H__
|
@ -219,54 +219,4 @@ typedef const char *constSamplePtr;
|
||||
// ----------------------------------------------------------------------------
|
||||
typedef wxString PluginID;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Supported channel assignments
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
typedef enum
|
||||
{
|
||||
// Use to mark end of list
|
||||
ChannelNameEOL = -1,
|
||||
// The default channel assignment
|
||||
ChannelNameMono,
|
||||
// From this point, the channels follow the 22.2 surround sound format
|
||||
ChannelNameFrontLeft,
|
||||
ChannelNameFrontRight,
|
||||
ChannelNameFrontCenter,
|
||||
ChannelNameLowFrequency1,
|
||||
ChannelNameBackLeft,
|
||||
ChannelNameBackRight,
|
||||
ChannelNameFrontLeftCenter,
|
||||
ChannelNameFrontRightCenter,
|
||||
ChannelNameBackCenter,
|
||||
ChannelNameLowFrequency2,
|
||||
ChannelNameSideLeft,
|
||||
ChannelNameSideRight,
|
||||
ChannelNameTopFrontLeft,
|
||||
ChannelNameTopFrontRight,
|
||||
ChannelNameTopFrontCenter,
|
||||
ChannelNameTopCenter,
|
||||
ChannelNameTopBackLeft,
|
||||
ChannelNameTopBackRight,
|
||||
ChannelNameTopSideLeft,
|
||||
ChannelNameTopSideRight,
|
||||
ChannelNameTopBackCenter,
|
||||
ChannelNameBottomFrontCenter,
|
||||
ChannelNameBottomFrontLeft,
|
||||
ChannelNameBottomFrontRight,
|
||||
} ChannelName, *ChannelNames;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// some frequently needed forward declarations
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class ComponentInterfaceSymbol;
|
||||
|
||||
using EnumValueSymbol = ComponentInterfaceSymbol;
|
||||
using NumericFormatSymbol = EnumValueSymbol;
|
||||
|
||||
using VendorSymbol = ComponentInterfaceSymbol;
|
||||
|
||||
using EffectFamilySymbol = ComponentInterfaceSymbol;
|
||||
|
||||
#endif // __AUDACITY_TYPES_H__
|
||||
|
@ -7,6 +7,7 @@ set( LIBRARIES
|
||||
lib-strings
|
||||
lib-utility
|
||||
lib-uuid
|
||||
lib-components
|
||||
)
|
||||
|
||||
if ( ${_OPT}has_networking )
|
||||
|
29
libraries/lib-components/CMakeLists.txt
Normal file
29
libraries/lib-components/CMakeLists.txt
Normal file
@ -0,0 +1,29 @@
|
||||
#[[
|
||||
Various abstract base classes related to modules and plugins.
|
||||
|
||||
ComponentInterfaceSymbol, which pairs an internal identifier string (suitable
|
||||
for storing as a configuration file value) with a user-visible translatable
|
||||
string. It serves to "name" various things.
|
||||
|
||||
CommandParameters, for write and reading key-value pairs to and from strings.
|
||||
]]#
|
||||
|
||||
list( APPEND SOURCES
|
||||
ComponentInterface.cpp
|
||||
ComponentInterface.h
|
||||
ComponentInterfaceSymbol.h
|
||||
ConfigInterface.cpp
|
||||
ConfigInterface.h
|
||||
EffectAutomationParameters.cpp
|
||||
EffectAutomationParameters.h
|
||||
EffectInterface.cpp
|
||||
EffectInterface.h
|
||||
ModuleInterface.cpp
|
||||
ModuleInterface.h
|
||||
PluginInterface.cpp
|
||||
PluginInterface.h
|
||||
)
|
||||
audacity_library( lib-components "${SOURCES}"
|
||||
"lib-strings-interface;PRIVATE;wxBase"
|
||||
"" ""
|
||||
)
|
10
libraries/lib-components/ComponentInterface.cpp
Normal file
10
libraries/lib-components/ComponentInterface.cpp
Normal file
@ -0,0 +1,10 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file ComponentInterface.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "ComponentInterface.h"
|
||||
|
||||
ComponentInterface::~ComponentInterface() = default;
|
@ -43,71 +43,11 @@
|
||||
#define __AUDACITY_COMPONENT_INTERFACE_H__
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "audacity/Types.h"
|
||||
#include "Internat.h"
|
||||
#include <wx/string.h> // member variables
|
||||
|
||||
STRINGS_API const wxString& GetCustomTranslation(const wxString& str1 );
|
||||
|
||||
/**************************************************************************//**
|
||||
|
||||
\brief ComponentInterfaceSymbol pairs a persistent string identifier used internally
|
||||
with an optional, different string as msgid for lookup in a translation catalog.
|
||||
\details If there is need to change a msgid in a later version of the
|
||||
program, change the constructor call to supply a second argument but leave the
|
||||
first the same, so that compatibility of older configuration files containing
|
||||
that internal string is not broken.
|
||||
********************************************************************************/
|
||||
class ComponentInterfaceSymbol
|
||||
{
|
||||
public:
|
||||
ComponentInterfaceSymbol() = default;
|
||||
|
||||
// Allows implicit construction from a msgid re-used as an internal string
|
||||
ComponentInterfaceSymbol( const TranslatableString &msgid )
|
||||
: mInternal{ msgid.MSGID().GET(), }, mMsgid{ msgid }
|
||||
{}
|
||||
|
||||
// Allows implicit construction from an internal string re-used as a msgid
|
||||
ComponentInterfaceSymbol( const wxString &internal )
|
||||
: mInternal{ internal }, mMsgid{ internal, {} }
|
||||
{}
|
||||
|
||||
// Allows implicit construction from an internal string re-used as a msgid
|
||||
ComponentInterfaceSymbol( const wxChar *msgid )
|
||||
: mInternal{ msgid }, mMsgid{ msgid, {} }
|
||||
{}
|
||||
|
||||
// Two-argument version distinguishes internal from translatable string
|
||||
// such as when the first squeezes spaces out
|
||||
ComponentInterfaceSymbol( const Identifier &internal,
|
||||
const TranslatableString &msgid )
|
||||
: mInternal{ internal.GET() }
|
||||
// Do not permit non-empty msgid with empty internal
|
||||
, mMsgid{ internal.empty() ? TranslatableString{} : msgid }
|
||||
{}
|
||||
|
||||
const wxString &Internal() const { return mInternal; }
|
||||
const TranslatableString &Msgid() const { return mMsgid; }
|
||||
const TranslatableString Stripped() const { return mMsgid.Stripped(); }
|
||||
const wxString Translation() const { return mMsgid.Translation(); }
|
||||
const wxString StrippedTranslation() const
|
||||
{ return Stripped().Translation(); }
|
||||
|
||||
bool empty() const { return mInternal.empty(); }
|
||||
|
||||
friend inline bool operator == (
|
||||
const ComponentInterfaceSymbol &a, const ComponentInterfaceSymbol &b )
|
||||
{ return a.mInternal == b.mInternal; }
|
||||
|
||||
friend inline bool operator != (
|
||||
const ComponentInterfaceSymbol &a, const ComponentInterfaceSymbol &b )
|
||||
{ return !( a == b ); }
|
||||
|
||||
private:
|
||||
wxString mInternal;
|
||||
TranslatableString mMsgid;
|
||||
};
|
||||
|
||||
class ComponentInterfaceSymbol;
|
||||
using VendorSymbol = ComponentInterfaceSymbol;
|
||||
|
||||
class ShuttleParams;
|
||||
|
||||
@ -118,10 +58,10 @@ plugins. It is what makes a class a plug-in. Additionally it provides an
|
||||
optional parameter definitions function, for those components such as commands,
|
||||
effects and (soon) preference pagess that define parameters.
|
||||
********************************************************************************/
|
||||
class AUDACITY_DLL_API ComponentInterface /* not final */
|
||||
class COMPONENTS_API ComponentInterface /* not final */
|
||||
{
|
||||
public:
|
||||
virtual ~ComponentInterface() {};
|
||||
virtual ~ComponentInterface();
|
||||
|
||||
// These should return an untranslated value
|
||||
virtual PluginPath GetPath() = 0;
|
82
libraries/lib-components/ComponentInterfaceSymbol.h
Normal file
82
libraries/lib-components/ComponentInterfaceSymbol.h
Normal file
@ -0,0 +1,82 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file ComponentInterfaceSymbol.h
|
||||
|
||||
Paul Licameli split from ComponentInterface.h
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
#ifndef __AUDACITY_COMPONENT_INTERFACE_SYMBOL__
|
||||
#define __AUDACITY_COMPONENT_INTERFACE_SYMBOL__
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "Internat.h"
|
||||
|
||||
/**************************************************************************//**
|
||||
|
||||
\brief ComponentInterfaceSymbol pairs a persistent string identifier used internally
|
||||
with an optional, different string as msgid for lookup in a translation catalog.
|
||||
\details If there is need to change a msgid in a later version of the
|
||||
program, change the constructor call to supply a second argument but leave the
|
||||
first the same, so that compatibility of older configuration files containing
|
||||
that internal string is not broken.
|
||||
********************************************************************************/
|
||||
class ComponentInterfaceSymbol
|
||||
{
|
||||
public:
|
||||
ComponentInterfaceSymbol() = default;
|
||||
|
||||
// Allows implicit construction from a msgid re-used as an internal string
|
||||
ComponentInterfaceSymbol( const TranslatableString &msgid )
|
||||
: mInternal{ msgid.MSGID().GET(), }, mMsgid{ msgid }
|
||||
{}
|
||||
|
||||
// Allows implicit construction from an internal string re-used as a msgid
|
||||
ComponentInterfaceSymbol( const wxString &internal )
|
||||
: mInternal{ internal }, mMsgid{ internal, {} }
|
||||
{}
|
||||
|
||||
// Allows implicit construction from an internal string re-used as a msgid
|
||||
ComponentInterfaceSymbol( const wxChar *msgid )
|
||||
: mInternal{ msgid }, mMsgid{ msgid, {} }
|
||||
{}
|
||||
|
||||
// Two-argument version distinguishes internal from translatable string
|
||||
// such as when the first squeezes spaces out
|
||||
ComponentInterfaceSymbol( const Identifier &internal,
|
||||
const TranslatableString &msgid )
|
||||
: mInternal{ internal.GET() }
|
||||
// Do not permit non-empty msgid with empty internal
|
||||
, mMsgid{ internal.empty() ? TranslatableString{} : msgid }
|
||||
{}
|
||||
|
||||
const wxString &Internal() const { return mInternal; }
|
||||
const TranslatableString &Msgid() const { return mMsgid; }
|
||||
const TranslatableString Stripped() const { return mMsgid.Stripped(); }
|
||||
const wxString Translation() const { return mMsgid.Translation(); }
|
||||
const wxString StrippedTranslation() const
|
||||
{ return Stripped().Translation(); }
|
||||
|
||||
bool empty() const { return mInternal.empty(); }
|
||||
|
||||
friend inline bool operator == (
|
||||
const ComponentInterfaceSymbol &a, const ComponentInterfaceSymbol &b )
|
||||
{ return a.mInternal == b.mInternal; }
|
||||
|
||||
friend inline bool operator != (
|
||||
const ComponentInterfaceSymbol &a, const ComponentInterfaceSymbol &b )
|
||||
{ return !( a == b ); }
|
||||
|
||||
private:
|
||||
wxString mInternal;
|
||||
TranslatableString mMsgid;
|
||||
};
|
||||
|
||||
// TODO: real type distinctions for these aliases, and move them elsewhere
|
||||
using EnumValueSymbol = ComponentInterfaceSymbol;
|
||||
using NumericFormatSymbol = EnumValueSymbol;
|
||||
using EffectFamilySymbol = ComponentInterfaceSymbol;
|
||||
|
||||
#endif
|
10
libraries/lib-components/ConfigInterface.cpp
Normal file
10
libraries/lib-components/ConfigInterface.cpp
Normal file
@ -0,0 +1,10 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file ConfigInterface.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "ConfigInterface.h"
|
||||
|
||||
ConfigClientInterface::~ConfigClientInterface() = default;
|
@ -43,6 +43,7 @@
|
||||
#define __AUDACITY_CONFIGINTERFACE_H__
|
||||
|
||||
#include "Identifier.h"
|
||||
#include <vector>
|
||||
|
||||
/*************************************************************************************//**
|
||||
|
||||
@ -53,10 +54,10 @@ differentiates between private and shared config. It should probably be replace
|
||||
with a Shuttle.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API ConfigClientInterface /* not final */
|
||||
class COMPONENTS_API ConfigClientInterface /* not final */
|
||||
{
|
||||
public:
|
||||
virtual ~ConfigClientInterface() {};
|
||||
virtual ~ConfigClientInterface();
|
||||
|
||||
virtual bool HasSharedConfigGroup(const RegistryPath & group) = 0;
|
||||
virtual bool GetSharedConfigSubgroups(const RegistryPath & group, RegistryPaths & subgroups) = 0;
|
||||
@ -95,20 +96,4 @@ public:
|
||||
virtual bool RemovePrivateConfig(const RegistryPath & group, const RegistryPath & key) = 0;
|
||||
};
|
||||
|
||||
#if 0
|
||||
/*************************************************************************************//**
|
||||
|
||||
\class ConfigHostInterface
|
||||
|
||||
\brief ConfigHostInterface appears not to be used.
|
||||
|
||||
*******************************************************************************************/
|
||||
class ConfigHostInterface
|
||||
{
|
||||
public:
|
||||
virtual ~ConfigHostInterface() {};
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // __AUDACITY_CONFIGINTERFACE_H__
|
10
libraries/lib-components/EffectAutomationParameters.cpp
Normal file
10
libraries/lib-components/EffectAutomationParameters.cpp
Normal file
@ -0,0 +1,10 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file EffectAutomationParameters.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "EffectAutomationParameters.h"
|
||||
|
||||
CommandParameters::~CommandParameters() = default;
|
@ -50,7 +50,7 @@
|
||||
#include <algorithm>
|
||||
|
||||
#include "ComponentInterface.h"
|
||||
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
/**
|
||||
\brief CommandParameters, derived from wxFileConfig, is essentially doing
|
||||
@ -63,7 +63,7 @@ wxWidget validators, and can create default dialogs. However until that convers
|
||||
done, we need this class, and we use a pointer to one from within a Shuttle when interfacing
|
||||
with the code that still uses it.
|
||||
*/
|
||||
class CommandParameters final : public wxFileConfig
|
||||
class COMPONENTS_API CommandParameters final : public wxFileConfig
|
||||
{
|
||||
public:
|
||||
CommandParameters(const wxString & parms = {})
|
||||
@ -77,9 +77,7 @@ public:
|
||||
SetParameters(parms);
|
||||
}
|
||||
|
||||
virtual ~CommandParameters()
|
||||
{
|
||||
}
|
||||
virtual ~CommandParameters();
|
||||
|
||||
virtual bool HasGroup(const wxString & strName) const override
|
||||
{
|
18
libraries/lib-components/EffectInterface.cpp
Normal file
18
libraries/lib-components/EffectInterface.cpp
Normal file
@ -0,0 +1,18 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file EffectInterface.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "EffectInterface.h"
|
||||
|
||||
EffectDefinitionInterface::~EffectDefinitionInterface() = default;
|
||||
|
||||
EffectHostInterface::~EffectHostInterface() = default;
|
||||
|
||||
EffectClientInterface::~EffectClientInterface() = default;
|
||||
|
||||
EffectUIHostInterface::~EffectUIHostInterface() = default;
|
||||
|
||||
EffectUIClientInterface::~EffectUIClientInterface() = default;
|
@ -44,10 +44,10 @@
|
||||
|
||||
#include <functional>
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "audacity/ComponentInterface.h"
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "audacity/EffectAutomationParameters.h" // for command automation
|
||||
#include "ComponentInterface.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
#include "ConfigInterface.h"
|
||||
#include "EffectAutomationParameters.h" // for command automation
|
||||
|
||||
class ShuttleGui;
|
||||
|
||||
@ -62,6 +62,8 @@ typedef enum EffectType : int
|
||||
} EffectType;
|
||||
|
||||
|
||||
using EffectFamilySymbol = ComponentInterfaceSymbol;
|
||||
|
||||
/*************************************************************************************//**
|
||||
|
||||
\class EffectDefinitionInterface
|
||||
@ -70,15 +72,15 @@ typedef enum EffectType : int
|
||||
flag-functions for interactivity, play-preview and whether the effect can run without a GUI.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectDefinitionInterface /* not final */ : public ComponentInterface
|
||||
class COMPONENTS_API EffectDefinitionInterface /* not final */ : public ComponentInterface
|
||||
{
|
||||
public:
|
||||
virtual ~EffectDefinitionInterface() {};
|
||||
virtual ~EffectDefinitionInterface();
|
||||
|
||||
// Type determines how it behaves.
|
||||
virtual EffectType GetType() = 0;
|
||||
// Classification determines which menu it appears in.
|
||||
virtual EffectType GetClassification() { return GetType();};
|
||||
virtual EffectType GetClassification() { return GetType();}
|
||||
|
||||
virtual EffectFamilySymbol GetFamily() = 0;
|
||||
|
||||
@ -115,10 +117,10 @@ virtual (abstract) functions to get presets and actually apply the effect. It u
|
||||
ConfigClientInterface to add Getters/setters for private and shared configs.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectHostInterface /* not final */ : public ConfigClientInterface
|
||||
class COMPONENTS_API EffectHostInterface /* not final */ : public ConfigClientInterface
|
||||
{
|
||||
public:
|
||||
virtual ~EffectHostInterface() {};
|
||||
virtual ~EffectHostInterface();
|
||||
|
||||
virtual double GetDefaultDuration() = 0;
|
||||
virtual double GetDuration() = 0;
|
||||
@ -131,6 +133,45 @@ public:
|
||||
virtual RegistryPath GetFactoryDefaultsGroup() = 0;
|
||||
};
|
||||
|
||||
class sampleCount;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Supported channel assignments
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
typedef enum
|
||||
{
|
||||
// Use to mark end of list
|
||||
ChannelNameEOL = -1,
|
||||
// The default channel assignment
|
||||
ChannelNameMono,
|
||||
// From this point, the channels follow the 22.2 surround sound format
|
||||
ChannelNameFrontLeft,
|
||||
ChannelNameFrontRight,
|
||||
ChannelNameFrontCenter,
|
||||
ChannelNameLowFrequency1,
|
||||
ChannelNameBackLeft,
|
||||
ChannelNameBackRight,
|
||||
ChannelNameFrontLeftCenter,
|
||||
ChannelNameFrontRightCenter,
|
||||
ChannelNameBackCenter,
|
||||
ChannelNameLowFrequency2,
|
||||
ChannelNameSideLeft,
|
||||
ChannelNameSideRight,
|
||||
ChannelNameTopFrontLeft,
|
||||
ChannelNameTopFrontRight,
|
||||
ChannelNameTopFrontCenter,
|
||||
ChannelNameTopCenter,
|
||||
ChannelNameTopBackLeft,
|
||||
ChannelNameTopBackRight,
|
||||
ChannelNameTopSideLeft,
|
||||
ChannelNameTopSideRight,
|
||||
ChannelNameTopBackCenter,
|
||||
ChannelNameBottomFrontCenter,
|
||||
ChannelNameBottomFrontLeft,
|
||||
ChannelNameBottomFrontRight,
|
||||
} ChannelName, *ChannelNames;
|
||||
|
||||
/*************************************************************************************//**
|
||||
|
||||
\class EffectClientInterface
|
||||
@ -140,7 +181,7 @@ Effect into a plug-in command. It has functions for realtime that are not part
|
||||
AudacityCommand.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectClientInterface /* not final */ : public EffectDefinitionInterface
|
||||
class COMPONENTS_API EffectClientInterface /* not final */ : public EffectDefinitionInterface
|
||||
{
|
||||
public:
|
||||
using EffectDialogFactory = std::function<
|
||||
@ -148,7 +189,7 @@ public:
|
||||
EffectHostInterface*, EffectUIClientInterface* )
|
||||
>;
|
||||
|
||||
virtual ~EffectClientInterface() {};
|
||||
virtual ~EffectClientInterface();
|
||||
|
||||
virtual bool SetHost(EffectHostInterface *host) = 0;
|
||||
|
||||
@ -212,10 +253,10 @@ can call SetHostUI passing in a pointer to an EffectUIHostInterface. It contain
|
||||
functionality and is provided, apparently, for type checking. Since only EffectUIHost
|
||||
uses it, EffectUIHost could be used instead.
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectUIHostInterface
|
||||
class COMPONENTS_API EffectUIHostInterface
|
||||
{
|
||||
public:
|
||||
virtual ~EffectUIHostInterface() {};
|
||||
virtual ~EffectUIHostInterface();
|
||||
};
|
||||
|
||||
/*************************************************************************************//**
|
||||
@ -226,10 +267,10 @@ public:
|
||||
values. It can import and export presets.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectUIClientInterface /* not final */
|
||||
class COMPONENTS_API EffectUIClientInterface /* not final */
|
||||
{
|
||||
public:
|
||||
virtual ~EffectUIClientInterface() {};
|
||||
virtual ~EffectUIClientInterface();
|
||||
|
||||
virtual void SetHostUI(EffectUIHostInterface *host) = 0;
|
||||
virtual bool IsGraphicalUI() = 0;
|
||||
@ -246,24 +287,4 @@ public:
|
||||
virtual void ShowOptions() = 0;
|
||||
};
|
||||
|
||||
|
||||
/*************************************************************************************//**
|
||||
|
||||
\class EffectManagerInterface
|
||||
|
||||
\brief UNUSED. EffectManagerInterface provides a single function to find files matching
|
||||
a pattern in a list.
|
||||
|
||||
*******************************************************************************************/
|
||||
class AUDACITY_DLL_API EffectManagerInterface
|
||||
{
|
||||
public:
|
||||
virtual ~EffectManagerInterface() {};
|
||||
|
||||
virtual void FindFilesInPathList(const wxString & pattern,
|
||||
const FilePaths & pathList,
|
||||
FilePaths & files,
|
||||
int searchFlags) = 0;
|
||||
};
|
||||
|
||||
#endif // __AUDACITY_EFFECTINTERFACE_H__
|
10
libraries/lib-components/ModuleInterface.cpp
Normal file
10
libraries/lib-components/ModuleInterface.cpp
Normal file
@ -0,0 +1,10 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file ModuleInterface.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "ModuleInterface.h"
|
||||
|
||||
ModuleInterface::~ModuleInterface() = default;
|
@ -45,8 +45,8 @@
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include "Identifier.h"
|
||||
#include "audacity/ComponentInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
// ============================================================================
|
||||
//
|
||||
@ -65,10 +65,11 @@
|
||||
///
|
||||
// ============================================================================
|
||||
|
||||
class ModuleInterface /* not final */ : public ComponentInterface
|
||||
class COMPONENTS_API ModuleInterface /* not final */
|
||||
: public ComponentInterface
|
||||
{
|
||||
public:
|
||||
virtual ~ModuleInterface() {};
|
||||
virtual ~ModuleInterface();
|
||||
|
||||
// Called immediately after creation to give the instance a chance to
|
||||
// initialize. Return "true" if initialziation was successful.
|
10
libraries/lib-components/PluginInterface.cpp
Normal file
10
libraries/lib-components/PluginInterface.cpp
Normal file
@ -0,0 +1,10 @@
|
||||
/**********************************************************************
|
||||
|
||||
Audacity: A Digital Audio Editor
|
||||
|
||||
@file PluginInterface.cpp
|
||||
|
||||
**********************************************************************/
|
||||
#include "PluginInterface.h"
|
||||
|
||||
PluginManagerInterface::~PluginManagerInterface() = default;
|
@ -42,19 +42,21 @@
|
||||
#ifndef __AUDACITY_PLUGININTERFACE_H__
|
||||
#define __AUDACITY_PLUGININTERFACE_H__
|
||||
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/ComponentInterface.h"
|
||||
#include "audacity/ImporterInterface.h"
|
||||
|
||||
#include "ConfigInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "Identifier.h"
|
||||
|
||||
class ModuleInterface;
|
||||
using PluginID = wxString;
|
||||
using PluginIDs = wxArrayString;
|
||||
|
||||
|
||||
class AUDACITY_DLL_API PluginManagerInterface /* not final */
|
||||
class COMPONENTS_API PluginManagerInterface /* not final */
|
||||
{
|
||||
public:
|
||||
|
||||
virtual ~PluginManagerInterface();
|
||||
|
||||
static const PluginID &DefaultRegistrationCallback(
|
||||
ModuleInterface *provider, ComponentInterface *ident );
|
||||
static const PluginID &AudacityCommandRegistrationCallback(
|
||||
@ -72,7 +74,6 @@ public:
|
||||
|
||||
virtual const PluginID & RegisterPlugin(ModuleInterface *module) = 0;
|
||||
virtual const PluginID & RegisterPlugin(ModuleInterface *provider, EffectDefinitionInterface *effect, int type) = 0;
|
||||
virtual const PluginID & RegisterPlugin(ModuleInterface *provider, ImporterInterface *importer) = 0;
|
||||
|
||||
virtual void FindFilesInPathList(const wxString & pattern,
|
||||
const FilePaths & pathList,
|
@ -16,7 +16,7 @@
|
||||
|
||||
#include "export/Export.h"
|
||||
#include "commands/CommandFlag.h"
|
||||
#include "audacity/ComponentInterface.h" // for ComponentInterfaceSymbol
|
||||
#include "ComponentInterface.h" // for ComponentInterfaceSymbol
|
||||
|
||||
class wxArrayString;
|
||||
class Effect;
|
||||
|
@ -1006,14 +1006,7 @@ list( APPEND SOURCES
|
||||
#
|
||||
#
|
||||
list( APPEND HEADERS
|
||||
../include/audacity/EffectInterface.h
|
||||
../include/audacity/Types.h
|
||||
../include/audacity/ConfigInterface.h
|
||||
../include/audacity/ModuleInterface.h
|
||||
../include/audacity/PluginInterface.h
|
||||
../include/audacity/ComponentInterface.h
|
||||
../include/audacity/EffectAutomationParameters.h
|
||||
../include/audacity/ImporterInterface.h
|
||||
)
|
||||
|
||||
#
|
||||
|
@ -18,6 +18,7 @@ Describes shared object that is used to access FFmpeg libraries.
|
||||
|
||||
|
||||
|
||||
#include "audacity/Types.h"
|
||||
#include "widgets/wxPanelWrapper.h" // to inherit
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
|
@ -15,7 +15,7 @@
|
||||
#include <wx/defs.h>
|
||||
|
||||
#include "widgets/wxPanelWrapper.h" // to inherit
|
||||
#include "audacity/ComponentInterface.h" // member variable
|
||||
#include "ComponentInterface.h" // member variable
|
||||
|
||||
class wxArrayString;
|
||||
class wxGridEvent;
|
||||
|
@ -20,7 +20,7 @@ i.e. an alternative to the usual interface, for Audacity.
|
||||
|
||||
|
||||
#include "ModuleManager.h"
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
|
||||
|
||||
|
||||
@ -32,7 +32,7 @@ i.e. an alternative to the usual interface, for Audacity.
|
||||
#include "FileNames.h"
|
||||
#include "MemoryX.h"
|
||||
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#ifdef EXPERIMENTAL_MODULE_PREFS
|
||||
#include "Prefs.h"
|
||||
|
@ -66,7 +66,6 @@ using ModuleInterfaceHandle = std::unique_ptr<
|
||||
|
||||
typedef std::map<wxString, ModuleInterfaceHandle> ModuleMap;
|
||||
typedef std::map<ModuleInterface *, std::unique_ptr<wxDynamicLibrary>> LibraryMap;
|
||||
using PluginIDs = wxArrayString;
|
||||
|
||||
class AUDACITY_DLL_API ModuleManager final
|
||||
{
|
||||
|
@ -28,7 +28,7 @@ for shared and private configs - which need to move out.
|
||||
#include <wx/log.h>
|
||||
#include <wx/tokenzr.h>
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
|
||||
#include "AudacityFileConfig.h"
|
||||
#include "Internat.h" // for macro XO
|
||||
@ -436,18 +436,6 @@ const PluginID & PluginManager::RegisterPlugin(ModuleInterface *provider, Effect
|
||||
return plug.GetID();
|
||||
}
|
||||
|
||||
const PluginID & PluginManager::RegisterPlugin(ModuleInterface *provider, ImporterInterface *importer)
|
||||
{
|
||||
PluginDescriptor & plug = CreatePlugin(GetID(importer), importer, PluginTypeImporter);
|
||||
|
||||
plug.SetProviderID(PluginManager::GetID(provider));
|
||||
|
||||
plug.SetImporterIdentifier(importer->GetPluginStringID());
|
||||
plug.SetImporterExtensions(importer->GetSupportedExtensions());
|
||||
|
||||
return plug.GetID();
|
||||
}
|
||||
|
||||
void PluginManager::FindFilesInPathList(const wxString & pattern,
|
||||
const FilePaths & pathList,
|
||||
FilePaths & files,
|
||||
@ -1582,16 +1570,6 @@ PluginID PluginManager::GetID(EffectDefinitionInterface *effect)
|
||||
effect->GetPath());
|
||||
}
|
||||
|
||||
PluginID PluginManager::GetID(ImporterInterface *importer)
|
||||
{
|
||||
return wxString::Format(wxT("%s_%s_%s_%s_%s"),
|
||||
GetPluginTypeString(PluginTypeImporter),
|
||||
wxEmptyString,
|
||||
importer->GetVendor().Internal(),
|
||||
importer->GetSymbol().Internal(),
|
||||
importer->GetPath());
|
||||
}
|
||||
|
||||
// This string persists in configuration files
|
||||
// So config compatibility will break if it is changed across Audacity versions
|
||||
wxString PluginManager::GetPluginTypeString(PluginType type)
|
||||
|
@ -17,9 +17,8 @@
|
||||
#include <map>
|
||||
#include <memory>
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/ImporterInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
class wxArrayString;
|
||||
class FileConfig;
|
||||
@ -186,7 +185,6 @@ public:
|
||||
const PluginID & RegisterPlugin(ModuleInterface *module) override;
|
||||
const PluginID & RegisterPlugin(ModuleInterface *provider, ComponentInterface *command);
|
||||
const PluginID & RegisterPlugin(ModuleInterface *provider, EffectDefinitionInterface *effect, int type) override;
|
||||
const PluginID & RegisterPlugin(ModuleInterface *provider, ImporterInterface *importer) override;
|
||||
|
||||
void FindFilesInPathList(const wxString & pattern,
|
||||
const FilePaths & pathList,
|
||||
@ -240,7 +238,6 @@ public:
|
||||
|
||||
static PluginID GetID(ComponentInterface *command);
|
||||
static PluginID GetID(EffectDefinitionInterface *effect);
|
||||
static PluginID GetID(ImporterInterface *importer);
|
||||
|
||||
// This string persists in configuration files
|
||||
// So config compatibility will break if it is changed across Audacity versions
|
||||
|
@ -9,7 +9,7 @@
|
||||
**********************************************************************/
|
||||
#include "PluginRegistrationDialog.h"
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "ModuleManager.h"
|
||||
#include "PluginManager.h"
|
||||
#include "ShuttleGui.h"
|
||||
|
@ -38,7 +38,8 @@
|
||||
|
||||
#include <functional>
|
||||
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
#include "wxArrayStringEx.h"
|
||||
#include "widgets/FileConfig.h"
|
||||
|
||||
|
@ -14,6 +14,7 @@ Paul Licameli split from ProjectManager.cpp
|
||||
#include "ClientData.h" // to inherit
|
||||
#include "toolbars/SelectionBarListener.h" // to inherit
|
||||
#include "toolbars/SpectralSelectionBarListener.h" // to inherit
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
class AudacityProject;
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
||||
#include "Resample.h"
|
||||
#include "Prefs.h"
|
||||
#include "Internat.h"
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
|
||||
#include <soxr.h>
|
||||
|
||||
|
@ -65,7 +65,7 @@ preferences.
|
||||
#include <wx/radiobut.h>
|
||||
#include <wx/button.h>
|
||||
|
||||
#include "../include/audacity/EffectAutomationParameters.h" // for command automation
|
||||
#include "EffectAutomationParameters.h" // for command automation
|
||||
|
||||
#include "WrappedType.h"
|
||||
//#include "effects/Effect.h"
|
||||
|
@ -11,7 +11,8 @@
|
||||
#ifndef __AUDACITY_SHUTTLE__
|
||||
#define __AUDACITY_SHUTTLE__
|
||||
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
class ComponentInterfaceSymbol;
|
||||
class WrappedType;
|
||||
|
@ -9,6 +9,7 @@
|
||||
**********************************************************************/
|
||||
|
||||
#include "ShuttleGetDefinition.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
bool ShuttleGetDefinition::IsOptional(){
|
||||
bool result = pOptionalFlag !=NULL;
|
||||
|
@ -113,7 +113,7 @@ for registering for changes.
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/bmpbuttn.h>
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "widgets/ReadOnlyText.h"
|
||||
#include "widgets/wxPanelWrapper.h"
|
||||
#include "widgets/wxTextCtrlWrapper.h"
|
||||
|
@ -24,6 +24,7 @@
|
||||
|
||||
#include "Prefs.h"
|
||||
#include "WrappedType.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
class ChoiceSetting;
|
||||
|
||||
@ -746,8 +747,6 @@ public:
|
||||
teShuttleMode GetMode() { return mShuttleMode; };
|
||||
};
|
||||
|
||||
class ComponentInterfaceSymbol;
|
||||
|
||||
//! Convenience function often useful when adding choice controls
|
||||
AUDACITY_DLL_API TranslatableStrings Msgids(
|
||||
const EnumValueSymbol strings[], size_t nStrings);
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include <wx/defs.h>
|
||||
|
||||
#include "audacity/ComponentInterface.h" // member variable
|
||||
#include "ComponentInterface.h" // member variable
|
||||
|
||||
#include "widgets/wxPanelWrapper.h" // to inherit
|
||||
|
||||
|
@ -35,7 +35,7 @@ ShuttleGui.
|
||||
#include <wx/utils.h>
|
||||
#include <wx/log.h>
|
||||
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "ConfigInterface.h"
|
||||
|
||||
#include "../Shuttle.h"
|
||||
#include "../ShuttleGui.h"
|
||||
|
@ -20,8 +20,8 @@
|
||||
|
||||
#include "../widgets/wxPanelWrapper.h" // to inherit
|
||||
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "../include/audacity/EffectAutomationParameters.h" // for command automation
|
||||
#include "ComponentInterface.h"
|
||||
#include "EffectAutomationParameters.h" // for command automation
|
||||
|
||||
#include "../Registrar.h"
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
#ifndef __AUDACITY_LOAD_COMMANDS__
|
||||
#define __AUDACITY_LOAD_COMMANDS__
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
|
@ -25,8 +25,8 @@ class wxChoice;
|
||||
class wxListBox;
|
||||
class wxWindow;
|
||||
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "ConfigInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
|
||||
#include "../SelectedRegion.h"
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
#include <vector>
|
||||
|
||||
#include <unordered_map>
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "Identifier.h"
|
||||
|
||||
class AudacityCommand;
|
||||
|
@ -16,6 +16,9 @@
|
||||
|
||||
#include <wx/bitmap.h> // member variables
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#if defined(EXPERIMENTAL_EFFECTS_RACK)
|
||||
|
||||
#include <vector>
|
||||
@ -102,8 +105,8 @@ private:
|
||||
|
||||
#endif
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "../widgets/wxPanelWrapper.h" // to inherit
|
||||
#include "EffectInterface.h"
|
||||
#include "widgets/wxPanelWrapper.h" // to inherit
|
||||
|
||||
#include "../SelectedRegion.h"
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
#ifndef __AUDACITY_LOAD_EFFECTS__
|
||||
#define __AUDACITY_LOAD_EFFECTS__
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "RealtimeEffectManager.h"
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include <memory>
|
||||
|
||||
#include <atomic>
|
||||
|
@ -94,7 +94,7 @@
|
||||
#include "../../widgets/WindowAccessible.h"
|
||||
#endif
|
||||
|
||||
#include "audacity/ConfigInterface.h"
|
||||
#include "ConfigInterface.h"
|
||||
|
||||
#include <cstring>
|
||||
|
||||
|
@ -12,9 +12,9 @@
|
||||
|
||||
#if USE_VST
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#include "../../SampleFormat.h"
|
||||
#include "../../xml/XMLTagHandler.h"
|
||||
|
@ -21,9 +21,9 @@
|
||||
#include <AudioUnit/AudioUnit.h>
|
||||
#include <AudioUnit/AudioUnitProperties.h>
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#include "AUControl.h"
|
||||
|
||||
|
@ -18,9 +18,9 @@ class NumericTextCtrl;
|
||||
#include <wx/dynlib.h> // member variable
|
||||
#include <wx/event.h> // to inherit
|
||||
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#include "ladspa.h"
|
||||
#include "../../SampleFormat.h"
|
||||
|
@ -31,9 +31,9 @@
|
||||
#include "lv2/uri-map/uri-map.h"
|
||||
#include "lv2/units/units.h"
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#include "lv2_external_ui.h"
|
||||
|
||||
|
@ -8,9 +8,9 @@
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
|
@ -14,9 +14,9 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "audacity/ModuleInterface.h"
|
||||
#include "audacity/EffectInterface.h"
|
||||
#include "audacity/PluginInterface.h"
|
||||
#include "ModuleInterface.h"
|
||||
#include "EffectInterface.h"
|
||||
#include "PluginInterface.h"
|
||||
|
||||
#include <vamp-hostsdk/PluginLoader.h>
|
||||
|
||||
|
@ -1,5 +1,3 @@
|
||||
|
||||
|
||||
#include "../CommonCommandFlags.h"
|
||||
#include "../Menus.h"
|
||||
#include "../Prefs.h"
|
||||
|
@ -29,7 +29,7 @@ MousePrefs, QualityPrefs, SpectrumPrefs and ThemePrefs.
|
||||
|
||||
#include <functional>
|
||||
#include "../widgets/wxPanelWrapper.h" // to inherit
|
||||
#include "../include/audacity/ComponentInterface.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "../Registry.h"
|
||||
|
||||
/* A few constants for an attempt at semi-uniformity */
|
||||
|
@ -11,6 +11,7 @@
|
||||
#ifndef __AUDACITY_QUALITY_SETTINGS__
|
||||
#define __AUDACITY_QUALITY_SETTINGS__
|
||||
|
||||
#include <audacity/Types.h>
|
||||
#include "Prefs.h" // for EnumSetting
|
||||
|
||||
class IntSetting;
|
||||
|
@ -12,6 +12,7 @@
|
||||
#define __AUDACITY_SELECTION_BAR_LISTENER__
|
||||
|
||||
#include "audacity/Types.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
|
||||
class SelectedRegion;
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
#include <wx/brush.h> // member variable
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "audacity/Types.h"
|
||||
|
||||
class wxChoice;
|
||||
class wxCommandEvent;
|
||||
|
@ -11,7 +11,7 @@ Paul Licameli split from class WaveTrack
|
||||
#ifndef __AUDACITY_WAVE_TRACK_VIEW_CONSTANTS__
|
||||
#define __AUDACITY_WAVE_TRACK_VIEW_CONSTANTS__
|
||||
|
||||
#include "audacity/ComponentInterface.h" // for EnumValueSymbol
|
||||
#include "ComponentInterfaceSymbol.h" // for EnumValueSymbol
|
||||
|
||||
namespace WaveTrackViewConstants
|
||||
{
|
||||
|
@ -13,6 +13,7 @@ Paul Licameli
|
||||
|
||||
#include <functional>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
#include "../../AttachedVirtualFunction.h"
|
||||
#include "../../UIHandle.h"
|
||||
|
@ -168,7 +168,7 @@ different formats.
|
||||
|
||||
#include "NumericTextCtrl.h"
|
||||
|
||||
#include "Identifier.h"
|
||||
#include "audacity/Types.h"
|
||||
#include "../AllThemeResources.h"
|
||||
#include "../AColor.h"
|
||||
#include "../KeyboardCapture.h"
|
||||
|
@ -17,8 +17,9 @@
|
||||
|
||||
|
||||
|
||||
#include <memory>
|
||||
#include "../../include/audacity/ComponentInterface.h"
|
||||
#include "MemoryX.h"
|
||||
#include "ComponentInterface.h"
|
||||
#include "ComponentInterfaceSymbol.h"
|
||||
#include <vector>
|
||||
#include <wx/setup.h> // for wxUSE_* macros
|
||||
#include <wx/defs.h>
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include <wx/msw/winundef.h>
|
||||
#endif
|
||||
|
||||
#include "audacity/Types.h"
|
||||
#include <wx/defs.h>
|
||||
#include <wx/arrstr.h>
|
||||
#include <wx/filename.h>
|
||||
|
Loading…
x
Reference in New Issue
Block a user