| TagLib 1.13 |  |

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
TagLib::ID3v2::AttachedPictureFrame Class Reference

An ID3v2 attached picture frame implementation. More...

`#include <attachedpictureframe.h>`

Inheritance diagram for TagLib::ID3v2::AttachedPictureFrame:
[legend]
Collaboration diagram for TagLib::ID3v2::AttachedPictureFrame:
[legend]

## Public Types
enum | Type { Other = 0x00 , FileIcon = 0x01 , OtherFileIcon = 0x02 , FrontCover = 0x03 , BackCover = 0x04 , LeafletPage = 0x05 , Media = 0x06 , LeadArtist = 0x07 , Artist = 0x08 , Conductor = 0x09 , Band = 0x0A , Composer = 0x0B , Lyricist = 0x0C , RecordingLocation = 0x0D , DuringRecording = 0x0E , DuringPerformance = 0x0F , MovieScreenCapture = 0x10 , ColouredFish = 0x11 , Illustration = 0x12 , BandLogo = 0x13 , PublisherLogo = 0x14 }

## Public Member Functions
| AttachedPictureFrame ()
| AttachedPictureFrame (const ByteVector &data)
virtual | ~AttachedPictureFrame ()
virtual String | toString () const
String::Type | textEncoding () const
void | setTextEncoding (String::Type t)
String | mimeType () const
void | setMimeType (const String &m)
Type | type () const
void | setType (Type t)
String | description () const
void | setDescription (const String &desc)
ByteVector | picture () const
void | setPicture (const ByteVector &p)
Public Member Functions inherited from TagLib::ID3v2::Frame
virtual | ~Frame ()
ByteVector | frameID () const
unsigned int | size () const
void | setData (const ByteVector &data)
virtual void | setText (const String &text)
virtual String | toString () const =0
ByteVector | render () const
TAGLIB_DEPRECATED | Header (const ByteVector &data, bool synchSafeInts)
| Header (const ByteVector &data, unsigned int version=4)
virtual | ~Header ()
TAGLIB_DEPRECATED void | setData (const ByteVector &data, bool synchSafeInts)
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)
bool | tagAlterPreservation () const
void | setTagAlterPreservation (bool discard)
bool | fileAlterPreservation () const
bool | readOnly () const
bool | groupingIdentity () const
bool | compression () const
bool | encryption () const
bool | unsynchronisation () const
bool | dataLengthIndicator () const
ByteVector | render () const
TAGLIB_DEPRECATED bool | frameAlterPreservation () const

## Protected Member Functions
virtual void | parseFields (const ByteVector &data)
virtual ByteVector | renderFields () const
Protected Member Functions inherited from TagLib::ID3v2::Frame
| Frame (const ByteVector &data)
| Frame (Header *h)
Header * | header () const
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=0)
String::Type | checkTextEncoding (const StringList &fields, String::Type encoding) const
PropertyMap | asProperties () const

## Protected Attributes
AttachedPictureFramePrivate * | d

## Friends
class | FrameFactory

## Additional Inherited Members
Static Public Member Functions inherited from TagLib::ID3v2::Frame
static Frame * | createTextualFrame (const String &key, const StringList &values)
static unsigned int | headerSize ()
static unsigned int | headerSize (unsigned int version)
static ByteVector | textDelimiter (String::Type t)
static unsigned int | size ()
static unsigned int | size (unsigned int version)
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 String::Type | checkEncoding (const StringList &fields, String::Type encoding)
static String::Type | checkEncoding (const StringList &fields, String::Type encoding, unsigned int version)
static ByteVector | keyToFrameID (const String &)
static String | frameIDToKey (const ByteVector &)
static String | keyToTXXX (const String &)
static String | txxxToKey (const String &)
static void | splitProperties (const PropertyMap &original, PropertyMap &singleFrameProperties, PropertyMap &tiplProperties, PropertyMap &tmclProperties)

## Detailed Description

An ID3v2 attached picture frame implementation.

This is an implementation of ID3v2 attached pictures. Pictures may be included in tags, one per APIC frame (but there may be multiple APIC frames in a single tag). These pictures are usually in either JPEG or PNG format.

## Member Enumeration Documentation

## ◆ Type

enum TagLib::ID3v2::AttachedPictureFrame::Type

This describes the function or content of the picture.

Enumerator
Other | A type not enumerated below.
FileIcon | 32x32 PNG image that should be used as the file icon
OtherFileIcon | File icon of a different size or format.
FrontCover | Front cover image of the album.
BackCover | Back cover image of the album.
LeafletPage | Inside leaflet page of the album.
Media | Image from the album itself.
LeadArtist | Picture of the lead artist or soloist.
Artist | Picture of the artist or performer.
Conductor | Picture of the conductor.
Band | Picture of the band or orchestra.
Composer | Picture of the composer.
Lyricist | Picture of the lyricist or text writer.
RecordingLocation | Picture of the recording location or studio.
DuringRecording | Picture of the artists during recording.
DuringPerformance | Picture of the artists during performance.
MovieScreenCapture | Picture from a movie or video related to the track.
ColouredFish | Picture of a large, coloured fish.
Illustration | Illustration related to the track.
BandLogo | Logo of the band or performer.
PublisherLogo | Logo of the publisher (record company)

## Constructor & Destructor Documentation

## ◆ AttachedPictureFrame() [1/2]

TagLib::ID3v2::AttachedPictureFrame::AttachedPictureFrame | ( |  | ) |

Constructs an empty picture frame. The description, content and text encoding should be set manually.

## ◆ AttachedPictureFrame() [2/2]

TagLib::ID3v2::AttachedPictureFrame::AttachedPictureFrame | ( | const ByteVector & | data | ) |
| explicit

Constructs an AttachedPicture frame based on data.

## ◆ ~AttachedPictureFrame()

virtual TagLib::ID3v2::AttachedPictureFrame::~AttachedPictureFrame | ( |  | ) |
| virtual

Destroys the AttahcedPictureFrame instance.

## Member Function Documentation

## ◆ description()

String TagLib::ID3v2::AttachedPictureFrame::description | ( |  | ) | const

Returns a text description of the image.

See also
  setDescription()
  textEncoding()
  setTextEncoding()

## ◆ mimeType()

String TagLib::ID3v2::AttachedPictureFrame::mimeType | ( |  | ) | const

Returns the mime type of the image. This should in most cases be "image/png" or "image/jpeg".

## ◆ parseFields()

virtual void TagLib::ID3v2::AttachedPictureFrame::parseFields | ( | const ByteVector & | data | ) |
| protected virtual

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.

Reimplemented in TagLib::ID3v2::AttachedPictureFrameV22.

## ◆ picture()

ByteVector TagLib::ID3v2::AttachedPictureFrame::picture | ( |  | ) | const

Returns the image data as a ByteVector.

Note
  ByteVector has a data() method that returns a const char * which should make it easy to export this data to external programs.

See also
  setPicture()
  mimeType()

## ◆ renderFields()

virtual ByteVector TagLib::ID3v2::AttachedPictureFrame::renderFields | ( |  | ) | const
| protected virtual

Render the field data back to a binary format in a ByteVector. This must be overridden by subclasses.

Implements TagLib::ID3v2::Frame.

## ◆ setDescription()

void TagLib::ID3v2::AttachedPictureFrame::setDescription | ( | const String & | desc | ) |

Sets a textual description of the image to desc.

See also
  description()
  textEncoding()
  setTextEncoding()

## ◆ setMimeType()

void TagLib::ID3v2::AttachedPictureFrame::setMimeType | ( | const String & | m | ) |

Sets the mime type of the image. This should in most cases be "image/png" or "image/jpeg".

## ◆ setPicture()

void TagLib::ID3v2::AttachedPictureFrame::setPicture | ( | const ByteVector & | p | ) |

Sets the image data to p. p should be of the type specified in this frame's mime-type specification.

See also
  picture()
  mimeType()
  setMimeType()

## ◆ setTextEncoding()

void TagLib::ID3v2::AttachedPictureFrame::setTextEncoding | ( | String::Type | t | ) |

Set the text encoding used for the description.

See also
  description()

## ◆ setType()

void TagLib::ID3v2::AttachedPictureFrame::setType | ( | Type | t | ) |

Sets the type for the image.

See also
  Type
  type()

## ◆ textEncoding()

String::Type TagLib::ID3v2::AttachedPictureFrame::textEncoding | ( |  | ) | const

Returns the text encoding used for the description.

See also
  setTextEncoding()
  description()

## ◆ toString()

virtual String TagLib::ID3v2::AttachedPictureFrame::toString | ( |  | ) | const
| virtual

Returns a string containing the description and mime-type

Implements TagLib::ID3v2::Frame.

## ◆ type()

Type TagLib::ID3v2::AttachedPictureFrame::type | ( |  | ) | const

Returns the type of the image.

See also
  Type
  setType()

## Friends And Related Function Documentation

## ◆ FrameFactory

friend class FrameFactory
| friend

## Member Data Documentation

## ◆ d

AttachedPictureFramePrivate* TagLib::ID3v2::AttachedPictureFrame::d
| protected

The documentation for this class was generated from the following file:

- attachedpictureframe.h