TagLib 1.3.1 (TagLib: TagLib::ID3v2::Frame::Header Class Reference)

TagLib::ID3v2::Frame::Header Class Reference

ID3v2 frame header implementation. More...

#include <id3v2frame.h>

List of all members.

Public Member Functions

 Header (const ByteVector &data, bool synchSafeInts)
 Header (const ByteVector &data, uint version=4)
virtual ~Header ()
void setData (const ByteVector &data, bool synchSafeInts)
void setData (const ByteVector &data, uint version=4)
ByteVector frameID () const
void setFrameID (const ByteVector &id)
uint frameSize () const
void setFrameSize (uint size)
uint version () const
bool tagAlterPreservation () const
bool fileAlterPreservation () const
bool readOnly () const
bool groupingIdentity () const
bool compression () const
bool encryption () const
bool unsycronisation () const
bool dataLengthIndicator () const
ByteVector render () const
bool frameAlterPreservation () const

Static Public Member Functions

static uint size ()
static uint size (uint version)


Detailed Description

ID3v2 frame header implementation.

The ID3v2 Frame Header (Structure, 4)

Every ID3v2::Frame has an associated header that gives some general properties of the frame and also makes it possible to identify the frame type.

As such when reading an ID3v2 tag ID3v2::FrameFactory first creates the frame headers and then creates the appropriate Frame subclass based on the type and attaches the header.


Constructor & Destructor Documentation

TagLib::ID3v2::Frame::Header::Header const ByteVector data,
bool  synchSafeInts
 

Construct a Frame Header based on data. data must at least contain a 4 byte frame ID, and optionally can contain flag data and the frame size. i.e. Just the frame id -- "TALB" -- is a valid value.

TagLib::ID3v2::Frame::Header::Header const ByteVector data,
uint  version = 4
[explicit]
 

Construct a Frame Header based on data. data must at least contain a 4 byte frame ID, and optionally can contain flag data and the frame size. i.e. Just the frame id -- "TALB" -- is a valid value.

version should be the ID3v2 version of the tag.

virtual TagLib::ID3v2::Frame::Header::~Header  )  [virtual]
 

Destroys this Header instance.


Member Function Documentation

bool TagLib::ID3v2::Frame::Header::compression  )  const
 

Returns true if compression is enabled for this frame.

Note:
This flag is currently ignored internally in TagLib.

bool TagLib::ID3v2::Frame::Header::dataLengthIndicator  )  const
 

Returns true if the flag for a data lenght indicator is set.

bool TagLib::ID3v2::Frame::Header::encryption  )  const
 

Returns true if encryption is enabled for this frame.

Note:
This flag is currently ignored internally in TagLib.

bool TagLib::ID3v2::Frame::Header::fileAlterPreservation  )  const
 

Returns true if the flag for file alter preservation is set.

Note:
This flag is currently ignored internally in TagLib.

bool TagLib::ID3v2::Frame::Header::frameAlterPreservation  )  const
 

ByteVector TagLib::ID3v2::Frame::Header::frameID  )  const
 

Returns the Frame ID (Structure, 4) (Frames, 4)

uint TagLib::ID3v2::Frame::Header::frameSize  )  const
 

Returns the size of the frame data portion, as set when setData() was called or set explicity via setFrameSize().

bool TagLib::ID3v2::Frame::Header::groupingIdentity  )  const
 

Returns true if the flag for the grouping identifity is set.

Note:
This flag is currently ignored internally in TagLib.

bool TagLib::ID3v2::Frame::Header::readOnly  )  const
 

Returns true if the frame is meant to be read only.

Note:
This flag is currently ignored internally in TagLib.

ByteVector TagLib::ID3v2::Frame::Header::render  )  const
 

Render the Header back to binary format in a ByteVector.

void TagLib::ID3v2::Frame::Header::setData const ByteVector data,
uint  version = 4
 

Sets the data for the Header. version should indicate the ID3v2 version number of the tag that this frame is contained in.

void TagLib::ID3v2::Frame::Header::setData const ByteVector data,
bool  synchSafeInts
 

Sets the data for the Header.

void TagLib::ID3v2::Frame::Header::setFrameID const ByteVector id  ) 
 

Sets the frame's ID to id. Only the first four bytes of id will be used.

Warning:
This method should in general be avoided. It exists simply to provide a mechanism for transforming frames from a deprecated frame type to a newer one -- i.e. TYER to TDRC from ID3v2.3 to ID3v2.4.

void TagLib::ID3v2::Frame::Header::setFrameSize uint  size  ) 
 

Sets the size of the frame data portion.

static uint TagLib::ID3v2::Frame::Header::size uint  version  )  [static]
 

Returns the size of the frame header in bytes for the ID3v2 version that's given.

static uint TagLib::ID3v2::Frame::Header::size  )  [static]
 

Returns the size of the frame header in bytes.

bool TagLib::ID3v2::Frame::Header::tagAlterPreservation  )  const
 

Returns true if the flag for tag alter preservation is set.

Note:
This flag is currently ignored internally in TagLib.

bool TagLib::ID3v2::Frame::Header::unsycronisation  )  const
 

Returns true if unsyncronisation is enabled for this frame.

Note:
This flag is currently ignored internally in TagLib.

uint TagLib::ID3v2::Frame::Header::version  )  const
 

Returns the ID3v2 version of the header (as passed in from the construction of the header).


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