# FLAC::Metadata::VorbisComment Class Reference
[FLAC++/metadata.h: metadata object classes]

`#include <metadata.h>`

Inheritance diagram for FLAC::Metadata::VorbisComment:

List of all members.

## Detailed Description

VORBIS_COMMENT metadata block. See the overview for more, and the format specification.

## Public Member Functions

| VorbisComment (const VorbisComment &object)
| VorbisComment (const ::FLAC__StreamMetadata &object)
| VorbisComment (const ::FLAC__StreamMetadata *object)
| VorbisComment (::FLAC__StreamMetadata *object, bool copy)
VorbisComment & | operator= (const VorbisComment &object)
VorbisComment & | operator= (const ::FLAC__StreamMetadata &object)
VorbisComment & | operator= (const ::FLAC__StreamMetadata *object)
VorbisComment & | assign (::FLAC__StreamMetadata *object, bool copy)
bool | operator== (const VorbisComment &object) const
bool | operator== (const ::FLAC__StreamMetadata &object) const
bool | operator== (const ::FLAC__StreamMetadata *object) const
bool | operator!= (const VorbisComment &object) const
bool | operator!= (const ::FLAC__StreamMetadata &object) const
bool | operator!= (const ::FLAC__StreamMetadata *object) const
unsigned | get_num_comments () const
const FLAC__byte * | get_vendor_string () const
Entry | get_comment (unsigned index) const
bool | set_vendor_string (const FLAC__byte *string)
bool | set_comment (unsigned index, const Entry &entry)
bool | insert_comment (unsigned index, const Entry &entry)
bool | append_comment (const Entry &entry)
bool | delete_comment (unsigned index)
bool | operator== (const Prototype &) const
bool | operator!= (const Prototype &) const
bool | is_valid () const
bool | get_is_last () const
::FLAC__MetadataType | get_type () const
unsigned | get_length () const
void | set_is_last (bool)
| operator const ::FLAC__StreamMetadata * () const

## Protected Member Functions

Prototype & | assign_object (::FLAC__StreamMetadata *object, bool copy)
virtual void | clear ()

## Protected Attributes

::FLAC__StreamMetadata * | object_

## Friends

class | SimpleIterator
class | Iterator

## Classes

class | Entry

## Constructor & Destructor Documentation

FLAC::Metadata::VorbisComment::VorbisComment | ( | const VorbisComment & | object | ) | `[inline]`

| Constructs a copy of the given object. This form always performs a deep copy.

FLAC::Metadata::VorbisComment::VorbisComment | ( | ::FLAC__StreamMetadata * | object,
|  | bool | copy
| ) | `[inline]`

| Constructs an object with copy control. See Prototype(::FLAC__StreamMetadata *object, bool copy).

## Member Function Documentation

VorbisComment& FLAC::Metadata::VorbisComment::operator= | ( | const VorbisComment & | object | ) | `[inline]`

| Assign from another object. Always performs a deep copy.

VorbisComment& FLAC::Metadata::VorbisComment::assign | ( | ::FLAC__StreamMetadata * | object,
|  | bool | copy
| ) | `[inline]`

| Assigns an object with copy control. See Prototype::assign_object(::FLAC__StreamMetadata *object, bool copy).

bool FLAC::Metadata::VorbisComment::operator== | ( | const VorbisComment & | object | ) | const`[inline]`

| Check for equality, performing a deep compare by following pointers.

bool FLAC::Metadata::VorbisComment::operator!= | ( | const VorbisComment & | object | ) | const`[inline]`

| Check for inequality, performing a deep compare by following pointers.

bool FLAC::Metadata::VorbisComment::set_vendor_string | ( | const FLAC__byte * | string | ) |

| See FLAC__metadata_object_vorbiscomment_set_vendor_string().

bool FLAC::Metadata::VorbisComment::set_comment | ( | unsigned | index,
|  | const Entry & | entry
| ) |

| See FLAC__metadata_object_vorbiscomment_set_comment().

bool FLAC::Metadata::VorbisComment::insert_comment | ( | unsigned | index,
|  | const Entry & | entry
| ) |

| See FLAC__metadata_object_vorbiscomment_insert_comment().

bool FLAC::Metadata::VorbisComment::append_comment | ( | const Entry & | entry | ) |

| See FLAC__metadata_object_vorbiscomment_append_comment().

bool FLAC::Metadata::VorbisComment::delete_comment | ( | unsigned | index | ) |

| See FLAC__metadata_object_vorbiscomment_delete_comment().

Prototype& FLAC::Metadata::Prototype::assign_object | ( | ::FLAC__StreamMetadata * | object,
|  | bool | copy
| ) | `[protected, inherited]`

| Assigns an object with copy control. See Prototype(::FLAC__StreamMetadata *object, bool copy).

virtual void FLAC::Metadata::Prototype::clear | ( |  | ) | `[protected, virtual, inherited]`

| Deletes the underlying FLAC__StreamMetadata object.

bool FLAC::Metadata::Prototype::get_is_last | ( |  | ) | const`[inherited]`

Returns `true` if this block is the last block in a stream, else `false`.

Assertions:

       is_valid()

::FLAC__MetadataType FLAC::Metadata::Prototype::get_type | ( |  | ) | const`[inherited]`

Returns the type of the block.

Assertions:

       is_valid()

Reimplemented in FLAC::Metadata::Picture.

unsigned FLAC::Metadata::Prototype::get_length | ( |  | ) | const`[inherited]`

Returns the stream length of the metadata block.

Note:
  The length does not include the metadata block header, per spec.

Assertions:

       is_valid()

void FLAC::Metadata::Prototype::set_is_last | ( | bool |  | ) | `[inherited]`

Sets the "is_last" flag for the block. When using the iterators it is not necessary to set this flag; they will do it for you.

Assertions:

       is_valid()

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

- include/FLAC++/metadata.h

Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson |