clang-tidy: Use override keyword

run-clang-tidy -header-filter='.*' -checks='-*,modernize-use-override' -fix
This commit is contained in:
Urs Fleisch 2023-07-15 15:54:03 +02:00
parent e20a53afbb
commit 9867bc947e
82 changed files with 587 additions and 587 deletions

View File

@ -42,7 +42,7 @@ namespace utf8
uint32_t cp;
public:
invalid_code_point(uint32_t codepoint) : cp(codepoint) {}
virtual const char* what() const throw() { return "Invalid code point"; }
const char* what() const throw() override { return "Invalid code point"; }
uint32_t code_point() const {return cp;}
};
@ -50,7 +50,7 @@ namespace utf8
uint8_t u8;
public:
invalid_utf8 (uint8_t u) : u8(u) {}
virtual const char* what() const throw() { return "Invalid UTF-8"; }
const char* what() const throw() override { return "Invalid UTF-8"; }
uint8_t utf8_octet() const {return u8;}
};
@ -58,13 +58,13 @@ namespace utf8
uint16_t u16;
public:
invalid_utf16 (uint16_t u) : u16(u) {}
virtual const char* what() const throw() { return "Invalid UTF-16"; }
const char* what() const throw() override { return "Invalid UTF-16"; }
uint16_t utf16_word() const {return u16;}
};
class not_enough_room : public exception {
public:
virtual const char* what() const throw() { return "Not enough space"; }
const char* what() const throw() override { return "Not enough space"; }
};
/// The library API - functions intended to be called by the users

View File

@ -107,39 +107,39 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file. This will be an APE tag, an ID3v1 tag
* or a combination of the two.
*/
virtual TagLib::Tag *tag() const;
TagLib::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* If the file contains both an APE and an ID3v1 tag, only APE
* will be converted to the PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Removes unsupported properties. Forwards to the actual Tag's
* removeUnsupportedProperties() function.
*/
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* Creates an APEv2 tag if necessary. A potentially existing ID3v1
* tag will be updated as well.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the APE::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
@ -147,7 +147,7 @@ namespace TagLib {
* \note According to the official Monkey's Audio SDK, an APE file
* can only have either ID3V1 or APE tags, so a parameter is used here.
*/
virtual bool save();
bool save() override;
/*!
* Returns a pointer to the ID3v1 tag of the file.

View File

@ -59,29 +59,29 @@ namespace TagLib {
/*!
* Destroys this APE::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -71,7 +71,7 @@ namespace TagLib {
/*!
* Destroys this Tag instance.
*/
virtual ~Tag();
~Tag() override;
/*!
* Renders the in memory values to a ByteVector suitable for writing to
@ -87,21 +87,21 @@ namespace TagLib {
// Reimplementations.
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
/*!
* Implements the unified tag dictionary interface -- export function.
@ -117,9 +117,9 @@ namespace TagLib {
* TRACK to TRACKNUMBER, YEAR to DATE, and ALBUM ARTIST to ALBUMARTIST, respectively,
* in order to be compliant with the names used in other formats.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified tag dictionary interface -- import function. The same
@ -127,7 +127,7 @@ namespace TagLib {
* specification requires keys to have between 2 and 16 printable ASCII characters
* with the exception of the fixed strings "ID3", "TAG", "OGGS", and "MP+".
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Check if the given String is a valid APE tag key.
@ -181,7 +181,7 @@ namespace TagLib {
/*!
* Returns true if the tag does not contain any data.
*/
bool isEmpty() const;
bool isEmpty() const override;
protected:

View File

@ -114,56 +114,56 @@ class ASF::File::FilePrivate::UnknownObject : public ASF::File::FilePrivate::Bas
ByteVector myGuid;
public:
UnknownObject(const ByteVector &guid);
ByteVector guid() const;
ByteVector guid() const override;
};
class ASF::File::FilePrivate::FilePropertiesObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
};
class ASF::File::FilePrivate::StreamPropertiesObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
};
class ASF::File::FilePrivate::ContentDescriptionObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector render(ASF::File *file);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
ByteVector render(ASF::File *file) override;
};
class ASF::File::FilePrivate::ExtendedContentDescriptionObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVectorList attributeData;
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector render(ASF::File *file);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
ByteVector render(ASF::File *file) override;
};
class ASF::File::FilePrivate::MetadataObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVectorList attributeData;
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector render(ASF::File *file);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
ByteVector render(ASF::File *file) override;
};
class ASF::File::FilePrivate::MetadataLibraryObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVectorList attributeData;
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector render(ASF::File *file);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
ByteVector render(ASF::File *file) override;
};
class ASF::File::FilePrivate::HeaderExtensionObject : public ASF::File::FilePrivate::BaseObject
@ -171,16 +171,16 @@ class ASF::File::FilePrivate::HeaderExtensionObject : public ASF::File::FilePriv
public:
List<ASF::File::FilePrivate::BaseObject *> objects;
HeaderExtensionObject();
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector render(ASF::File *file);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
ByteVector render(ASF::File *file) override;
};
class ASF::File::FilePrivate::CodecListObject : public ASF::File::FilePrivate::BaseObject
{
public:
ByteVector guid() const;
void parse(ASF::File *file, unsigned int size);
ByteVector guid() const override;
void parse(ASF::File *file, unsigned int size) override;
private:
enum CodecType

View File

@ -71,7 +71,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns a pointer to the ASF tag of the file.
@ -83,35 +83,35 @@ namespace TagLib {
* deleted by the user. It will be deleted when the file (object) is
* destroyed.
*/
virtual Tag *tag() const;
Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Removes unsupported properties. Forwards to the actual Tag's
* removeUnsupportedProperties() function.
*/
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the ASF audio properties for this file.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns whether or not the given \a stream can be opened as an ASF

View File

@ -76,29 +76,29 @@ namespace TagLib {
/*!
* Destroys this ASF::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -47,34 +47,34 @@ namespace TagLib {
Tag();
virtual ~Tag();
~Tag() override;
/*!
* Returns the track name.
*/
virtual String title() const;
String title() const override;
/*!
* Returns the artist name.
*/
virtual String artist() const;
String artist() const override;
/*!
* Returns the album name; if no album name is present in the tag
* String::null will be returned.
*/
virtual String album() const;
String album() const override;
/*!
* Returns the track comment.
*/
virtual String comment() const;
String comment() const override;
/*!
* Returns the genre name; if no genre is present in the tag String::null
* will be returned.
*/
virtual String genre() const;
String genre() const override;
/*!
* Returns the rating.
@ -90,34 +90,34 @@ namespace TagLib {
/*!
* Returns the year; if there is no year set, this will return 0.
*/
virtual unsigned int year() const;
unsigned int year() const override;
/*!
* Returns the track number; if there is no track number set, this will
* return 0.
*/
virtual unsigned int track() const;
unsigned int track() const override;
/*!
* Sets the title to \a s.
*/
virtual void setTitle(const String &s);
void setTitle(const String &s) override;
/*!
* Sets the artist to \a s.
*/
virtual void setArtist(const String &s);
void setArtist(const String &s) override;
/*!
* Sets the album to \a s. If \a s is String::null then this value will be
* cleared.
*/
virtual void setAlbum(const String &s);
void setAlbum(const String &s) override;
/*!
* Sets the comment to \a s.
*/
virtual void setComment(const String &s);
void setComment(const String &s) override;
/*!
* Sets the rating to \a s.
@ -132,24 +132,24 @@ namespace TagLib {
/*!
* Sets the genre to \a s.
*/
virtual void setGenre(const String &s);
void setGenre(const String &s) override;
/*!
* Sets the year to \a i. If \a s is 0 then this value will be cleared.
*/
virtual void setYear(unsigned int i);
void setYear(unsigned int i) override;
/*!
* Sets the track to \a i. If \a s is 0 then this value will be cleared.
*/
virtual void setTrack(unsigned int i);
void setTrack(unsigned int i) override;
/*!
* Returns true if the tag does not contain any data. This should be
* reimplemented in subclasses that provide more than the basic tagging
* abilities in this class.
*/
virtual bool isEmpty() const;
bool isEmpty() const override;
/*!
* \warning You should not modify this data structure directly, instead
@ -197,9 +197,9 @@ namespace TagLib {
*/
void addAttribute(const String &name, const Attribute &attribute);
PropertyMap properties() const;
void removeUnsupportedProperties(const StringList& properties);
PropertyMap setProperties(const PropertyMap &properties);
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList& properties) override;
PropertyMap setProperties(const PropertyMap &properties) override;
private:

View File

@ -301,7 +301,7 @@ public:
file(0),
stream(0) {}
~FileRefPrivate() {
~FileRefPrivate() override {
delete file;
delete stream;
}

View File

@ -118,7 +118,7 @@ namespace TagLib {
/*!
* Destroys this StreamTypeResolver instance.
*/
virtual ~StreamTypeResolver() = 0;
~StreamTypeResolver() override = 0;
virtual File *createFileFromStream(IOStream *stream,
bool readAudioProperties = true,

View File

@ -128,7 +128,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file. This will be a union of XiphComment,
@ -138,7 +138,7 @@ namespace TagLib {
* \see ID3v1Tag()
* \see XiphComment()
*/
virtual TagLib::Tag *tag() const;
TagLib::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
@ -146,9 +146,9 @@ namespace TagLib {
* only the first one (in the order XiphComment, ID3v2, ID3v1) will be
* converted to the PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &);
void removeUnsupportedProperties(const StringList &) override;
/*!
* Implements the unified property interface -- import function.
@ -157,13 +157,13 @@ namespace TagLib {
* Ignores any changes to ID3v1 or ID3v2 comments since they are not allowed
* in the FLAC specification.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the FLAC::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file. This will primarily save the XiphComment, but
@ -172,7 +172,7 @@ namespace TagLib {
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns a pointer to the ID3v2 tag of the file.

View File

@ -88,7 +88,7 @@ namespace TagLib {
Picture();
Picture(const ByteVector &data);
~Picture();
~Picture() override;
/*!
* Returns the type of the image.
@ -177,12 +177,12 @@ namespace TagLib {
/*!
* Returns the FLAC metadata block type.
*/
int code() const;
int code() const override;
/*!
* Render the content to the FLAC picture block format.
*/
ByteVector render() const;
ByteVector render() const override;
/*!
* Parse the picture data in the FLAC picture block format.

View File

@ -55,29 +55,29 @@ namespace TagLib {
/*!
* Destroys this FLAC::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample as read from the FLAC

View File

@ -37,12 +37,12 @@ namespace TagLib {
{
public:
UnknownMetadataBlock(int blockType, const ByteVector &data);
~UnknownMetadataBlock();
~UnknownMetadataBlock() override;
/*!
* Returns the FLAC metadata block type.
*/
int code() const;
int code() const override;
/*!
* Sets the FLAC metadata block type.
@ -62,7 +62,7 @@ namespace TagLib {
/*!
* Render the content of the block.
*/
ByteVector render() const;
ByteVector render() const override;
private:
UnknownMetadataBlock(const MetadataBlock &item);

View File

@ -63,15 +63,15 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
Mod::Tag *tag() const;
Mod::Tag *tag() const override;
/*!
* Returns the IT::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
IT::Properties *audioProperties() const;
IT::Properties *audioProperties() const override;
/*!
* Save the file.
@ -79,7 +79,7 @@ namespace TagLib {
*
* \note Saving Impulse Tracker tags is not supported.
*/
bool save();
bool save() override;
private:

View File

@ -53,41 +53,41 @@ namespace TagLib {
};
Properties(AudioProperties::ReadStyle propertiesStyle);
virtual ~Properties();
~Properties() override;
int channels() const;
int channels() const override;
unsigned short lengthInPatterns() const;
bool stereo() const;
unsigned short instrumentCount() const;
unsigned short sampleCount() const;
unsigned short patternCount() const;
unsigned short version() const;
unsigned short lengthInPatterns() const;
bool stereo() const;
unsigned short instrumentCount() const;
unsigned short sampleCount() const;
unsigned short patternCount() const;
unsigned short version() const;
unsigned short compatibleVersion() const;
unsigned short flags() const;
unsigned short special() const;
unsigned char globalVolume() const;
unsigned char mixVolume() const;
unsigned char tempo() const;
unsigned char bpmSpeed() const;
unsigned char panningSeparation() const;
unsigned char pitchWheelDepth() const;
unsigned short flags() const;
unsigned short special() const;
unsigned char globalVolume() const;
unsigned char mixVolume() const;
unsigned char tempo() const;
unsigned char bpmSpeed() const;
unsigned char panningSeparation() const;
unsigned char pitchWheelDepth() const;
void setChannels(int channels);
void setLengthInPatterns(unsigned short lengthInPatterns);
void setInstrumentCount(unsigned short instrumentCount);
void setSampleCount (unsigned short sampleCount);
void setSampleCount(unsigned short sampleCount);
void setPatternCount(unsigned short patternCount);
void setVersion (unsigned short version);
void setVersion(unsigned short version);
void setCompatibleVersion(unsigned short compatibleVersion);
void setFlags (unsigned short flags);
void setSpecial (unsigned short special);
void setFlags(unsigned short flags);
void setSpecial(unsigned short special);
void setGlobalVolume(unsigned char globalVolume);
void setMixVolume (unsigned char mixVolume);
void setTempo (unsigned char tempo);
void setBpmSpeed (unsigned char bpmSpeed);
void setMixVolume(unsigned char mixVolume);
void setTempo(unsigned char tempo);
void setBpmSpeed(unsigned char bpmSpeed);
void setPanningSeparation(unsigned char panningSeparation);
void setPitchWheelDepth (unsigned char pitchWheelDepth);
void setPitchWheelDepth(unsigned char pitchWheelDepth);
private:
Properties(const Properties&);

View File

@ -66,26 +66,26 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
Mod::Tag *tag() const;
Mod::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* Forwards to Mod::Tag::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
* Forwards to Mod::Tag::setProperties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the Mod::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
Mod::Properties *audioProperties() const;
Mod::Properties *audioProperties() const override;
/*!
* Save the file.
@ -93,7 +93,7 @@ namespace TagLib {
*
* \note Saving Protracker tags is not supported.
*/
bool save();
bool save() override;
private:
File(const File &);

View File

@ -35,13 +35,13 @@ namespace TagLib {
{
public:
Properties(AudioProperties::ReadStyle propertiesStyle);
virtual ~Properties();
~Properties() override;
int bitrate() const;
int sampleRate() const;
int channels() const;
int bitrate() const override;
int sampleRate() const override;
int channels() const override;
unsigned int instrumentCount() const;
unsigned int instrumentCount() const;
unsigned char lengthInPatterns() const;
void setChannels(int channels);

View File

@ -46,45 +46,45 @@ namespace TagLib {
{
public:
Tag();
virtual ~Tag();
~Tag() override;
/*!
* Returns the track name; if no track name is present in the tag
* String::null will be returned.
*/
virtual String title() const;
String title() const override;
/*!
* Not supported by module files. Therefore always returns String::null.
*/
virtual String artist() const;
String artist() const override;
/*!
* Not supported by module files. Therefore always returns String::null.
*/
virtual String album() const;
String album() const override;
/*!
* Returns the track comment derived from the instrument/sample/pattern
* names; if no comment is present in the tag String::null will be
* returned.
*/
virtual String comment() const;
String comment() const override;
/*!
* Not supported by module files. Therefore always returns String::null.
*/
virtual String genre() const;
String genre() const override;
/*!
* Not supported by module files. Therefore always returns 0.
*/
virtual unsigned int year() const;
unsigned int year() const override;
/*!
* Not supported by module files. Therefore always returns 0.
*/
virtual unsigned int track() const;
unsigned int track() const override;
/*!
* Returns the name of the tracker used to create/edit the module file.
@ -103,17 +103,17 @@ namespace TagLib {
* Mod 20 characters, S3M 27 characters, IT 25 characters and XM 20
* characters.
*/
virtual void setTitle(const String &title);
void setTitle(const String &title) override;
/*!
* Not supported by module files and therefore ignored.
*/
virtual void setArtist(const String &artist);
void setArtist(const String &artist) override;
/*!
* Not supported by module files and therefore ignored.
*/
virtual void setAlbum(const String &album);
void setAlbum(const String &album) override;
/*!
* Sets the comment to \a comment. If \a comment is String::null then
@ -132,22 +132,22 @@ namespace TagLib {
* Mod 22 characters, S3M 27 characters, IT 25 characters and XM 22
* characters.
*/
virtual void setComment(const String &comment);
void setComment(const String &comment) override;
/*!
* Not supported by module files and therefore ignored.
*/
virtual void setGenre(const String &genre);
void setGenre(const String &genre) override;
/*!
* Not supported by module files and therefore ignored.
*/
virtual void setYear(unsigned int year);
void setYear(unsigned int year) override;
/*!
* Not supported by module files and therefore ignored.
*/
virtual void setTrack(unsigned int track);
void setTrack(unsigned int track) override;
/*!
* Sets the tracker name to \a trackerName. If \a trackerName is
@ -165,7 +165,7 @@ namespace TagLib {
* Implements the unified property interface -- export function.
* Since the module tag is very limited, the exported map is as well.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
@ -175,7 +175,7 @@ namespace TagLib {
* all but the first will be contained in the returned map of unsupported
* properties.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
private:
Tag(const Tag &);

View File

@ -83,7 +83,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns a pointer to the MP4 tag of the file.
@ -95,35 +95,35 @@ namespace TagLib {
* deleted by the user. It will be deleted when the file (object) is
* destroyed.
*/
Tag *tag() const;
Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Removes unsupported properties. Forwards to the actual Tag's
* removeUnsupportedProperties() function.
*/
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the MP4 audio properties for this file.
*/
Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file.
*
* This returns true if the save was successful.
*/
bool save();
bool save() override;
/*!
* This will strip the tags that match the OR-ed together TagTypes from the

View File

@ -45,29 +45,29 @@ namespace TagLib {
};
Properties(File *file, Atoms *atoms, ReadStyle style = Average);
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -44,26 +44,26 @@ namespace TagLib {
public:
Tag();
Tag(TagLib::File *file, Atoms *atoms);
virtual ~Tag();
~Tag() override;
bool save();
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &value);
virtual void setArtist(const String &value);
virtual void setAlbum(const String &value);
virtual void setComment(const String &value);
virtual void setGenre(const String &value);
virtual void setYear(unsigned int value);
virtual void setTrack(unsigned int value);
void setTitle(const String &value) override;
void setArtist(const String &value) override;
void setAlbum(const String &value) override;
void setComment(const String &value) override;
void setGenre(const String &value) override;
void setYear(unsigned int value) override;
void setTrack(unsigned int value) override;
virtual bool isEmpty() const;
bool isEmpty() const override;
/*!
* Returns a string-keyed map of the MP4::Items for this tag.
@ -96,9 +96,9 @@ namespace TagLib {
*/
bool strip();
PropertyMap properties() const;
void removeUnsupportedProperties(const StringList& properties);
PropertyMap setProperties(const PropertyMap &properties);
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList& properties) override;
PropertyMap setProperties(const PropertyMap &properties) override;
protected:
/*!

View File

@ -107,42 +107,42 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file. This will be an APE tag, an ID3v1 tag
* or a combination of the two.
*/
virtual TagLib::Tag *tag() const;
TagLib::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* If the file contains both an APE and an ID3v1 tag, only the APE
* tag will be converted to the PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* Affects only the APEv2 tag which will be created if necessary.
* If an ID3v1 tag exists, it will be updated as well.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the MPC::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns a pointer to the ID3v1 tag of the file.

View File

@ -57,29 +57,29 @@ namespace TagLib {
/*!
* Destroys this MPC::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the version of the bitstream (SV4-SV8)

View File

@ -119,7 +119,7 @@ namespace TagLib {
/*!
* Destroys this Tag instance.
*/
virtual ~Tag();
~Tag() override;
/*!
* Renders the in memory values to a ByteVector suitable for writing to
@ -135,21 +135,21 @@ namespace TagLib {
// Reimplementations.
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
/*!
* Returns the genre in number.

View File

@ -111,12 +111,12 @@ namespace TagLib {
/*!
* Destroys the AttahcedPictureFrame instance.
*/
virtual ~AttachedPictureFrame();
~AttachedPictureFrame() override;
/*!
* Returns a string containing the description and mime-type
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the text encoding used for the description.
@ -203,8 +203,8 @@ namespace TagLib {
void setPicture(const ByteVector &p);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
class AttachedPictureFramePrivate;
AttachedPictureFramePrivate *d;
@ -219,7 +219,7 @@ namespace TagLib {
class TAGLIB_EXPORT AttachedPictureFrameV22 : public AttachedPictureFrame
{
protected:
virtual void parseFields(const ByteVector &data);
void parseFields(const ByteVector &data) override;
private:
AttachedPictureFrameV22(const ByteVector &data, Header *h);
friend class FrameFactory;

View File

@ -69,7 +69,7 @@ namespace TagLib {
/*!
* Destroys the frame.
*/
virtual ~ChapterFrame();
~ChapterFrame() override;
/*!
* Returns the element ID of the frame. Element ID
@ -218,9 +218,9 @@ namespace TagLib {
*/
void removeEmbeddedFrames(const ByteVector &id);
virtual String toString() const;
String toString() const override;
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* CHAP frames each have a unique element ID. This searches for a CHAP
@ -232,8 +232,8 @@ namespace TagLib {
static ChapterFrame *findByElementID(const Tag *tag, const ByteVector &eID);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
ChapterFrame(const ID3v2::Header *tagHeader, const ByteVector &data, Header *h);

View File

@ -59,14 +59,14 @@ namespace TagLib {
/*!
* Destroys this CommentFrame instance.
*/
virtual ~CommentsFrame();
~CommentsFrame() override;
/*!
* Returns the text of this comment.
*
* \see text()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the language encoding as a 3 byte encoding as specified by
@ -115,7 +115,7 @@ namespace TagLib {
*
* \see text()
*/
virtual void setText(const String &s);
void setText(const String &s) override;
/*!
* Returns the text encoding that will be used in rendering this frame.
@ -145,7 +145,7 @@ namespace TagLib {
* - otherwise, the key will be "COMMENT:<description>"
* - The single value will be the frame's text().
*/
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* Comments each have a unique description. This searches for a comment
@ -159,8 +159,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -131,12 +131,12 @@ namespace TagLib {
/*!
* Destroys this EventTimingCodesFrame instance.
*/
virtual ~EventTimingCodesFrame();
~EventTimingCodesFrame() override;
/*!
* Returns a null string.
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the timestamp format.
@ -165,8 +165,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -72,12 +72,12 @@ namespace TagLib {
/*!
* Destroys the GeneralEncapsulatedObjectFrame instance.
*/
virtual ~GeneralEncapsulatedObjectFrame();
~GeneralEncapsulatedObjectFrame() override;
/*!
* Returns a string containing the description, file name and mime-type
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the text encoding used for the description and file name.
@ -162,8 +162,8 @@ namespace TagLib {
void setObject(const ByteVector &object);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
GeneralEncapsulatedObjectFrame(const ByteVector &data, Header *h);

View File

@ -58,14 +58,14 @@ namespace TagLib {
/*!
* Destroys this OwnershipFrame instance.
*/
virtual ~OwnershipFrame();
~OwnershipFrame() override;
/*!
* Returns the text of this popularimeter.
*
* \see text()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the date purchased.
@ -131,8 +131,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -50,20 +50,20 @@ namespace TagLib {
/*!
* Destroys this PodcastFrame instance.
*/
virtual ~PodcastFrame();
~PodcastFrame() override;
/*!
* Returns a null string.
*/
virtual String toString() const;
String toString() const override;
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -58,14 +58,14 @@ namespace TagLib {
/*!
* Destroys this PopularimeterFrame instance.
*/
virtual ~PopularimeterFrame();
~PopularimeterFrame() override;
/*!
* Returns the text of this popularimeter.
*
* \see text()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the email.
@ -112,8 +112,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -56,14 +56,14 @@ namespace TagLib {
/*!
* Destroys this private frame instance.
*/
virtual ~PrivateFrame();
~PrivateFrame() override;
/*!
* Returns the text of this private frame, currently just the owner.
*
* \see text()
*/
virtual String toString() const;
String toString() const override;
/*!
* \return The owner of the private frame.
@ -90,8 +90,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -114,14 +114,14 @@ namespace TagLib {
/*!
* Destroys the RelativeVolumeFrame instance.
*/
virtual ~RelativeVolumeFrame();
~RelativeVolumeFrame() override;
/*!
* Returns the frame's identification.
*
* \see identification()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns a list of channels with information currently in the frame.
@ -214,8 +214,8 @@ namespace TagLib {
void setIdentification(const String &s);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
RelativeVolumeFrame(const ByteVector &data, Header *h);

View File

@ -109,14 +109,14 @@ namespace TagLib {
/*!
* Destroys this SynchronizedLyricsFrame instance.
*/
virtual ~SynchronizedLyricsFrame();
~SynchronizedLyricsFrame() override;
/*!
* Returns the description of this synchronized lyrics frame.
*
* \see description()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the text encoding that will be used in rendering this frame.
@ -211,8 +211,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -65,7 +65,7 @@ namespace TagLib {
/*!
* Destroys the frame.
*/
~TableOfContentsFrame();
~TableOfContentsFrame() override;
/*!
* Returns the elementID of the frame. Element ID
@ -220,9 +220,9 @@ namespace TagLib {
*/
void removeEmbeddedFrames(const ByteVector &id);
virtual String toString() const;
String toString() const override;
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* CTOC frames each have a unique element ID. This searches for a CTOC
@ -243,8 +243,8 @@ namespace TagLib {
static TableOfContentsFrame *findTopLevel(const Tag *tag);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
TableOfContentsFrame(const ID3v2::Header *tagHeader, const ByteVector &data, Header *h);

View File

@ -142,7 +142,7 @@ namespace TagLib {
/*!
* Destroys this TextIdentificationFrame instance.
*/
virtual ~TextIdentificationFrame();
~TextIdentificationFrame() override;
/*!
* Text identification frames are a list of string fields.
@ -158,8 +158,8 @@ namespace TagLib {
// Reimplementations.
virtual void setText(const String &s);
virtual String toString() const;
void setText(const String &s) override;
String toString() const override;
/*!
* Returns the text encoding that will be used in rendering this frame.
@ -195,13 +195,13 @@ namespace TagLib {
*/
static const KeyConversionMap &involvedPeopleMap();
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
/*!
* The constructor used by the FrameFactory.
@ -258,7 +258,7 @@ namespace TagLib {
*/
UserTextIdentificationFrame(const String &description, const StringList &values, String::Type encoding = String::UTF8);
virtual String toString() const;
String toString() const override;
/*!
* Returns the description for this frame.
@ -273,7 +273,7 @@ namespace TagLib {
void setDescription(const String &s);
StringList fieldList() const;
void setText(const String &text);
void setText(const String &text) override;
void setText(const StringList &fields);
/*!
@ -289,7 +289,7 @@ namespace TagLib {
* in the value list, in order to be compatible with TagLib which copies
* the description() into the fieldList().
*/
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* Searches for the user defined text frame with the description \a description

View File

@ -59,7 +59,7 @@ namespace TagLib {
/*!
* Destroys the frame.
*/
~UniqueFileIdentifierFrame();
~UniqueFileIdentifierFrame() override;
/*!
* Returns the owner for the frame; essentially this is the key for
@ -92,9 +92,9 @@ namespace TagLib {
*/
void setIdentifier(const ByteVector &v);
virtual String toString() const;
String toString() const override;
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* UFID frames each have a unique owner. This searches for a UFID
@ -105,8 +105,8 @@ namespace TagLib {
static UniqueFileIdentifierFrame *findByOwner(const Tag *tag, const String &o);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
UniqueFileIdentifierFrame(const UniqueFileIdentifierFrame &);

View File

@ -52,9 +52,9 @@ namespace TagLib {
public:
UnknownFrame(const ByteVector &data);
virtual ~UnknownFrame();
~UnknownFrame() override;
virtual String toString() const;
String toString() const override;
/*!
* Returns the field data (everything but the header) for this frame.
@ -62,8 +62,8 @@ namespace TagLib {
ByteVector data() const;
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
UnknownFrame(const ByteVector &data, Header *h);

View File

@ -57,14 +57,14 @@ namespace TagLib {
/*!
* Destroys this UnsynchronizedLyricsFrame instance.
*/
virtual ~UnsynchronizedLyricsFrame();
~UnsynchronizedLyricsFrame() override;
/*!
* Returns the text of this unsynchronized lyrics frame.
*
* \see text()
*/
virtual String toString() const;
String toString() const override;
/*!
* Returns the language encoding as a 3 byte encoding as specified by
@ -113,7 +113,7 @@ namespace TagLib {
*
* \see text()
*/
virtual void setText(const String &s);
void setText(const String &s) override;
/*!
* Returns the text encoding that will be used in rendering this frame.
@ -145,7 +145,7 @@ namespace TagLib {
* Note that currently the language() field is not supported by the PropertyMap
* interface.
*/
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* LyricsFrames each have a unique description. This searches for a lyrics
@ -159,8 +159,8 @@ namespace TagLib {
protected:
// Reimplementations.
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
/*!

View File

@ -53,7 +53,7 @@ namespace TagLib {
/*!
* Destroys this UrlLinkFrame instance.
*/
virtual ~UrlLinkFrame();
~UrlLinkFrame() override;
/*!
* Returns the URL.
@ -67,13 +67,13 @@ namespace TagLib {
// Reimplementations.
virtual void setText(const String &s);
virtual String toString() const;
virtual PropertyMap asProperties() const;
void setText(const String &s) override;
String toString() const override;
PropertyMap asProperties() const override;
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
/*!
* The constructor used by the FrameFactory.
@ -117,11 +117,11 @@ namespace TagLib {
/*!
* Destroys this UserUrlLinkFrame instance.
*/
virtual ~UserUrlLinkFrame();
~UserUrlLinkFrame() override;
// Reimplementations.
virtual String toString() const;
String toString() const override;
/*!
* Returns the text encoding that will be used in rendering this frame.
@ -160,7 +160,7 @@ namespace TagLib {
* characters), the returned map will contain an entry "WXXX/<description>"
* in its unsupportedData() list.
*/
virtual PropertyMap asProperties() const;
PropertyMap asProperties() const override;
/*!
* Searches for the user defined url frame with the description \a description
@ -169,8 +169,8 @@ namespace TagLib {
static UserUrlLinkFrame *find(Tag *tag, const String &description);
protected:
virtual void parseFields(const ByteVector &data);
virtual ByteVector renderFields() const;
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
/*!
* The constructor used by the FrameFactory.

View File

@ -152,27 +152,27 @@ namespace TagLib {
/*!
* Destroys this Tag instance.
*/
virtual ~Tag();
~Tag() override;
// Reimplementations.
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
virtual bool isEmpty() const;
bool isEmpty() const override;
/*!
* Returns a pointer to the tag's header.
@ -301,7 +301,7 @@ namespace TagLib {
* once, the description, separated by a "/".
*
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Removes unsupported frames given by \a properties. The elements of
@ -314,13 +314,13 @@ namespace TagLib {
* - "UNKNOWN/" + frameID, for frames that could not be parsed by TagLib.
* In that case, *all* unknown frames with the given ID will be removed.
*/
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* See the comments in properties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Render the tag back to binary data, suitable to be written to disk.

View File

@ -89,9 +89,9 @@ namespace
public:
AdapterFile(IOStream *stream) : File(stream) {}
Tag *tag() const { return 0; }
AudioProperties *audioProperties() const { return 0; }
bool save() { return false; }
Tag *tag() const override { return 0; }
AudioProperties *audioProperties() const override { return 0; }
bool save() override { return false; }
};
} // namespace

View File

@ -117,7 +117,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns a pointer to a tag that is the union of the ID3v2 and ID3v1
@ -136,7 +136,7 @@ namespace TagLib {
* \see ID3v2Tag()
* \see APETag()
*/
virtual Tag *tag() const;
Tag *tag() const override;
/*!
* Implements the reading part of the unified property interface.
@ -144,9 +144,9 @@ namespace TagLib {
* first one (in the order ID3v2, APE, ID3v1) will be converted to the
* PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the writing part of the unified tag dictionary interface.
@ -156,13 +156,13 @@ namespace TagLib {
* limitations of that format.
* The returned PropertyMap refers to the ID3v2 tag only.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the MPEG::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file. If at least one tag -- ID3v1 or ID3v2 -- exists this
@ -179,7 +179,7 @@ namespace TagLib {
*
* \see save(int tags)
*/
virtual bool save();
bool save() override;
/*!
* Save the file. This will attempt to save all of the tag types that are

View File

@ -57,29 +57,29 @@ namespace TagLib {
/*!
* Destroys this MPEG Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns a pointer to the Xing/VBRI header if one exists or null if no

View File

@ -87,7 +87,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file. This will always be a XiphComment.
@ -102,33 +102,33 @@ namespace TagLib {
*
* \see hasXiphComment()
*/
virtual XiphComment *tag() const;
XiphComment *tag() const override;
/*!
* Returns the FLAC::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Implements the unified property interface -- export function.
* This forwards directly to XiphComment::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified tag dictionary interface -- import function.
* Like properties(), this is a forwarder to the file's XiphComment.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Save the file. This will primarily save and update the XiphComment.
* Returns true if the save is successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns the length of the audio-stream, used by FLAC::Properties for

View File

@ -50,7 +50,7 @@ namespace TagLib {
class TAGLIB_EXPORT File : public TagLib::File
{
public:
virtual ~File();
~File() override;
/*!
* Returns the packet contents for the i-th packet (starting from zero)
@ -78,7 +78,7 @@ namespace TagLib {
*/
const PageHeader *lastPageHeader();
virtual bool save();
bool save() override;
protected:
/*!

View File

@ -79,39 +79,39 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the XiphComment for this file. XiphComment implements the tag
* interface, so this serves as the reimplementation of
* TagLib::File::tag().
*/
virtual Ogg::XiphComment *tag() const;
Ogg::XiphComment *tag() const override;
/*!
* Implements the unified property interface -- export function.
* This forwards directly to XiphComment::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified tag dictionary interface -- import function.
* Like properties(), this is a forwarder to the file's XiphComment.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the Opus::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns whether or not the given \a stream can be opened as an Opus

View File

@ -59,19 +59,19 @@ namespace TagLib {
/*!
* Destroys this Opus::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
@ -79,12 +79,12 @@ namespace TagLib {
* \note Always returns 48000, because Opus can decode any stream at a
* sample rate of 8, 12, 16, 24, or 48 kHz,
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* The Opus codec supports decoding at multiple sample rates, there is no

View File

@ -79,39 +79,39 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the XiphComment for this file. XiphComment implements the tag
* interface, so this serves as the reimplementation of
* TagLib::File::tag().
*/
virtual Ogg::XiphComment *tag() const;
Ogg::XiphComment *tag() const override;
/*!
* Implements the unified property interface -- export function.
* This forwards directly to XiphComment::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified tag dictionary interface -- import function.
* Like properties(), this is a forwarder to the file's XiphComment.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the Speex::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns whether or not the given \a stream can be opened as a Speex

View File

@ -59,19 +59,19 @@ namespace TagLib {
/*!
* Destroys this Speex::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the nominal bit rate as read from the Speex header in kb/s.
@ -81,12 +81,12 @@ namespace TagLib {
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the Speex version, currently "0" (as specified by the spec).

View File

@ -88,40 +88,40 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the XiphComment for this file. XiphComment implements the tag
* interface, so this serves as the reimplementation of
* TagLib::File::tag().
*/
virtual Ogg::XiphComment *tag() const;
Ogg::XiphComment *tag() const override;
/*!
* Implements the unified property interface -- export function.
* This forwards directly to XiphComment::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified tag dictionary interface -- import function.
* Like properties(), this is a forwarder to the file's XiphComment.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the Vorbis::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Save the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Check if the given \a stream can be opened as an Ogg Vorbis file.

View File

@ -67,29 +67,29 @@ namespace TagLib {
/*!
* Destroys this VorbisProperties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the Vorbis version, currently "0" (as specified by the spec).

View File

@ -83,25 +83,25 @@ namespace TagLib {
/*!
* Destroys this instance of the XiphComment.
*/
virtual ~XiphComment();
~XiphComment() override;
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
virtual bool isEmpty() const;
bool isEmpty() const override;
/*!
* Returns the number of fields present in the comment.
@ -153,7 +153,7 @@ namespace TagLib {
* comment is nothing more than a map from tag names to list of values,
* as is the dict interface).
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
@ -162,7 +162,7 @@ namespace TagLib {
* containing '=' or '~') in which case the according values will
* be contained in the returned PropertyMap.
*/
PropertyMap setProperties(const PropertyMap&);
PropertyMap setProperties(const PropertyMap&) override;
/*!
* Check if the given String is a valid Xiph comment key.

View File

@ -81,7 +81,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file.
@ -92,32 +92,32 @@ namespace TagLib {
*
* \see hasID3v2Tag()
*/
virtual ID3v2::Tag *tag() const;
ID3v2::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* This method forwards to ID3v2::Tag::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* This method forwards to ID3v2::Tag::setProperties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the AIFF::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
*/
virtual bool save();
bool save() override;
/*!
* Save using a specific ID3v2 version (e.g. v3)

View File

@ -55,29 +55,29 @@ namespace TagLib {
/*!
* Destroys this AIFF::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -49,7 +49,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
protected:

View File

@ -98,27 +98,27 @@ namespace TagLib {
*/
Tag(const ByteVector &data);
virtual ~Tag();
~Tag() override;
// Reimplementations
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
virtual bool isEmpty() const;
bool isEmpty() const override;
/*!
* Returns a copy of the internal fields of the tag. The returned map directly

View File

@ -93,7 +93,7 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the ID3v2 Tag for this file.
@ -101,7 +101,7 @@ namespace TagLib {
* \note This method does not return all the tags for this file for
* backward compatibility. Will be fixed in TagLib 2.0.
*/
ID3v2::Tag *tag() const;
ID3v2::Tag *tag() const override;
/*!
* Returns the ID3v2 Tag for this file.
@ -138,26 +138,26 @@ namespace TagLib {
* Implements the unified property interface -- export function.
* This method forwards to ID3v2::Tag::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* This method forwards to ID3v2::Tag::setProperties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the WAV::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
*/
virtual bool save();
bool save() override;
/*!
* Save the file. If \a strip is specified, it is possible to choose if

View File

@ -58,29 +58,29 @@ namespace TagLib {
/*!
* Destroys this WAV::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -67,27 +67,27 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
Mod::Tag *tag() const;
Mod::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* Forwards to Mod::Tag::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
* Forwards to Mod::Tag::setProperties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the S3M::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
S3M::Properties *audioProperties() const;
S3M::Properties *audioProperties() const override;
/*!
* Save the file.
@ -95,7 +95,7 @@ namespace TagLib {
*
* \note Saving ScreamTracker III tags is not supported.
*/
bool save();
bool save() override;
private:
File(const File &);

View File

@ -46,35 +46,35 @@ namespace TagLib {
};
Properties(AudioProperties::ReadStyle propertiesStyle);
virtual ~Properties();
~Properties() override;
int channels() const;
int channels() const override;
unsigned short lengthInPatterns() const;
bool stereo() const;
unsigned short sampleCount() const;
unsigned short patternCount() const;
unsigned short flags() const;
unsigned short trackerVersion() const;
unsigned short lengthInPatterns() const;
bool stereo() const;
unsigned short sampleCount() const;
unsigned short patternCount() const;
unsigned short flags() const;
unsigned short trackerVersion() const;
unsigned short fileFormatVersion() const;
unsigned char globalVolume() const;
unsigned char masterVolume() const;
unsigned char tempo() const;
unsigned char bpmSpeed() const;
unsigned char globalVolume() const;
unsigned char masterVolume() const;
unsigned char tempo() const;
unsigned char bpmSpeed() const;
void setChannels(int channels);
void setLengthInPatterns (unsigned short lengthInPatterns);
void setStereo (bool stereo);
void setSampleCount (unsigned short sampleCount);
void setPatternCount (unsigned short patternCount);
void setFlags (unsigned short flags);
void setTrackerVersion (unsigned short trackerVersion);
void setLengthInPatterns(unsigned short lengthInPatterns);
void setStereo(bool stereo);
void setSampleCount(unsigned short sampleCount);
void setPatternCount(unsigned short patternCount);
void setFlags(unsigned short flags);
void setTrackerVersion(unsigned short trackerVersion);
void setFileFormatVersion(unsigned short fileFormatVersion);
void setGlobalVolume (unsigned char globalVolume);
void setMasterVolume (unsigned char masterVolume);
void setTempo (unsigned char tempo);
void setBpmSpeed (unsigned char bpmSpeed);
void setGlobalVolume(unsigned char globalVolume);
void setMasterVolume(unsigned char masterVolume);
void setTempo(unsigned char tempo);
void setBpmSpeed(unsigned char bpmSpeed);
private:
Properties(const Properties&);

View File

@ -49,32 +49,32 @@ namespace TagLib {
*/
TagUnion(Tag *first = 0, Tag *second = 0, Tag *third = 0);
virtual ~TagUnion();
~TagUnion() override;
Tag *operator[](int index) const;
Tag *tag(int index) const;
void set(int index, Tag *tag);
virtual PropertyMap properties() const;
virtual void removeUnsupportedProperties(const StringList &unsupported);
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &unsupported) override;
virtual String title() const;
virtual String artist() const;
virtual String album() const;
virtual String comment() const;
virtual String genre() const;
virtual unsigned int year() const;
virtual unsigned int track() const;
String title() const override;
String artist() const override;
String album() const override;
String comment() const override;
String genre() const override;
unsigned int year() const override;
unsigned int track() const override;
virtual void setTitle(const String &s);
virtual void setArtist(const String &s);
virtual void setAlbum(const String &s);
virtual void setComment(const String &s);
virtual void setGenre(const String &s);
virtual void setYear(unsigned int i);
virtual void setTrack(unsigned int i);
virtual bool isEmpty() const;
void setTitle(const String &s) override;
void setArtist(const String &s) override;
void setAlbum(const String &s) override;
void setComment(const String &s) override;
void setGenre(const String &s) override;
void setYear(unsigned int i) override;
void setTrack(unsigned int i) override;
bool isEmpty() const override;
template <class T> T *access(int index, bool create)
{

View File

@ -50,7 +50,7 @@ namespace TagLib {
/*!
* Destroys this ByteVectorList instance.
*/
virtual ~ByteVectorList();
~ByteVectorList() override;
/*!
* Make a shallow, implicitly shared, copy of \a l. Because this is

View File

@ -51,17 +51,17 @@ namespace TagLib {
/*!
* Destroys this ByteVectorStream instance.
*/
virtual ~ByteVectorStream();
~ByteVectorStream() override;
/*!
* Returns the file name in the local file system encoding.
*/
FileName name() const;
FileName name() const override;
/*!
* Reads a block of size \a length at the current get pointer.
*/
ByteVector readBlock(size_t length);
ByteVector readBlock(size_t length) override;
/*!
* Attempts to write the block \a data at the current get pointer. If the
@ -72,7 +72,7 @@ namespace TagLib {
* for a ByteVector. And even this function is significantly slower than
* doing output with a char[].
*/
void writeBlock(const ByteVector &data);
void writeBlock(const ByteVector &data) override;
/*!
* Insert \a data at position \a start in the file overwriting \a replace
@ -81,7 +81,7 @@ namespace TagLib {
* \note This method is slow since it requires rewriting all of the file
* after the insertion point.
*/
void insert(const ByteVector &data, offset_t start = 0, size_t replace = 0);
void insert(const ByteVector &data, offset_t start = 0, size_t replace = 0) override;
/*!
* Removes a block of the file starting a \a start and continuing for
@ -90,18 +90,18 @@ namespace TagLib {
* \note This method is slow since it involves rewriting all of the file
* after the removed portion.
*/
void removeBlock(offset_t start = 0, size_t length = 0);
void removeBlock(offset_t start = 0, size_t length = 0) override;
/*!
* Returns true if the file is read only (or if the file can not be opened).
*/
bool readOnly() const;
bool readOnly() const override;
/*!
* Since the file can currently only be opened as an argument to the
* constructor (sort-of by design), this returns if that open succeeded.
*/
bool isOpen() const;
bool isOpen() const override;
/*!
* Move the I/O pointer to \a offset in the file from position \a p. This
@ -109,27 +109,27 @@ namespace TagLib {
*
* \see Position
*/
void seek(offset_t offset, Position p = Beginning);
void seek(offset_t offset, Position p = Beginning) override;
/*!
* Reset the end-of-file and error flags on the file.
*/
void clear();
void clear() override;
/*!
* Returns the current offset within the file.
*/
offset_t tell() const;
offset_t tell() const override;
/*!
* Returns the length of the file.
*/
offset_t length();
offset_t length() override;
/*!
* Truncates the file to a \a length.
*/
void truncate(offset_t length);
void truncate(offset_t length) override;
ByteVector *data();

View File

@ -39,7 +39,7 @@ namespace
class DefaultListener : public DebugListener
{
public:
virtual void printMessage(const String &msg)
void printMessage(const String &msg) override
{
#ifdef _WIN32

View File

@ -62,17 +62,17 @@ namespace TagLib {
/*!
* Destroys this FileStream instance.
*/
virtual ~FileStream();
~FileStream() override;
/*!
* Returns the file name in the local file system encoding.
*/
FileName name() const;
FileName name() const override;
/*!
* Reads a block of size \a length at the current get pointer.
*/
ByteVector readBlock(size_t length);
ByteVector readBlock(size_t length) override;
/*!
* Attempts to write the block \a data at the current get pointer. If the
@ -83,7 +83,7 @@ namespace TagLib {
* for a ByteVector. And even this function is significantly slower than
* doing output with a char[].
*/
void writeBlock(const ByteVector &data);
void writeBlock(const ByteVector &data) override;
/*!
* Insert \a data at position \a start in the file overwriting \a replace
@ -92,7 +92,7 @@ namespace TagLib {
* \note This method is slow since it requires rewriting all of the file
* after the insertion point.
*/
void insert(const ByteVector &data, offset_t start = 0, size_t replace = 0);
void insert(const ByteVector &data, offset_t start = 0, size_t replace = 0) override;
/*!
* Removes a block of the file starting a \a start and continuing for
@ -101,18 +101,18 @@ namespace TagLib {
* \note This method is slow since it involves rewriting all of the file
* after the removed portion.
*/
void removeBlock(offset_t start = 0, size_t length = 0);
void removeBlock(offset_t start = 0, size_t length = 0) override;
/*!
* Returns true if the file is read only (or if the file can not be opened).
*/
bool readOnly() const;
bool readOnly() const override;
/*!
* Since the file can currently only be opened as an argument to the
* constructor (sort-of by design), this returns if that open succeeded.
*/
bool isOpen() const;
bool isOpen() const override;
/*!
* Move the I/O pointer to \a offset in the file from position \a p. This
@ -120,27 +120,27 @@ namespace TagLib {
*
* \see Position
*/
void seek(offset_t offset, Position p = Beginning);
void seek(offset_t offset, Position p = Beginning) override;
/*!
* Reset the end-of-file and error flags on the file.
*/
void clear();
void clear() override;
/*!
* Returns the current offset within the file.
*/
offset_t tell() const;
offset_t tell() const override;
/*!
* Returns the length of the file.
*/
offset_t length();
offset_t length() override;
/*!
* Truncates the file to a \a length.
*/
void truncate(offset_t length);
void truncate(offset_t length) override;
protected:

View File

@ -69,7 +69,7 @@ template <class TP> class List<T>::ListPrivate<TP *> : public ListPrivateBase
public:
ListPrivate() : ListPrivateBase() {}
ListPrivate(const std::list<TP *> &l) : ListPrivateBase(), list(l) {}
~ListPrivate() {
~ListPrivate() override {
clear();
}
void clear() {

View File

@ -133,7 +133,7 @@ namespace TagLib {
*/
PropertyMap(const SimplePropertyMap &m);
virtual ~PropertyMap();
~PropertyMap() override;
/*!
* Inserts \a values under \a key in the map. If \a key already exists,

View File

@ -74,7 +74,7 @@ namespace TagLib {
/*!
* Destroys this StringList instance.
*/
virtual ~StringList();
~StringList() override;
/*!
* Concatenate the list of strings into one string separated by \a separator.

View File

@ -131,39 +131,39 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file.
*/
virtual TagLib::Tag *tag() const;
TagLib::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* If the file contains both ID3v1 and v2 tags, only ID3v2 will be
* converted to the PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
* Creates in ID3v2 tag if necessary. If an ID3v1 tag exists, it will
* be updated as well, within the limitations of ID3v1.
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Returns the TrueAudio::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
*/
virtual bool save();
bool save() override;
/*!
* Returns a pointer to the ID3v1 tag of the file.

View File

@ -58,7 +58,7 @@ namespace TagLib {
/*!
* Destroys this TrueAudio::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in seconds. The length is rounded down to
@ -66,29 +66,29 @@ namespace TagLib {
*
* \see lengthInMilliseconds()
*/
virtual int lengthInSeconds() const;
int lengthInSeconds() const override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -101,42 +101,42 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
/*!
* Returns the Tag for this file. This will be an APE tag, an ID3v1 tag
* or a combination of the two.
*/
virtual TagLib::Tag *tag() const;
TagLib::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* If the file contains both an APE and an ID3v1 tag, only APE
* will be converted to the PropertyMap.
*/
PropertyMap properties() const;
PropertyMap properties() const override;
void removeUnsupportedProperties(const StringList &properties);
void removeUnsupportedProperties(const StringList &properties) override;
/*!
* Implements the unified property interface -- import function.
* Creates an APE tag if it does not exists and calls setProperties() on
* that. Any existing ID3v1 tag will be updated as well.
*/
PropertyMap setProperties(const PropertyMap&);
PropertyMap setProperties(const PropertyMap&) override;
/*!
* Returns the MPC::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
virtual Properties *audioProperties() const;
Properties *audioProperties() const override;
/*!
* Saves the file.
*
* This returns true if the save was successful.
*/
virtual bool save();
bool save() override;
/*!
* Returns a pointer to the ID3v1 tag of the file.

View File

@ -60,29 +60,29 @@ namespace TagLib {
/*!
* Destroys this WavPack::Properties instance.
*/
virtual ~Properties();
~Properties() override;
/*!
* Returns the length of the file in milliseconds.
*
* \see lengthInSeconds()
*/
virtual int lengthInMilliseconds() const;
int lengthInMilliseconds() const override;
/*!
* Returns the average bit rate of the file in kb/s.
*/
virtual int bitrate() const;
int bitrate() const override;
/*!
* Returns the sample rate in Hz. 0 means unknown or custom.
*/
virtual int sampleRate() const;
int sampleRate() const override;
/*!
* Returns the number of audio channels.
*/
virtual int channels() const;
int channels() const override;
/*!
* Returns the number of bits per audio sample.

View File

@ -93,14 +93,14 @@ public:
{
}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
unsigned int count = std::min(m_size, limit);
file.seek(count, TagLib::File::Current);
return count;
}
unsigned int size() const
unsigned int size() const override
{
return m_size;
}
@ -129,7 +129,7 @@ public:
{
}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
ByteVector data = file.readBlock(std::min(m_size, limit));
unsigned int count = data.size();
@ -142,7 +142,7 @@ public:
return count;
}
unsigned int size() const
unsigned int size() const override
{
return m_size;
}
@ -156,7 +156,7 @@ class ByteReader : public ValueReader<unsigned char>
public:
ByteReader(unsigned char &byte) : ValueReader<unsigned char>(byte) {}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
ByteVector data = file.readBlock(std::min(1U,limit));
if(data.size() > 0) {
@ -165,7 +165,7 @@ public:
return data.size();
}
unsigned int size() const
unsigned int size() const override
{
return 1;
}
@ -190,14 +190,14 @@ public:
U16Reader(unsigned short &value, bool bigEndian)
: NumberReader<unsigned short>(value, bigEndian) {}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
ByteVector data = file.readBlock(std::min(2U,limit));
value = data.toUShort(bigEndian);
return data.size();
}
unsigned int size() const
unsigned int size() const override
{
return 2;
}
@ -211,14 +211,14 @@ public:
{
}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
ByteVector data = file.readBlock(std::min(4U,limit));
value = data.toUInt(bigEndian);
return data.size();
}
unsigned int size() const
unsigned int size() const override
{
return 4;
}
@ -320,7 +320,7 @@ public:
return u32(number, true);
}
unsigned int size() const
unsigned int size() const override
{
unsigned int size = 0;
for(List<Reader*>::ConstIterator i = m_readers.begin();
@ -330,7 +330,7 @@ public:
return size;
}
unsigned int read(TagLib::File &file, unsigned int limit)
unsigned int read(TagLib::File &file, unsigned int limit) override
{
unsigned int sumcount = 0;
for(List<Reader*>::ConstIterator i = m_readers.begin();

View File

@ -67,27 +67,27 @@ namespace TagLib {
/*!
* Destroys this instance of the File.
*/
virtual ~File();
~File() override;
Mod::Tag *tag() const;
Mod::Tag *tag() const override;
/*!
* Implements the unified property interface -- export function.
* Forwards to Mod::Tag::properties().
*/
PropertyMap properties() const;
PropertyMap properties() const override;
/*!
* Implements the unified property interface -- import function.
* Forwards to Mod::Tag::setProperties().
*/
PropertyMap setProperties(const PropertyMap &);
PropertyMap setProperties(const PropertyMap &) override;
/*!
* Returns the XM::Properties for this file. If no audio properties
* were read then this will return a null pointer.
*/
XM::Properties *audioProperties() const;
XM::Properties *audioProperties() const override;
/*!
* Save the file.
@ -95,7 +95,7 @@ namespace TagLib {
*
* \note Saving Extended Module tags is not supported.
*/
bool save();
bool save() override;
private:
File(const File &);

View File

@ -41,19 +41,19 @@ namespace TagLib {
};
Properties(AudioProperties::ReadStyle propertiesStyle);
virtual ~Properties();
~Properties() override;
int channels() const;
int channels() const override;
unsigned short lengthInPatterns() const;
unsigned short version() const;
unsigned short restartPosition() const;
unsigned short patternCount() const;
unsigned short instrumentCount() const;
unsigned int sampleCount() const;
unsigned short flags() const;
unsigned short tempo() const;
unsigned short bpmSpeed() const;
unsigned short version() const;
unsigned short restartPosition() const;
unsigned short patternCount() const;
unsigned short instrumentCount() const;
unsigned int sampleCount() const;
unsigned short flags() const;
unsigned short tempo() const;
unsigned short bpmSpeed() const;
void setChannels(int channels);

View File

@ -34,9 +34,9 @@ using namespace TagLib;
class PlainFile : public File {
public:
explicit PlainFile(FileName name) : File(name) { }
Tag *tag() const { return NULL; }
AudioProperties *audioProperties() const { return NULL; }
bool save() { return false; }
Tag *tag() const override { return NULL; }
AudioProperties *audioProperties() const override { return NULL; }
bool save() override { return false; }
void truncate(long length) { File::truncate(length); }
ByteVector readAll() {

View File

@ -55,7 +55,7 @@ namespace
class DummyResolver : public FileRef::FileTypeResolver
{
public:
virtual File *createFile(FileName fileName, bool, AudioProperties::ReadStyle) const
File *createFile(FileName fileName, bool, AudioProperties::ReadStyle) const override
{
return new Ogg::Vorbis::File(fileName);
}
@ -64,12 +64,12 @@ namespace
class DummyStreamResolver : public FileRef::StreamTypeResolver
{
public:
virtual File *createFile(FileName, bool, AudioProperties::ReadStyle) const
File *createFile(FileName, bool, AudioProperties::ReadStyle) const override
{
return 0;
}
virtual File *createFileFromStream(IOStream *s, bool, AudioProperties::ReadStyle) const
File *createFileFromStream(IOStream *s, bool, AudioProperties::ReadStyle) const override
{
return new MP4::File(s);
}

View File

@ -62,9 +62,9 @@ class PublicFrame : public ID3v2::Frame
String readStringField(const ByteVector &data, String::Type encoding,
int *position = 0)
{ return ID3v2::Frame::readStringField(data, encoding, position); }
virtual String toString() const { return String(); }
virtual void parseFields(const ByteVector &) {}
virtual ByteVector renderFields() const { return ByteVector(); }
String toString() const override { return String(); }
void parseFields(const ByteVector &) override {}
ByteVector renderFields() const override { return ByteVector(); }
};
class TestID3v2 : public CppUnit::TestFixture

View File

@ -51,9 +51,9 @@ public:
void setChunkData(const ByteVector &name, const ByteVector &data) {
RIFF::File::setChunkData(name, data);
};
virtual TagLib::Tag* tag() const { return 0; };
virtual TagLib::AudioProperties* audioProperties() const { return 0;};
virtual bool save() { return false; };
TagLib::Tag* tag() const override { return 0; };
TagLib::AudioProperties* audioProperties() const override { return 0;};
bool save() override { return false; };
void removeChunk(unsigned int i) { RIFF::File::removeChunk(i); }
void removeChunk(const ByteVector &name) { RIFF::File::removeChunk(name); }
};