FLAC::Metadata::Prototype class Reference

Main Page Modules Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

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

`#include <metadata.h>`

Inheritance diagram for FLAC::Metadata::Prototype:

List of all members.

## Public Methods

virtual | ~Prototype ()
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
bool | operator== (const Prototype &) const
bool | operator== (const::FLAC__StreamMetadata &) const
bool | operator== (const::FLAC__StreamMetadata *) const
bool | operator!= (const Prototype &) const
bool | operator!= (const::FLAC__StreamMetadata &) const
bool | operator!= (const::FLAC__StreamMetadata *) const

## Protected Methods

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

## Protected Attributes

::FLAC__StreamMetadata * | object_

## Friends

class | SimpleIterator
class | Iterator

## Detailed Description

Base class for all metadata block types.

## Constructor & Destructor Documentation

FLAC::Metadata::Prototype::Prototype | ( | const Prototype & |  | ) | `[protected]`

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

FLAC::Metadata::Prototype::Prototype | ( | const::FLAC__StreamMetadata & |  | ) | `[protected]`

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

FLAC::Metadata::Prototype::Prototype | ( | const::FLAC__StreamMetadata * |  | ) | `[protected]`

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

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

Constructs an object with copy control. When copy is `true`, behaves identically to FLAC::Metadata::Prototype::Prototype(const ::FLAC__StreamMetadata *object). When copy is `false`, the instance takes ownership of the pointer and the FLAC__StreamMetadata object will be freed by the destructor.

Assertions:

      object != NULL

virtual FLAC::Metadata::Prototype::~Prototype | ( |  | ) | `[virtual]`

| Deletes the underlying FLAC__StreamMetadata object.

## Member Function Documentation

Prototype& FLAC::Metadata::Prototype::operator= | ( | const Prototype & |  | ) | `[protected]`

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

Prototype& FLAC::Metadata::Prototype::operator= | ( | const::FLAC__StreamMetadata & |  | ) | `[protected]`

| Assign from another object. Always performs a deep copy. Reimplemented in FLAC::Metadata::StreamInfo.

Prototype& FLAC::Metadata::Prototype::operator= | ( | const::FLAC__StreamMetadata * |  | ) | `[protected]`

| Assign from another object. Always performs a deep copy. Reimplemented in FLAC::Metadata::StreamInfo.

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

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

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

| Deletes the underlying FLAC__StreamMetadata object.

bool FLAC::Metadata::Prototype::get_is_last | ( |  | ) | const

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

Returns the type of the block.

Assertions:

      is_valid()

unsigned FLAC::Metadata::Prototype::get_length | ( |  | ) | const

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 |  | ) |

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