Audacity 3.2.0
Public Types | Public Member Functions | List of all members
ExportProcessor Class Referenceabstract

#include <ExportPlugin.h>

Inheritance diagram for ExportProcessor:
[legend]

Public Types

using Parameters = std::vector< std::tuple< ExportOptionID, ExportValue > >
 

Public Member Functions

 ExportProcessor (const ExportProcessor &)=delete
 
ExportProcessoroperator= (const ExportProcessor &)=delete
 
 ExportProcessor ()=default
 
virtual ~ExportProcessor ()
 
virtual bool Initialize (AudacityProject &project, const Parameters &parameters, const wxFileNameWrapper &filename, double t0, double t1, bool selectedOnly, double rate, unsigned channels, MixerOptions::Downmix *mixerSpec=nullptr, const Tags *tags=nullptr)=0
 Called before start processing. More...
 
virtual ExportResult Process (ExportProcessorDelegate &delegate)=0
 

Detailed Description

Definition at line 90 of file ExportPlugin.h.

Member Typedef Documentation

◆ Parameters

using ExportProcessor::Parameters = std::vector<std::tuple<ExportOptionID, ExportValue> >

Definition at line 93 of file ExportPlugin.h.

Constructor & Destructor Documentation

◆ ExportProcessor() [1/2]

ExportProcessor::ExportProcessor ( const ExportProcessor )
delete

◆ ExportProcessor() [2/2]

ExportProcessor::ExportProcessor ( )
default

◆ ~ExportProcessor()

ExportProcessor::~ExportProcessor ( )
virtualdefault

Member Function Documentation

◆ Initialize()

virtual bool ExportProcessor::Initialize ( AudacityProject project,
const Parameters parameters,
const wxFileNameWrapper filename,
double  t0,
double  t1,
bool  selectedOnly,
double  rate,
unsigned  channels,
MixerOptions::Downmix mixerSpec = nullptr,
const Tags tags = nullptr 
)
pure virtual

Called before start processing.

Parameters
projectProcessor may access project data, take care to exclude any data race
parametersA format-dependent set of parameters used in exporting
selectedOnlySet to true if all tracks should be mixed, to false if only the selected tracks should be mixed and exported.
tagsA Tags object that will over-ride the one in *project and be used to tag the file that is exported. @retern Implementations may simply return false without any error reporting. This is to temporarily preserve old behavior, which is to be removed in the nearest future.

Implemented in CLExportProcessor, FLACExportProcessor, FFmpegExportProcessor, MP2ExportProcessor, MP3ExportProcessor, OGGExportProcessor, OpusExportProcessor, PCMExportProcessor, and WavPackExportProcessor.

◆ operator=()

ExportProcessor & ExportProcessor::operator= ( const ExportProcessor )
delete

◆ Process()

virtual ExportResult ExportProcessor::Process ( ExportProcessorDelegate delegate)
pure virtual

The documentation for this class was generated from the following files: