MPD: FlacInput Class Reference

MPD 0.20.15

Public Member Functions | Static Public Member Functions | Protected Member Functions
FlacInput Class Reference

This class wraps an InputStream in libFLAC stream decoder callbacks. More...

`#include <FlacInput.hxx>`

Inheritance diagram for FlacInput:
[legend]

## Public Member Functions
| FlacInput (InputStream &_input_stream, DecoderClient *_client=nullptr)
DecoderClient * | GetClient ()
InputStream & | GetInputStream ()

## Static Public Member Functions
static FLAC__StreamDecoderReadStatus | Read (const FLAC__StreamDecoder *flac_decoder, FLAC__byte buffer[], size_t *bytes, void *client_data)
static FLAC__StreamDecoderSeekStatus | Seek (const FLAC__StreamDecoder *flac_decoder, FLAC__uint64 absolute_byte_offset, void *client_data)
static FLAC__StreamDecoderTellStatus | Tell (const FLAC__StreamDecoder *flac_decoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
static FLAC__StreamDecoderLengthStatus | Length (const FLAC__StreamDecoder *flac_decoder, FLAC__uint64 *stream_length, void *client_data)
static FLAC__bool | Eof (const FLAC__StreamDecoder *flac_decoder, void *client_data)
static void | Error (const FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data)

## Protected Member Functions
FLAC__StreamDecoderReadStatus | Read (FLAC__byte buffer[], size_t *bytes)
FLAC__StreamDecoderSeekStatus | Seek (FLAC__uint64 absolute_byte_offset)
FLAC__StreamDecoderTellStatus | Tell (FLAC__uint64 *absolute_byte_offset)
FLAC__StreamDecoderLengthStatus | Length (FLAC__uint64 *stream_length)
FLAC__bool | Eof ()
void | Error (FLAC__StreamDecoderErrorStatus status)

## Detailed Description

This class wraps an InputStream in libFLAC stream decoder callbacks.

Definition at line 32 of file FlacInput.hxx.

## Constructor & Destructor Documentation

## ◆ FlacInput()

FlacInput::FlacInput | ( | InputStream & | _input_stream,
|  | DecoderClient * | _client = `nullptr`
| ) |  |
| inline

Definition at line 38 of file FlacInput.hxx.

## Member Function Documentation

## ◆ Eof() [1/2]

FLAC__bool FlacInput::Eof | ( |  | ) |
| protected

## ◆ Eof() [2/2]

static FLAC__bool FlacInput::Eof | ( | const FLAC__StreamDecoder * | flac_decoder,
|  | void * | client_data
| ) |  |
| static

## ◆ Error() [1/2]

void FlacInput::Error | ( | FLAC__StreamDecoderErrorStatus | status | ) |
| protected

## ◆ Error() [2/2]

static void FlacInput::Error | ( | const FLAC__StreamDecoder * | decoder,
|  | FLAC__StreamDecoderErrorStatus | status,
|  | void * | client_data
| ) |  |
| static

## ◆ GetClient()

DecoderClient* FlacInput::GetClient | ( |  | ) |
| inline

Definition at line 42 of file FlacInput.hxx.

## ◆ GetInputStream()

InputStream& FlacInput::GetInputStream | ( |  | ) |
| inline

Definition at line 46 of file FlacInput.hxx.

## ◆ Length() [1/2]

FLAC__StreamDecoderLengthStatus FlacInput::Length | ( | FLAC__uint64 * | stream_length | ) |
| protected

## ◆ Length() [2/2]

static FLAC__StreamDecoderLengthStatus FlacInput::Length | ( | const FLAC__StreamDecoder * | flac_decoder,
|  | FLAC__uint64 * | stream_length,
|  | void * | client_data
| ) |  |
| static

## ◆ Read() [1/2]

FLAC__StreamDecoderReadStatus FlacInput::Read | ( | FLAC__byte | buffer[],
|  | size_t * | bytes
| ) |  |
| protected

## ◆ Read() [2/2]

static FLAC__StreamDecoderReadStatus FlacInput::Read | ( | const FLAC__StreamDecoder * | flac_decoder,
|  | FLAC__byte | buffer[],
|  | size_t * | bytes,
|  | void * | client_data
| ) |  |
| static

## ◆ Seek() [1/2]

FLAC__StreamDecoderSeekStatus FlacInput::Seek | ( | FLAC__uint64 | absolute_byte_offset | ) |
| protected

## ◆ Seek() [2/2]

static FLAC__StreamDecoderSeekStatus FlacInput::Seek | ( | const FLAC__StreamDecoder * | flac_decoder,
|  | FLAC__uint64 | absolute_byte_offset,
|  | void * | client_data
| ) |  |
| static

## ◆ Tell() [1/2]

FLAC__StreamDecoderTellStatus FlacInput::Tell | ( | FLAC__uint64 * | absolute_byte_offset | ) |
| protected

## ◆ Tell() [2/2]

static FLAC__StreamDecoderTellStatus FlacInput::Tell | ( | const FLAC__StreamDecoder * | flac_decoder,
|  | FLAC__uint64 * | absolute_byte_offset,
|  | void * | client_data
| ) |  |
| static

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

- decoder/plugins/FlacInput.hxx