Add some const qualifiers; define TrackListConstIterator
This commit is contained in:
parent
ffe9989f7c
commit
a5b6c9fd8f
|
@ -1133,7 +1133,7 @@ double LabelTrack::GetEndTime() const
|
|||
return end;
|
||||
}
|
||||
|
||||
Track *LabelTrack::Duplicate()
|
||||
Track *LabelTrack::Duplicate() const
|
||||
{
|
||||
return new LabelTrack(*this);
|
||||
}
|
||||
|
|
|
@ -139,7 +139,7 @@ class AUDACITY_DLL_API LabelTrack : public Track
|
|||
virtual double GetStartTime() const;
|
||||
virtual double GetEndTime() const;
|
||||
|
||||
virtual Track *Duplicate();
|
||||
virtual Track *Duplicate() const;
|
||||
|
||||
virtual void SetSelected(bool s);
|
||||
|
||||
|
|
|
@ -135,7 +135,7 @@ NoteTrack::~NoteTrack()
|
|||
}
|
||||
}
|
||||
|
||||
Track *NoteTrack::Duplicate()
|
||||
Track *NoteTrack::Duplicate() const
|
||||
{
|
||||
NoteTrack *duplicate = new NoteTrack(mDirManager);
|
||||
duplicate->Init(*this);
|
||||
|
|
|
@ -57,7 +57,7 @@ class AUDACITY_DLL_API NoteTrack:public Track {
|
|||
NoteTrack(DirManager * projDirManager);
|
||||
virtual ~NoteTrack();
|
||||
|
||||
virtual Track *Duplicate();
|
||||
virtual Track *Duplicate() const;
|
||||
|
||||
virtual int GetKind() const { return Note; }
|
||||
|
||||
|
|
16
src/Tags.cpp
16
src/Tags.cpp
|
@ -371,27 +371,33 @@ int Tags::GetGenre(const wxString & name)
|
|||
return 255;
|
||||
}
|
||||
|
||||
bool Tags::HasTag(const wxString & name)
|
||||
bool Tags::HasTag(const wxString & name) const
|
||||
{
|
||||
wxString key = name;
|
||||
key.UpperCase();
|
||||
|
||||
TagMap::iterator iter = mXref.find(key);
|
||||
auto iter = mXref.find(key);
|
||||
return (iter != mXref.end());
|
||||
}
|
||||
|
||||
wxString Tags::GetTag(const wxString & name)
|
||||
wxString Tags::GetTag(const wxString & name) const
|
||||
{
|
||||
wxString key = name;
|
||||
key.UpperCase();
|
||||
|
||||
TagMap::iterator iter = mXref.find(key);
|
||||
auto iter = mXref.find(key);
|
||||
|
||||
if (iter == mXref.end()) {
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
return mMap[iter->second];
|
||||
auto iter2 = mMap.find(iter->second);
|
||||
if (iter2 == mMap.end()) {
|
||||
wxASSERT(false);
|
||||
return wxEmptyString;
|
||||
}
|
||||
else
|
||||
return iter2->second;
|
||||
}
|
||||
|
||||
Tags::Iterators Tags::GetRange() const
|
||||
|
|
|
@ -97,8 +97,8 @@ class AUDACITY_DLL_API Tags: public XMLTagHandler {
|
|||
wxString GetGenre(int value);
|
||||
int GetGenre(const wxString & name);
|
||||
|
||||
bool HasTag(const wxString & name);
|
||||
wxString GetTag(const wxString & name);
|
||||
bool HasTag(const wxString & name) const;
|
||||
wxString GetTag(const wxString & name) const;
|
||||
|
||||
using IterPair = std::pair<TagMap::const_iterator, TagMap::const_iterator>;
|
||||
struct Iterators : public IterPair {
|
||||
|
|
|
@ -64,7 +64,7 @@ TimeTrack::TimeTrack(DirManager *projDirManager, const ZoomInfo *zoomInfo):
|
|||
blankPen.SetColour(214, 214, 214);
|
||||
}
|
||||
|
||||
TimeTrack::TimeTrack(TimeTrack &orig):
|
||||
TimeTrack::TimeTrack(const TimeTrack &orig):
|
||||
Track(orig)
|
||||
, mZoomInfo(orig.mZoomInfo)
|
||||
{
|
||||
|
@ -109,7 +109,7 @@ TimeTrack::~TimeTrack()
|
|||
delete mRuler;
|
||||
}
|
||||
|
||||
Track *TimeTrack::Duplicate()
|
||||
Track *TimeTrack::Duplicate() const
|
||||
{
|
||||
return new TimeTrack(*this);
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ class TimeTrack: public Track {
|
|||
* copy-constructor to encapsulate this.
|
||||
* @param orig The original track to copy from
|
||||
*/
|
||||
TimeTrack(TimeTrack &orig);
|
||||
TimeTrack(const TimeTrack &orig);
|
||||
|
||||
virtual ~TimeTrack();
|
||||
|
||||
|
@ -131,7 +131,7 @@ class TimeTrack: public Track {
|
|||
* @param orig the TimeTrack to copy from
|
||||
*/
|
||||
void Init(const TimeTrack &orig);
|
||||
virtual Track *Duplicate();
|
||||
virtual Track *Duplicate() const;
|
||||
|
||||
friend class TrackFactory;
|
||||
|
||||
|
|
26
src/Track.h
26
src/Track.h
|
@ -145,7 +145,7 @@ class AUDACITY_DLL_API Track: public XMLTagHandler
|
|||
virtual ~ Track();
|
||||
|
||||
void Init(const Track &orig);
|
||||
virtual Track *Duplicate() = 0;
|
||||
virtual Track *Duplicate() const = 0;
|
||||
|
||||
// Called when this track is merged to stereo with another, and should
|
||||
// take on some paramaters of its partner.
|
||||
|
@ -239,6 +239,30 @@ class AUDACITY_DLL_API TrackListIterator
|
|||
TrackListNode *cur;
|
||||
};
|
||||
|
||||
class AUDACITY_DLL_API TrackListConstIterator
|
||||
{
|
||||
public:
|
||||
TrackListConstIterator(const TrackList * val = NULL)
|
||||
: mIter(const_cast<TrackList*>(val))
|
||||
{}
|
||||
~TrackListConstIterator() {}
|
||||
|
||||
// Iterate functions
|
||||
const Track *First(const TrackList * val = NULL)
|
||||
{ return mIter.First(const_cast<TrackList*>(val)); }
|
||||
const Track *StartWith(const Track * val)
|
||||
{ return mIter.StartWith(const_cast<Track*>(val)); }
|
||||
const Track *Next(bool skiplinked = false)
|
||||
{ return mIter.Next(skiplinked); }
|
||||
const Track *Prev(bool skiplinked = false)
|
||||
{ return mIter.Prev(skiplinked); }
|
||||
const Track *Last(bool skiplinked = false)
|
||||
{ return mIter.Last(skiplinked); }
|
||||
|
||||
private:
|
||||
TrackListIterator mIter;
|
||||
};
|
||||
|
||||
// TrackListCondIterator (base class for iterators that iterate over all tracks)
|
||||
// that meet a condition)
|
||||
class AUDACITY_DLL_API TrackListCondIterator: public TrackListIterator
|
||||
|
|
|
@ -182,7 +182,7 @@ bool UndoManager::RedoAvailable()
|
|||
return (current < (int)stack.size() - 1);
|
||||
}
|
||||
|
||||
void UndoManager::ModifyState(TrackList * l,
|
||||
void UndoManager::ModifyState(const TrackList * l,
|
||||
const SelectedRegion &selectedRegion)
|
||||
{
|
||||
if (current == wxNOT_FOUND) {
|
||||
|
@ -195,8 +195,8 @@ void UndoManager::ModifyState(TrackList * l,
|
|||
|
||||
// Duplicate
|
||||
auto tracksCopy = std::make_unique<TrackList>(true);
|
||||
TrackListIterator iter(l);
|
||||
Track *t = iter.First();
|
||||
TrackListConstIterator iter(l);
|
||||
const Track *t = iter.First();
|
||||
while (t) {
|
||||
tracksCopy->Add(t->Duplicate());
|
||||
t = iter.Next();
|
||||
|
@ -208,7 +208,7 @@ void UndoManager::ModifyState(TrackList * l,
|
|||
SonifyEndModifyState();
|
||||
}
|
||||
|
||||
void UndoManager::PushState(TrackList * l,
|
||||
void UndoManager::PushState(const TrackList * l,
|
||||
const SelectedRegion &selectedRegion,
|
||||
const wxString &longDescription,
|
||||
const wxString &shortDescription,
|
||||
|
@ -237,8 +237,8 @@ void UndoManager::PushState(TrackList * l,
|
|||
}
|
||||
|
||||
auto tracksCopy = std::make_unique<TrackList>(true);
|
||||
TrackListIterator iter(l);
|
||||
Track *t = iter.First();
|
||||
TrackListConstIterator iter(l);
|
||||
const Track *t = iter.First();
|
||||
while (t) {
|
||||
tracksCopy->Add(t->Duplicate());
|
||||
t = iter.Next();
|
||||
|
|
|
@ -99,11 +99,11 @@ class AUDACITY_DLL_API UndoManager {
|
|||
UndoManager();
|
||||
~UndoManager();
|
||||
|
||||
void PushState(TrackList * l,
|
||||
void PushState(const TrackList * l,
|
||||
const SelectedRegion &selectedRegion,
|
||||
const wxString &longDescription, const wxString &shortDescription,
|
||||
UndoPush flags = UndoPush::AUTOSAVE);
|
||||
void ModifyState(TrackList * l,
|
||||
void ModifyState(const TrackList * l,
|
||||
const SelectedRegion &selectedRegion);
|
||||
void ClearStates();
|
||||
void RemoveStates(int num); // removes the 'num' oldest states
|
||||
|
|
|
@ -116,7 +116,7 @@ WaveTrack::WaveTrack(DirManager *projDirManager, sampleFormat format, double rat
|
|||
mAutoSaveIdent = 0;
|
||||
}
|
||||
|
||||
WaveTrack::WaveTrack(WaveTrack &orig):
|
||||
WaveTrack::WaveTrack(const WaveTrack &orig):
|
||||
Track(orig)
|
||||
, mpSpectrumSettings(orig.mpSpectrumSettings
|
||||
? new SpectrogramSettings(*orig.mpSpectrumSettings) : 0
|
||||
|
@ -362,7 +362,7 @@ void WaveTrack::SetSpectrumBounds(float min, float max)
|
|||
mSpectrumMax = max;
|
||||
}
|
||||
|
||||
Track *WaveTrack::Duplicate()
|
||||
Track *WaveTrack::Duplicate() const
|
||||
{
|
||||
return new WaveTrack(*this);
|
||||
}
|
||||
|
|
|
@ -72,10 +72,10 @@ class AUDACITY_DLL_API WaveTrack : public Track {
|
|||
WaveTrack(DirManager * projDirManager,
|
||||
sampleFormat format = (sampleFormat)0,
|
||||
double rate = 0);
|
||||
WaveTrack(WaveTrack &orig);
|
||||
WaveTrack(const WaveTrack &orig);
|
||||
|
||||
void Init(const WaveTrack &orig);
|
||||
virtual Track *Duplicate();
|
||||
virtual Track *Duplicate() const;
|
||||
#ifdef EXPERIMENTAL_OUTPUT_DISPLAY
|
||||
void VirtualStereoInit();
|
||||
#endif
|
||||
|
|
|
@ -110,7 +110,7 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) = 0;
|
||||
|
||||
protected:
|
||||
|
|
|
@ -291,7 +291,7 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
};
|
||||
|
||||
|
@ -318,7 +318,7 @@ int ExportCL::Export(AudacityProject *project,
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec,
|
||||
Tags *WXUNUSED(metadata),
|
||||
const Tags *WXUNUSED(metadata),
|
||||
int WXUNUSED(subformat))
|
||||
{
|
||||
wxString output;
|
||||
|
|
|
@ -101,16 +101,16 @@ public:
|
|||
bool CheckFileName(wxFileName &filename, int format = 0);
|
||||
|
||||
/// Format intialization
|
||||
bool Init(const char *shortname, AudacityProject *project, Tags *metadata, int subformat);
|
||||
bool Init(const char *shortname, AudacityProject *project, const Tags *metadata, int subformat);
|
||||
|
||||
/// Codec intialization
|
||||
bool InitCodecs(AudacityProject *project);
|
||||
|
||||
/// Writes metadata
|
||||
bool AddTags(Tags *metadata);
|
||||
bool AddTags(const Tags *metadata);
|
||||
|
||||
/// Sets individual metadata values
|
||||
void SetMetadata(Tags *tags, const char *name, const wxChar *tag);
|
||||
void SetMetadata(const Tags *tags, const char *name, const wxChar *tag);
|
||||
|
||||
/// Encodes audio
|
||||
bool EncodeAudioFrame(int16_t *pFrame, int frameSize);
|
||||
|
@ -145,7 +145,7 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
|
||||
private:
|
||||
|
@ -256,7 +256,7 @@ bool ExportFFmpeg::CheckFileName(wxFileName & WXUNUSED(filename), int WXUNUSED(f
|
|||
return result;
|
||||
}
|
||||
|
||||
bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, Tags *metadata, int subformat)
|
||||
bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, const Tags *metadata, int subformat)
|
||||
{
|
||||
int err;
|
||||
//FFmpegLibsInst->LoadLibs(NULL,true); //Loaded at startup or from Prefs now
|
||||
|
@ -792,7 +792,7 @@ bool ExportFFmpeg::EncodeAudioFrame(int16_t *pFrame, int frameSize)
|
|||
|
||||
int ExportFFmpeg::Export(AudacityProject *project,
|
||||
int channels, const wxString &fName,
|
||||
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata, int subformat)
|
||||
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, const Tags *metadata, int subformat)
|
||||
{
|
||||
if (!CheckFFmpegPresence())
|
||||
return false;
|
||||
|
@ -873,7 +873,7 @@ void AddStringTagANSI(char field[], int size, wxString value)
|
|||
memcpy(field,value.mb_str(),(int)strlen(value.mb_str()) > size -1 ? size -1 : strlen(value.mb_str()));
|
||||
}
|
||||
|
||||
bool ExportFFmpeg::AddTags(Tags *tags)
|
||||
bool ExportFFmpeg::AddTags(const Tags *tags)
|
||||
{
|
||||
if (tags == NULL)
|
||||
{
|
||||
|
@ -891,7 +891,7 @@ bool ExportFFmpeg::AddTags(Tags *tags)
|
|||
return true;
|
||||
}
|
||||
|
||||
void ExportFFmpeg::SetMetadata(Tags *tags, const char *name, const wxChar *tag)
|
||||
void ExportFFmpeg::SetMetadata(const Tags *tags, const char *name, const wxChar *tag)
|
||||
{
|
||||
if (tags->HasTag(tag))
|
||||
{
|
||||
|
|
|
@ -190,12 +190,12 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
|
||||
private:
|
||||
|
||||
bool GetMetadata(AudacityProject *project, Tags *tags);
|
||||
bool GetMetadata(AudacityProject *project, const Tags *tags);
|
||||
|
||||
FLAC__StreamMetadata *mMetadata;
|
||||
};
|
||||
|
@ -225,7 +225,7 @@ int ExportFLAC::Export(AudacityProject *project,
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec,
|
||||
Tags *metadata,
|
||||
const Tags *metadata,
|
||||
int WXUNUSED(subformat))
|
||||
{
|
||||
double rate = project->GetRate();
|
||||
|
@ -380,7 +380,7 @@ wxWindow *ExportFLAC::OptionsCreate(wxWindow *parent, int format)
|
|||
// expects that array to be valid until the stream is initialized.
|
||||
//
|
||||
// This has been fixed in 1.1.4.
|
||||
bool ExportFLAC::GetMetadata(AudacityProject *project, Tags *tags)
|
||||
bool ExportFLAC::GetMetadata(AudacityProject *project, const Tags *tags)
|
||||
{
|
||||
// Retrieve tags if needed
|
||||
if (tags == NULL)
|
||||
|
|
|
@ -181,12 +181,12 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
|
||||
private:
|
||||
|
||||
int AddTags(AudacityProject *project, char **buffer, bool *endOfFile, Tags *tags);
|
||||
int AddTags(AudacityProject *project, char **buffer, bool *endOfFile, const Tags *tags);
|
||||
#ifdef USE_LIBID3TAG
|
||||
void AddFrame(struct id3_tag *tp, const wxString & n, const wxString & v, const char *name);
|
||||
#endif
|
||||
|
@ -211,7 +211,7 @@ void ExportMP2::Destroy()
|
|||
|
||||
int ExportMP2::Export(AudacityProject *project,
|
||||
int channels, const wxString &fName,
|
||||
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata,
|
||||
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, const Tags *metadata,
|
||||
int WXUNUSED(subformat))
|
||||
{
|
||||
bool stereo = (channels == 2);
|
||||
|
@ -339,7 +339,7 @@ wxWindow *ExportMP2::OptionsCreate(wxWindow *parent, int format)
|
|||
}
|
||||
|
||||
// returns buffer len; caller frees
|
||||
int ExportMP2::AddTags(AudacityProject * WXUNUSED(project), char **buffer, bool *endOfFile, Tags *tags)
|
||||
int ExportMP2::AddTags(AudacityProject * WXUNUSED(project), char **buffer, bool *endOfFile, const Tags *tags)
|
||||
{
|
||||
#ifdef USE_LIBID3TAG
|
||||
struct id3_tag *tp = id3_tag_new();
|
||||
|
|
|
@ -1569,7 +1569,7 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
|
||||
private:
|
||||
|
@ -1577,7 +1577,7 @@ private:
|
|||
int FindValue(CHOICES *choices, int cnt, int needle, int def);
|
||||
wxString FindName(CHOICES *choices, int cnt, int needle);
|
||||
int AskResample(int bitrate, int rate, int lowrate, int highrate);
|
||||
int AddTags(AudacityProject *project, char **buffer, bool *endOfFile, Tags *tags);
|
||||
int AddTags(AudacityProject *project, char **buffer, bool *endOfFile, const Tags *tags);
|
||||
#ifdef USE_LIBID3TAG
|
||||
void AddFrame(struct id3_tag *tp, const wxString & n, const wxString & v, const char *name);
|
||||
#endif
|
||||
|
@ -1624,7 +1624,7 @@ int ExportMP3::Export(AudacityProject *project,
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec,
|
||||
Tags *metadata,
|
||||
const Tags *metadata,
|
||||
int WXUNUSED(subformat))
|
||||
{
|
||||
int rate = lrint(project->GetRate());
|
||||
|
@ -1965,7 +1965,7 @@ int ExportMP3::AskResample(int bitrate, int rate, int lowrate, int highrate)
|
|||
}
|
||||
|
||||
// returns buffer len; caller frees
|
||||
int ExportMP3::AddTags(AudacityProject *WXUNUSED(project), char **buffer, bool *endOfFile, Tags *tags)
|
||||
int ExportMP3::AddTags(AudacityProject *WXUNUSED(project), char **buffer, bool *endOfFile, const Tags *tags)
|
||||
{
|
||||
#ifdef USE_LIBID3TAG
|
||||
struct id3_tag *tp = id3_tag_new();
|
||||
|
|
|
@ -911,7 +911,7 @@ int ExportMultiple::DoExport(int channels,
|
|||
bool selectedOnly,
|
||||
double t0,
|
||||
double t1,
|
||||
Tags tags)
|
||||
const Tags &tags)
|
||||
{
|
||||
wxLogDebug(wxT("Doing multiple Export: File name \"%s\""), (name.GetFullName()).c_str());
|
||||
wxLogDebug(wxT("Channels: %i, Start: %lf, End: %lf "), channels, t0, t1);
|
||||
|
|
|
@ -79,7 +79,7 @@ private:
|
|||
bool selectedOnly,
|
||||
double t0,
|
||||
double t1,
|
||||
Tags tags);
|
||||
const Tags &tags);
|
||||
/** \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 */
|
||||
|
|
|
@ -140,12 +140,12 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
|
||||
private:
|
||||
|
||||
bool FillComment(AudacityProject *project, vorbis_comment *comment, Tags *metadata);
|
||||
bool FillComment(AudacityProject *project, vorbis_comment *comment, const Tags *metadata);
|
||||
};
|
||||
|
||||
ExportOGG::ExportOGG()
|
||||
|
@ -171,7 +171,7 @@ int ExportOGG::Export(AudacityProject *project,
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec,
|
||||
Tags *metadata,
|
||||
const Tags *metadata,
|
||||
int WXUNUSED(subformat))
|
||||
{
|
||||
double rate = project->GetRate();
|
||||
|
@ -341,7 +341,7 @@ wxWindow *ExportOGG::OptionsCreate(wxWindow *parent, int format)
|
|||
return safenew ExportOGGOptions(parent, format);
|
||||
}
|
||||
|
||||
bool ExportOGG::FillComment(AudacityProject *project, vorbis_comment *comment, Tags *metadata)
|
||||
bool ExportOGG::FillComment(AudacityProject *project, vorbis_comment *comment, const Tags *metadata)
|
||||
{
|
||||
// Retrieve tags from project if not over-ridden
|
||||
if (metadata == NULL)
|
||||
|
|
|
@ -320,7 +320,7 @@ public:
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec = NULL,
|
||||
Tags *metadata = NULL,
|
||||
const Tags *metadata = NULL,
|
||||
int subformat = 0) override;
|
||||
// optional
|
||||
wxString GetExtension(int index);
|
||||
|
@ -329,8 +329,8 @@ public:
|
|||
private:
|
||||
|
||||
char *AdjustString(const wxString & wxStr, int sf_format);
|
||||
bool AddStrings(AudacityProject *project, SNDFILE *sf, Tags *tags, int sf_format);
|
||||
void AddID3Chunk(wxString fName, Tags *tags, int sf_format);
|
||||
bool AddStrings(AudacityProject *project, SNDFILE *sf, const Tags *tags, int sf_format);
|
||||
void AddID3Chunk(wxString fName, const Tags *tags, int sf_format);
|
||||
|
||||
};
|
||||
|
||||
|
@ -395,7 +395,7 @@ int ExportPCM::Export(AudacityProject *project,
|
|||
double t0,
|
||||
double t1,
|
||||
MixerSpec *mixerSpec,
|
||||
Tags *metadata,
|
||||
const Tags *metadata,
|
||||
int subformat)
|
||||
{
|
||||
double rate = project->GetRate();
|
||||
|
@ -664,7 +664,7 @@ char *ExportPCM::AdjustString(const wxString & wxStr, int sf_format)
|
|||
return pDest;
|
||||
}
|
||||
|
||||
bool ExportPCM::AddStrings(AudacityProject * WXUNUSED(project), SNDFILE *sf, Tags *tags, int sf_format)
|
||||
bool ExportPCM::AddStrings(AudacityProject * WXUNUSED(project), SNDFILE *sf, const Tags *tags, int sf_format)
|
||||
{
|
||||
if (tags->HasTag(TAG_TITLE)) {
|
||||
char * ascii7Str = AdjustString(tags->GetTag(TAG_TITLE), sf_format);
|
||||
|
@ -741,7 +741,7 @@ bool ExportPCM::AddStrings(AudacityProject * WXUNUSED(project), SNDFILE *sf, Tag
|
|||
return true;
|
||||
}
|
||||
|
||||
void ExportPCM::AddID3Chunk(wxString fName, Tags *tags, int sf_format)
|
||||
void ExportPCM::AddID3Chunk(wxString fName, const Tags *tags, int sf_format)
|
||||
{
|
||||
#ifdef USE_LIBID3TAG
|
||||
struct id3_tag *tp = id3_tag_new();
|
||||
|
|
Loading…
Reference in New Issue