26#ifndef TAGLIB_ID3V2TAG_H
27#define TAGLIB_ID3V2TAG_H
83 class Latin1StringHandlerPrivate;
85 std::unique_ptr<Latin1StringHandlerPrivate> d;
173 unsigned int year()
const override;
174 unsigned int track()
const override;
401 std::unique_ptr<TagPrivate> d;
A byte vector.
Definition: tbytevector.h:46
A file class with some useful methods for tag manipulation.
Definition: tfile.h:51
A factory for creating ID3v2 frames during parsing.
Definition: id3v2framefactory.h:68
static FrameFactory * instance()
ID3v2 frame implementation.
Definition: id3v2frame.h:57
An abstraction for the ISO-8859-1 string to data encoding in ID3v2 tags.
Definition: id3v2tag.h:69
virtual ~Latin1StringHandler()
Latin1StringHandler(const Latin1StringHandler &)=delete
Latin1StringHandler & operator=(const Latin1StringHandler &)=delete
virtual String parse(const ByteVector &data) const
The main class in the ID3v2 implementation.
Definition: id3v2tag.h:134
String genre() const override
PropertyMap setProperties(const PropertyMap &) override
void removeFrame(Frame *frame, bool del=true)
void setYear(unsigned int i) override
static Latin1StringHandler const * latin1StringHandler()
ExtendedHeader * extendedHeader() const
String artist() const override
void setTrack(unsigned int i) override
unsigned int track() const override
StringList complexPropertyKeys() const override
PropertyMap properties() const override
static void setLatin1StringHandler(const Latin1StringHandler *handler)
void removeFrames(const ByteVector &id)
String album() const override
ByteVector render() const
const FrameListMap & frameListMap() const
List< VariantMap > complexProperties(const String &key) const override
Tag(File *file, offset_t tagOffset, const FrameFactory *factory=FrameFactory::instance())
void setComment(const String &s) override
void setArtist(const String &s) override
const FrameList & frameList() const
bool isEmpty() const override
ByteVector render(Version version) const
void setTextFrame(const ByteVector &id, const String &value)
const FrameList & frameList(const ByteVector &frameID) const
unsigned int year() const override
String comment() const override
void setAlbum(const String &s) override
Tag & operator=(const Tag &)=delete
void setGenre(const String &s) override
bool setComplexProperties(const String &key, const List< VariantMap > &value) override
void setTitle(const String &s) override
void addFrame(Frame *frame)
void parse(const ByteVector &origData)
void downgradeFrames(FrameList *frames, FrameList *newFrames) const
void removeUnsupportedProperties(const StringList &properties) override
String title() const override
A generic, implicitly shared list.
Definition: tlist.h:54
A generic, implicitly shared map.
Definition: tmap.h:45
A map for format-independent <key,values> tag representations.
Definition: tpropertymap.h:123
A list of strings.
Definition: tstringlist.h:44
A wide string class suitable for unicode.
Definition: tstring.h:83
A simple, generic interface to common audio metadata fields.
Definition: tag.h:49
Version
Definition: id3v2.h:27
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
off_t offset_t
Definition: taglib.h:64
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition: taglib_export.h:55