An ID3v2 general encapsulated object frame implementation. More...
#include <generalencapsulatedobjectframe.h>
Protected Member Functions | |
void | parseFields (const ByteVector &data) override |
ByteVector | renderFields () const override |
![]() | |
Frame (const ByteVector &data) | |
Frame (Header *h) | |
void | setHeader (Header *h, bool deleteCurrent=true) |
void | parse (const ByteVector &data) |
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 ByteVector | textDelimiter (String::Type t) |
static ByteVector | keyToFrameID (const String &) |
static String | frameIDToKey (const ByteVector &) |
![]() | |
static const String | instrumentPrefix |
static const String | commentPrefix |
static const String | lyricsPrefix |
static const String | urlPrefix |
![]() | |
static void | splitProperties (const PropertyMap &original, PropertyMap &singleFrameProperties, PropertyMap &tiplProperties, PropertyMap &tmclProperties) |
An ID3v2 general encapsulated object frame implementation.
This is an implementation of ID3v2 general encapsulated objects. Arbitrary binary data may be included in tags, stored in GEOB frames. There may be multiple GEOB frames in a single tag. Each GEOB is labelled with a content description (which may be blank), a required mime-type, and a file name (may be blank). The content description uniquely identifies the GEOB frame in the tag.
TagLib::ID3v2::GeneralEncapsulatedObjectFrame::GeneralEncapsulatedObjectFrame | ( | ) |
Constructs an empty object frame. The description, file name and text encoding should be set manually.
|
explicit |
Constructs a GeneralEncapsulatedObjectFrame frame based on data.
|
override |
Destroys the GeneralEncapsulatedObjectFrame instance.
|
delete |
String TagLib::ID3v2::GeneralEncapsulatedObjectFrame::description | ( | ) | const |
Returns the content description of the object.
String TagLib::ID3v2::GeneralEncapsulatedObjectFrame::fileName | ( | ) | const |
Returns the file name of the object.
String TagLib::ID3v2::GeneralEncapsulatedObjectFrame::mimeType | ( | ) | const |
Returns the mime type of the object.
ByteVector TagLib::ID3v2::GeneralEncapsulatedObjectFrame::object | ( | ) | const |
Returns the object data as a ByteVector.
const char *
which should make it easy to export this data to external programs.
|
delete |
|
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.
Sets the content description of the object to desc.
Sets the file name for the object.
Sets the mime type of the object.
void TagLib::ID3v2::GeneralEncapsulatedObjectFrame::setObject | ( | const ByteVector & | data | ) |
Sets the object data to data. data should be of the type specified in this frame's mime-type specification.
void TagLib::ID3v2::GeneralEncapsulatedObjectFrame::setTextEncoding | ( | String::Type | encoding | ) |
Set the text encoding used for the description and file name.
String::Type TagLib::ID3v2::GeneralEncapsulatedObjectFrame::textEncoding | ( | ) | const |
Returns the text encoding used for the description and file name.
|
overridevirtual |
Returns a string containing the description, file name and mime-type
Implements TagLib::ID3v2::Frame.
|
overridevirtual |
Returns a string list containing the description, file name and mime-type.
Reimplemented from TagLib::ID3v2::Frame.
|
friend |