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

`#include <metadata.h>`

Inheritance diagram for FLAC::Metadata::StreamInfo:

List of all members.

## Detailed Description

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

## Public Member Functions

| StreamInfo (const StreamInfo &object)
| StreamInfo (const ::FLAC__StreamMetadata &object)
| StreamInfo (const ::FLAC__StreamMetadata *object)
| StreamInfo (::FLAC__StreamMetadata *object, bool copy)
StreamInfo & | operator= (const StreamInfo &object)
StreamInfo & | operator= (const ::FLAC__StreamMetadata &object)
StreamInfo & | operator= (const ::FLAC__StreamMetadata *object)
StreamInfo & | assign (::FLAC__StreamMetadata *object, bool copy)
bool | operator== (const StreamInfo &object) const
bool | operator== (const ::FLAC__StreamMetadata &object) const
bool | operator== (const ::FLAC__StreamMetadata *object) const
bool | operator!= (const StreamInfo &object) const
bool | operator!= (const ::FLAC__StreamMetadata &object) const
bool | operator!= (const ::FLAC__StreamMetadata *object) const
unsigned | get_min_blocksize () const
unsigned | get_max_blocksize () const
unsigned | get_min_framesize () const
unsigned | get_max_framesize () const
unsigned | get_sample_rate () const
unsigned | get_channels () const
unsigned | get_bits_per_sample () const
FLAC__uint64 | get_total_samples () const
const FLAC__byte * | get_md5sum () const
void | set_min_blocksize (unsigned value)
void | set_max_blocksize (unsigned value)
void | set_min_framesize (unsigned value)
void | set_max_framesize (unsigned value)
void | set_sample_rate (unsigned value)
void | set_channels (unsigned value)
void | set_bits_per_sample (unsigned value)
void | set_total_samples (FLAC__uint64 value)
void | set_md5sum (const FLAC__byte value[16])
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

## Constructor & Destructor Documentation

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

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

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

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

## Member Function Documentation

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

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

StreamInfo& FLAC::Metadata::StreamInfo::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::StreamInfo::operator== | ( | const StreamInfo & | object | ) | const`[inline]`

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

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

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

unsigned FLAC::Metadata::StreamInfo::get_min_blocksize | ( |  | ) | const

| See format specification.

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 |