26#ifndef TAGLIB_ID3V2FRAME_H
27#define TAGLIB_ID3V2FRAME_H
234 int *position =
nullptr);
271 friend class FramePrivate;
273 std::unique_ptr<FramePrivate> d;
442 std::unique_ptr<HeaderPrivate> d;
A byte vector.
Definition: tbytevector.h:46
ID3v2 frame implementation.
Definition: id3v2frame.h:57
void parse(const ByteVector &data)
bool dataLengthIndicator() const
String readStringField(const ByteVector &data, String::Type encoding, int *position=nullptr)
static const String lyricsPrefix
Definition: id3v2frame.h:167
bool unsynchronisation() const
String::Type checkTextEncoding(const StringList &fields, String::Type encoding) const
void setData(const ByteVector &data, unsigned int version=4)
ByteVector fieldData(const ByteVector &frameData) const
static const String urlPrefix
Definition: id3v2frame.h:172
static String frameIDToKey(const ByteVector &)
bool groupingIdentity() const
Header(const ByteVector &data, unsigned int version=4)
unsigned int size() const
virtual void parseFields(const ByteVector &data)=0
Frame & operator=(const Frame &)=delete
ByteVector render() const
Frame(const ByteVector &data)
bool fileAlterPreservation() const
void setHeader(Header *h, bool deleteCurrent=true)
bool tagAlterPreservation() const
Header(const Header &)=delete
virtual void setText(const String &text)
void setFrameSize(unsigned int size)
Header & operator=(const Header &)=delete
virtual PropertyMap asProperties() const
virtual StringList toStringList() const
void setVersion(unsigned int version)
void setData(const ByteVector &data)
static ByteVector keyToFrameID(const String &)
static ByteVector textDelimiter(String::Type t)
void setTagAlterPreservation(bool preserve)
Frame(const Frame &)=delete
static const String commentPrefix
Definition: id3v2frame.h:162
unsigned int headerSize() const
static const String instrumentPrefix
Definition: id3v2frame.h:157
void setFrameID(const ByteVector &id)
unsigned int version() const
ByteVector frameID() const
virtual ByteVector renderFields() const =0
virtual String toString() const =0
unsigned int frameSize() const
static void splitProperties(const PropertyMap &original, PropertyMap &singleFrameProperties, PropertyMap &tiplProperties, PropertyMap &tmclProperties)
The main class in the ID3v2 implementation.
Definition: id3v2tag.h:134
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
Type
Definition: tstring.h:96
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition: taglib_export.h:55