45#ifndef __AUDACITY_IMPORTER__
46#define __AUDACITY_IMPORTER__
94 virtual std::unique_ptr<ImportFileHandle>
Open(
151 std::optional<LibFileFormats::AcidizerTags>& acidTags) = 0;
161 bool mCancelled{
false};
162 bool mStopped{
false};
166 FilePath GetFilename()
const override;
168 void Stop()
override;
172 bool IsCancelled() const noexcept;
173 bool IsStopped() const noexcept;
181 mFormatName(formatName),
182 mExtensions(
std::move( extensions ) )
193 return mExtensions.Index(
extension,
false) != wxNOT_FOUND;
wxString FileExtension
File extension, not including any leading dot.
std::vector< std::shared_ptr< Track > > TrackHolders
@ Cancel
Open was cancelled by the extension.
std::vector< TranslatableString > TranslatableStrings
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Base class for FlacImportFileHandle, LOFImportFileHandle, MP3ImportFileHandle, OggImportFileHandle an...
virtual ByteCount GetFileUncompressedBytes()=0
virtual TranslatableString GetFileDescription()=0
virtual wxInt32 GetStreamCount()=0
virtual const TranslatableStrings & GetStreamInfo()=0
unsigned long long ByteCount
virtual FilePath GetFilename() const =0
virtual void SetStreamUsage(wxInt32 StreamID, bool Use)=0
virtual void Import(ImportProgressListener &progressListener, WaveTrackFactory *trackFactory, TrackHolders &outTracks, Tags *tags, std::optional< LibFileFormats::AcidizerTags > &acidTags)=0
virtual ~ImportFileHandle()
Base class for FlacImportPlugin, LOFImportPlugin, MP3ImportPlugin, OggImportPlugin and PCMImportPlugi...
virtual TranslatableString GetPluginFormatDescription()=0
virtual wxString GetPluginStringID()=0
const FileExtensions mExtensions
virtual std::unique_ptr< ImportFileHandle > Open(const FilePath &Filename, AudacityProject *)=0
Interface used to report on import state and progress.
Abstract base class for an object holding data associated with points on a time axis.
A flat linked list of tracks supporting Add, Remove, Clear, and Contains, serialization of the list o...
Holds a msgid for the translation catalog; may also bind format arguments.
Used in place of a real plug in for plug ins that have not been compiled or are not available in this...
bool SupportsExtension(const FileExtension &extension)
UnusableImportPlugin(const TranslatableString &formatName, FileExtensions extensions)
TranslatableString GetPluginFormatDescription()
TranslatableString mFormatName
const FileExtensions mExtensions
Used to create or clone a WaveTrack, with appropriate context from the project that will own the trac...
A Track that contains audio waveform data.
Extend wxArrayString with move operations and construction and insertion fromstd::initializer_list.
ProjectFileIOExtensionRegistry::Extension extension