An implementation of ID3v2 unique identifier frames. More...
#include <uniquefileidentifierframe.h>
Public Member Functions | |
UniqueFileIdentifierFrame (const ByteVector &data) | |
UniqueFileIdentifierFrame (const String &owner, const ByteVector &id) | |
~UniqueFileIdentifierFrame () override | |
UniqueFileIdentifierFrame (const UniqueFileIdentifierFrame &)=delete | |
UniqueFileIdentifierFrame & | operator= (const UniqueFileIdentifierFrame &)=delete |
String | owner () const |
ByteVector | identifier () const |
void | setOwner (const String &s) |
void | setIdentifier (const ByteVector &v) |
String | toString () const override |
PropertyMap | asProperties () const override |
Public Member Functions inherited from TagLib::ID3v2::Frame | |
virtual | ~Frame () |
Frame (const Frame &)=delete | |
Frame & | operator= (const Frame &)=delete |
ByteVector | frameID () const |
unsigned int | size () const |
unsigned int | headerSize () const |
void | setData (const ByteVector &data) |
virtual void | setText (const String &text) |
virtual String | toString () const =0 |
virtual StringList | toStringList () const |
ByteVector | render () const |
Header * | header () const |
Header (const ByteVector &data, unsigned int version=4) | |
virtual | ~Header () |
Header (const Header &)=delete | |
Header & | operator= (const Header &)=delete |
void | setData (const ByteVector &data, unsigned int version=4) |
ByteVector | frameID () const |
void | setFrameID (const ByteVector &id) |
unsigned int | frameSize () const |
void | setFrameSize (unsigned int size) |
unsigned int | version () const |
void | setVersion (unsigned int version) |
unsigned int | size () const |
bool | tagAlterPreservation () const |
void | setTagAlterPreservation (bool preserve) |
bool | fileAlterPreservation () const |
bool | readOnly () const |
bool | groupingIdentity () const |
bool | compression () const |
bool | encryption () const |
bool | unsynchronisation () const |
bool | dataLengthIndicator () const |
ByteVector | render () const |
Static Public Member Functions | |
static UniqueFileIdentifierFrame * | findByOwner (const Tag *tag, const String &o) |
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 &) |
Protected Member Functions | |
void | parseFields (const ByteVector &data) override |
ByteVector | renderFields () const override |
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 |
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 |
Static Protected Member Functions inherited from TagLib::ID3v2::Frame | |
static void | splitProperties (const PropertyMap &original, PropertyMap &singleFrameProperties, PropertyMap &tiplProperties, PropertyMap &tmclProperties) |
An implementation of ID3v2 unique identifier frames.
This is an implementation of ID3v2 unique file identifier frames. This frame is used to identify the file in an arbitrary database identified by the owner field.
TagLib::ID3v2::UniqueFileIdentifierFrame::UniqueFileIdentifierFrame | ( | const ByteVector & | data | ) |
Creates a unique file identifier frame based on data.
TagLib::ID3v2::UniqueFileIdentifierFrame::UniqueFileIdentifierFrame | ( | const String & | owner, |
const ByteVector & | id | ||
) |
Creates a unique file identifier frame with the owner owner and the identification id.
|
override |
Destroys the frame.
|
delete |
|
overridevirtual |
Parses the contents of this frame as PropertyMap. If that fails, the returned PropertyMap will be empty, and its unsupportedData() will contain this frame's ID.
Reimplemented from TagLib::ID3v2::Frame.
|
static |
UFID frames each have a unique owner. This searches for a UFID frame with the owner o and returns a pointer to it.
ByteVector TagLib::ID3v2::UniqueFileIdentifierFrame::identifier | ( | ) | const |
Returns the unique identifier. Though sometimes this is a text string it also may be binary data and as much should be assumed when handling it.
|
delete |
String TagLib::ID3v2::UniqueFileIdentifierFrame::owner | ( | ) | const |
Returns the owner for the frame; essentially this is the key for determining which identification scheme this key belongs to. This will usually either be an email address or URL for the person or tool used to create the unique identifier.
|
overrideprotectedvirtual |
Called by parse() to parse the field data. It makes this information available through the public API. This must be overridden by the subclasses.
Implements TagLib::ID3v2::Frame.
|
overrideprotectedvirtual |
Render the field data back to a binary format in a ByteVector. This must be overridden by subclasses.
Implements TagLib::ID3v2::Frame.
void TagLib::ID3v2::UniqueFileIdentifierFrame::setIdentifier | ( | const ByteVector & | v | ) |
Sets the unique file identifier to v.
void TagLib::ID3v2::UniqueFileIdentifierFrame::setOwner | ( | const String & | s | ) |
Sets the owner of the identification scheme to s.
|
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.
Implements TagLib::ID3v2::Frame.
|
friend |