An ID3v2 custom text identification frame implementation. More...
#include <textidentificationframe.h>
Static Public Member Functions | |
static UserTextIdentificationFrame * | find (const Tag *tag, const String &description) |
static String | keyToTXXX (const String &) |
static String | txxxToKey (const String &) |
Static Public Member Functions inherited from TagLib::ID3v2::TextIdentificationFrame | |
static TextIdentificationFrame * | createTIPLFrame (const PropertyMap &properties) |
static TextIdentificationFrame * | createTMCLFrame (const PropertyMap &properties) |
static const KeyConversionMap & | involvedPeopleMap () |
Static Public Member Functions inherited from TagLib::ID3v2::Frame | |
static ByteVector | textDelimiter (String::Type t) |
static ByteVector | keyToFrameID (const String &) |
static String | frameIDToKey (const ByteVector &) |
Friends | |
class | FrameFactory |
Additional Inherited Members | |
Static Public Attributes inherited from TagLib::ID3v2::Frame | |
static const String | instrumentPrefix |
static const String | commentPrefix |
static const String | lyricsPrefix |
static const String | urlPrefix |
Protected Member Functions inherited from TagLib::ID3v2::TextIdentificationFrame | |
void | parseFields (const ByteVector &data) override |
ByteVector | renderFields () const override |
TextIdentificationFrame (const ByteVector &data, Header *h) | |
Protected Member Functions inherited from TagLib::ID3v2::Frame | |
Frame (const ByteVector &data) | |
Frame (Header *h) | |
void | setHeader (Header *h, bool deleteCurrent=true) |
void | parse (const ByteVector &data) |
virtual void | parseFields (const ByteVector &data)=0 |
virtual ByteVector | renderFields () const =0 |
ByteVector | fieldData (const ByteVector &frameData) const |
String | readStringField (const ByteVector &data, String::Type encoding, int *position=nullptr) |
String::Type | checkTextEncoding (const StringList &fields, String::Type encoding) const |
virtual PropertyMap | asProperties () const |
Static Protected Member Functions inherited from TagLib::ID3v2::Frame | |
static void | splitProperties (const PropertyMap &original, PropertyMap &singleFrameProperties, PropertyMap &tiplProperties, PropertyMap &tmclProperties) |
An ID3v2 custom text identification frame implementation.
This is a specialization of text identification frames that allows for user defined entries. Each entry has a description in addition to the normal list of fields that a text identification frame has.
This description identifies the frame and must be unique.
|
explicit |
Constructs an empty user defined text identification frame. For this to be a useful frame both a description and text must be set.
|
explicit |
Creates a frame based on data.
TagLib::ID3v2::UserTextIdentificationFrame::UserTextIdentificationFrame | ( | const String & | description, |
const StringList & | values, | ||
String::Type | encoding = String::UTF8 |
||
) |
Creates a user defined text identification frame with the given description and values.
|
override |
|
delete |
|
overridevirtual |
A UserTextIdentificationFrame is parsed into a PropertyMap as follows:
Reimplemented from TagLib::ID3v2::TextIdentificationFrame.
String TagLib::ID3v2::UserTextIdentificationFrame::description | ( | ) | const |
Returns the description for this frame.
|
static |
Searches for the user defined text frame with the description description in tag. This returns null if no matching frames were found.
Returns an appropriate TXXX frame description for the given free-form tag key.
|
delete |
void TagLib::ID3v2::UserTextIdentificationFrame::setDescription | ( | const String & | s | ) |
Sets the description of the frame to s. s must be unique. You can check for the presence of another user defined text frame of the same type using find() and testing for null.
|
overridevirtual |
Set the text of frame in the sanest way possible. This should only be reimplemented in frames where there is some logical mapping to text.
Reimplemented from TagLib::ID3v2::TextIdentificationFrame.
void TagLib::ID3v2::UserTextIdentificationFrame::setText | ( | const StringList & | fields | ) |
|
overridevirtual |
This returns the textual representation of the data in the frame. Subclasses must reimplement this method to provide a string representation of the frame's data.
Reimplemented from TagLib::ID3v2::TextIdentificationFrame.
Returns a free-form tag name for the given ID3 frame description.
|
friend |