From 83e8a80f61cecbc1164a17147a7d71d96881c036 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Mon, 22 Feb 2016 21:17:04 -0500 Subject: [PATCH] Sweep unnecessary wxString copies: export --- src/export/Export.cpp | 31 +------------------------------ src/export/Export.h | 15 +++------------ src/export/ExportCL.cpp | 6 +++--- src/export/ExportFFmpeg.cpp | 6 +++--- src/export/ExportFLAC.cpp | 6 +++--- src/export/ExportMP2.cpp | 6 +++--- src/export/ExportMP3.cpp | 6 +++--- src/export/ExportMultiple.cpp | 6 +++--- src/export/ExportMultiple.h | 6 +++--- src/export/ExportOGG.cpp | 6 +++--- src/export/ExportPCM.cpp | 6 +++--- 11 files changed, 31 insertions(+), 69 deletions(-) diff --git a/src/export/Export.cpp b/src/export/Export.cpp index a95c06541..b19ea8b16 100644 --- a/src/export/Export.cpp +++ b/src/export/Export.cpp @@ -242,35 +242,6 @@ wxWindow *ExportPlugin::OptionsCreate(wxWindow *parent, int WXUNUSED(format)) return p; } -int ExportPlugin::Export(AudacityProject *project, - int channels, - wxString fName, - bool selectedOnly, - double t0, - double t1, - MixerSpec *mixerSpec, - Tags * WXUNUSED(metadata), - int subformat) -{ - if (project == NULL) { - project = GetActiveProject(); - } - - return DoExport(project, channels, fName, selectedOnly, t0, t1, mixerSpec, subformat); -} - -int ExportPlugin::DoExport(AudacityProject * WXUNUSED(project), - int WXUNUSED(channels), - wxString WXUNUSED(fName), - bool WXUNUSED(selectedOnly), - double WXUNUSED(t0), - double WXUNUSED(t1), - MixerSpec * WXUNUSED(mixerSpec), - int WXUNUSED(subformat)) -{ - return false; -} - //Create a mixer by computing the time warp factor Mixer* ExportPlugin::CreateMixer(int numInputTracks, WaveTrack **inputTracks, TimeTrack *timeTrack, @@ -952,7 +923,7 @@ ExportMixerPanel::~ExportMixerPanel() } //set the font on memDC such that text can fit in specified width and height -void ExportMixerPanel::SetFont( wxMemoryDC &memDC, wxString text, int width, +void ExportMixerPanel::SetFont(wxMemoryDC &memDC, const wxString &text, int width, int height ) { int l = 0, u = 13, m, w, h; diff --git a/src/export/Export.h b/src/export/Export.h index 38cfa0340..c3b6e2a5f 100644 --- a/src/export/Export.h +++ b/src/export/Export.h @@ -105,22 +105,13 @@ public: */ virtual int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); - - virtual int DoExport(AudacityProject *project, - int channels, - wxString fName, - bool selectedOnly, - double t0, - double t1, - MixerSpec *mixerSpec, - int subformat); + int subformat = 0) = 0; protected: Mixer* CreateMixer(int numInputTracks, WaveTrack **inputTracks, @@ -227,7 +218,7 @@ private: wxArrayString mTrackNames; int mBoxWidth, mChannelHeight, mTrackHeight; - void SetFont( wxMemoryDC &memDC, wxString text, int width, int height ); + void SetFont( wxMemoryDC &memDC, const wxString &text, int width, int height ); double Distance( wxPoint &a, wxPoint &b ); bool IsOnLine( wxPoint p, wxPoint la, wxPoint lb ); diff --git a/src/export/ExportCL.cpp b/src/export/ExportCL.cpp index e75d1aa91..fe85c6a3e 100644 --- a/src/export/ExportCL.cpp +++ b/src/export/ExportCL.cpp @@ -286,13 +286,13 @@ public: int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; }; ExportCL::ExportCL() @@ -313,7 +313,7 @@ void ExportCL::Destroy() int ExportCL::Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectionOnly, double t0, double t1, diff --git a/src/export/ExportFFmpeg.cpp b/src/export/ExportFFmpeg.cpp index 6913de72e..886aeb62e 100644 --- a/src/export/ExportFFmpeg.cpp +++ b/src/export/ExportFFmpeg.cpp @@ -140,13 +140,13 @@ public: ///\return true if export succeded int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; private: @@ -791,7 +791,7 @@ bool ExportFFmpeg::EncodeAudioFrame(int16_t *pFrame, int frameSize) int ExportFFmpeg::Export(AudacityProject *project, - int channels, wxString fName, + int channels, const wxString &fName, bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata, int subformat) { if (!CheckFFmpegPresence()) diff --git a/src/export/ExportFLAC.cpp b/src/export/ExportFLAC.cpp index b44d78c1e..0d62a736a 100644 --- a/src/export/ExportFLAC.cpp +++ b/src/export/ExportFLAC.cpp @@ -185,13 +185,13 @@ public: wxWindow *OptionsCreate(wxWindow *parent, int format); int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; private: @@ -220,7 +220,7 @@ void ExportFLAC::Destroy() int ExportFLAC::Export(AudacityProject *project, int numChannels, - wxString fName, + const wxString &fName, bool selectionOnly, double t0, double t1, diff --git a/src/export/ExportMP2.cpp b/src/export/ExportMP2.cpp index 1388fdd0c..04eb8c3fc 100644 --- a/src/export/ExportMP2.cpp +++ b/src/export/ExportMP2.cpp @@ -176,13 +176,13 @@ public: wxWindow *OptionsCreate(wxWindow *parent, int format); int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; private: @@ -210,7 +210,7 @@ void ExportMP2::Destroy() } int ExportMP2::Export(AudacityProject *project, - int channels, wxString fName, + int channels, const wxString &fName, bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata, int WXUNUSED(subformat)) { diff --git a/src/export/ExportMP3.cpp b/src/export/ExportMP3.cpp index 9ca54cab2..c65ceb619 100644 --- a/src/export/ExportMP3.cpp +++ b/src/export/ExportMP3.cpp @@ -1564,13 +1564,13 @@ public: wxWindow *OptionsCreate(wxWindow *parent, int format); int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; private: @@ -1619,7 +1619,7 @@ bool ExportMP3::CheckFileName(wxFileName & WXUNUSED(filename), int WXUNUSED(form int ExportMP3::Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectionOnly, double t0, double t1, diff --git a/src/export/ExportMultiple.cpp b/src/export/ExportMultiple.cpp index d05f6a266..5d0382eab 100644 --- a/src/export/ExportMultiple.cpp +++ b/src/export/ExportMultiple.cpp @@ -619,7 +619,7 @@ bool ExportMultiple::DirOk() } int ExportMultiple::ExportMultipleByLabel(bool byName, - wxString prefix, bool addNumber) + const wxString &prefix, bool addNumber) { wxASSERT(mProject); bool tagsPrompt = mProject->GetShowId3Dialog(); @@ -737,7 +737,7 @@ int ExportMultiple::ExportMultipleByLabel(bool byName, } int ExportMultiple::ExportMultipleByTrack(bool byName, - wxString prefix, bool addNumber) + const wxString &prefix, bool addNumber) { wxASSERT(mProject); bool tagsPrompt = mProject->GetShowId3Dialog(); @@ -953,7 +953,7 @@ int ExportMultiple::DoExport(int channels, return success; } -wxString ExportMultiple::MakeFileName(wxString input) +wxString ExportMultiple::MakeFileName(const wxString &input) { wxString newname; // name we are generating diff --git a/src/export/ExportMultiple.h b/src/export/ExportMultiple.h index aba865cd5..6771a6922 100644 --- a/src/export/ExportMultiple.h +++ b/src/export/ExportMultiple.h @@ -54,7 +54,7 @@ private: * labels that define them (true), or just numbered (false). * @param prefix The string used to prefix the file number if files are being * numbered rather than named */ - int ExportMultipleByLabel(bool byName, wxString prefix, bool addNumber); + int ExportMultipleByLabel(bool byName, const wxString &prefix, bool addNumber); /** \brief Export each track in the project to a separate file * @@ -62,7 +62,7 @@ private: * (true), or just numbered (false). * @param prefix The string used to prefix the file number if files are being * numbered rather than named */ - int ExportMultipleByTrack(bool byName, wxString prefix, bool addNumber); + int ExportMultipleByTrack(bool byName, const wxString &prefix, bool addNumber); /** Export one file of an export multiple set * @@ -83,7 +83,7 @@ private: /** \brief Takes an arbitrary text string and converts it to a form that can * be used as a file name, if necessary prompting the user to edit the file * name produced */ - wxString MakeFileName(wxString input); + wxString MakeFileName(const wxString &input); // Dialog void PopulateOrExchange(ShuttleGui& S); void EnableControls(); diff --git a/src/export/ExportOGG.cpp b/src/export/ExportOGG.cpp index d54da57fd..3c2c5fdbe 100644 --- a/src/export/ExportOGG.cpp +++ b/src/export/ExportOGG.cpp @@ -135,13 +135,13 @@ public: int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; private: @@ -166,7 +166,7 @@ void ExportOGG::Destroy() int ExportOGG::Export(AudacityProject *project, int numChannels, - wxString fName, + const wxString &fName, bool selectionOnly, double t0, double t1, diff --git a/src/export/ExportPCM.cpp b/src/export/ExportPCM.cpp index e5fa34cfb..e5fdcc7a9 100644 --- a/src/export/ExportPCM.cpp +++ b/src/export/ExportPCM.cpp @@ -315,13 +315,13 @@ public: wxWindow *OptionsCreate(wxWindow *parent, int format); int Export(AudacityProject *project, int channels, - wxString fName, + const wxString &fName, bool selectedOnly, double t0, double t1, MixerSpec *mixerSpec = NULL, Tags *metadata = NULL, - int subformat = 0); + int subformat = 0) override; // optional wxString GetExtension(int index); virtual bool CheckFileName(wxFileName &filename, int format); @@ -390,7 +390,7 @@ void ExportPCM::Destroy() */ int ExportPCM::Export(AudacityProject *project, int numChannels, - wxString fName, + const wxString &fName, bool selectionOnly, double t0, double t1,