~ubuntu-branches/ubuntu/raring/flac/raring

« back to all changes in this revision

Viewing changes to doc/html/api/group__flac__seekable__stream__decoder.html

  • Committer: Bazaar Package Importer
  • Author(s): Joshua Kwan
  • Date: 2007-05-29 22:56:36 UTC
  • mto: (8.1.1 lenny)
  • mto: This revision was merged to the branch mainline in revision 9.
  • Revision ID: james.westby@ubuntu.com-20070529225636-p8lkii0r0kp50pns
Tags: upstream-1.1.4
ImportĀ upstreamĀ versionĀ 1.1.4

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2
 
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
 
<title>FLAC/seekable_stream_decoder.h: seekable stream decoder interface</title>
4
 
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
 
</head><body>
6
 
<!-- Generated by Doxygen 1.2.14 -->
7
 
<center>
8
 
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
9
 
<hr><h1>FLAC/seekable_stream_decoder.h: seekable stream decoder interface<br>
10
 
<small>
11
 
[<a class="el" href="group__flac__decoder.html">FLAC/_decoder.h: decoder interfaces</a>]</small>
12
 
</h1>This module contains the functions which implement the seekable stream decoder. 
13
 
<a href="#_details">More...</a><table border=0 cellpadding=0 cellspacing=0>
14
 
<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
15
 
<tr><td nowrap align=right valign=top>struct &nbsp;</td><td valign=bottom><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a></td></tr>
16
 
<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
17
 
<tr><td nowrap align=right valign=top>typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a51">FLAC__SeekableStreamDecoderReadStatus</a>(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a5">FLAC__SeekableStreamDecoderReadCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__byte buffer[], unsigned *bytes, void *client_data)</td></tr>
18
 
<tr><td nowrap align=right valign=top>typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a52">FLAC__SeekableStreamDecoderSeekStatus</a>(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a6">FLAC__SeekableStreamDecoderSeekCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)</td></tr>
19
 
<tr><td nowrap align=right valign=top>typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a53">FLAC__SeekableStreamDecoderTellStatus</a>(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a7">FLAC__SeekableStreamDecoderTellCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data)</td></tr>
20
 
<tr><td nowrap align=right valign=top>typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a54">FLAC__SeekableStreamDecoderLengthStatus</a>(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a8">FLAC__SeekableStreamDecoderLengthCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 *stream_length, void *client_data)</td></tr>
21
 
<tr><td nowrap align=right valign=top>typedef FLAC__bool(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a9">FLAC__SeekableStreamDecoderEofCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, void *client_data)</td></tr>
22
 
<tr><td nowrap align=right valign=top>typedef <a class="el" href="group__flac__stream__decoder.html#a38">FLAC__StreamDecoderWriteStatus</a>(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a10">FLAC__SeekableStreamDecoderWriteCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const <a class="el" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, const FLAC__int32 *const buffer[], void *client_data)</td></tr>
23
 
<tr><td nowrap align=right valign=top>typedef void(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a11">FLAC__SeekableStreamDecoderMetadataCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const <a class="el" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata, void *client_data)</td></tr>
24
 
<tr><td nowrap align=right valign=top>typedef void(*&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a12">FLAC__SeekableStreamDecoderErrorCallback</a> )(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__stream__decoder.html#a39">FLAC__StreamDecoderErrorStatus</a> status, void *client_data)</td></tr>
25
 
<tr><td colspan=2><br><h2>Enumerations</h2></td></tr>
26
 
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a50">FLAC__SeekableStreamDecoderState</a> { <br>
27
 
&nbsp;&nbsp;<a class="el" href="group__flac__seekable__stream__decoder.html#a50a13">FLAC__SEEKABLE_STREAM_DECODER_OK</a> =  0, 
28
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a14">FLAC__SEEKABLE_STREAM_DECODER_SEEKING</a>, 
29
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a15">FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM</a>, 
30
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a16">FLAC__SEEKABLE_STREAM_DECODER_MEMORY_ALLOCATION_ERROR</a>, 
31
 
<br>
32
 
&nbsp;&nbsp;<a class="el" href="group__flac__seekable__stream__decoder.html#a50a17">FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR</a>, 
33
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a18">FLAC__SEEKABLE_STREAM_DECODER_READ_ERROR</a>, 
34
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a19">FLAC__SEEKABLE_STREAM_DECODER_SEEK_ERROR</a>, 
35
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a20">FLAC__SEEKABLE_STREAM_DECODER_ALREADY_INITIALIZED</a>, 
36
 
<br>
37
 
&nbsp;&nbsp;<a class="el" href="group__flac__seekable__stream__decoder.html#a50a21">FLAC__SEEKABLE_STREAM_DECODER_INVALID_CALLBACK</a>, 
38
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a50a22">FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED</a>
39
 
<br>
40
 
 }</td></tr>
41
 
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a51">FLAC__SeekableStreamDecoderReadStatus</a> { <a class="el" href="group__flac__seekable__stream__decoder.html#a51a23">FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK</a>, 
42
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a51a24">FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_ERROR</a>
43
 
 }</td></tr>
44
 
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a52">FLAC__SeekableStreamDecoderSeekStatus</a> { <a class="el" href="group__flac__seekable__stream__decoder.html#a52a25">FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK</a>, 
45
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a52a26">FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR</a>
46
 
 }</td></tr>
47
 
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a53">FLAC__SeekableStreamDecoderTellStatus</a> { <a class="el" href="group__flac__seekable__stream__decoder.html#a53a27">FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK</a>, 
48
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a53a28">FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR</a>
49
 
 }</td></tr>
50
 
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a54">FLAC__SeekableStreamDecoderLengthStatus</a> { <a class="el" href="group__flac__seekable__stream__decoder.html#a54a29">FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK</a>, 
51
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a54a30">FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR</a>
52
 
 }</td></tr>
53
 
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
54
 
<tr><td nowrap align=right valign=top><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a13">FLAC__seekable_stream_decoder_new</a> ()</td></tr>
55
 
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a14">FLAC__seekable_stream_decoder_delete</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
56
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a15">FLAC__seekable_stream_decoder_set_md5_checking</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__bool value)</td></tr>
57
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a16">FLAC__seekable_stream_decoder_set_read_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a5">FLAC__SeekableStreamDecoderReadCallback</a> value)</td></tr>
58
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a17">FLAC__seekable_stream_decoder_set_seek_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a6">FLAC__SeekableStreamDecoderSeekCallback</a> value)</td></tr>
59
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a18">FLAC__seekable_stream_decoder_set_tell_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a7">FLAC__SeekableStreamDecoderTellCallback</a> value)</td></tr>
60
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a19">FLAC__seekable_stream_decoder_set_length_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a8">FLAC__SeekableStreamDecoderLengthCallback</a> value)</td></tr>
61
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a20">FLAC__seekable_stream_decoder_set_eof_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a9">FLAC__SeekableStreamDecoderEofCallback</a> value)</td></tr>
62
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a21">FLAC__seekable_stream_decoder_set_write_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a10">FLAC__SeekableStreamDecoderWriteCallback</a> value)</td></tr>
63
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a22">FLAC__seekable_stream_decoder_set_metadata_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a11">FLAC__SeekableStreamDecoderMetadataCallback</a> value)</td></tr>
64
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a23">FLAC__seekable_stream_decoder_set_error_callback</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__seekable__stream__decoder.html#a12">FLAC__SeekableStreamDecoderErrorCallback</a> value)</td></tr>
65
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, void *value)</td></tr>
66
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a25">FLAC__seekable_stream_decoder_set_metadata_respond</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__format.html#a97">FLAC__MetadataType</a> type)</td></tr>
67
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a26">FLAC__seekable_stream_decoder_set_metadata_respond_application</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const FLAC__byte id[4])</td></tr>
68
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a27">FLAC__seekable_stream_decoder_set_metadata_respond_all</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
69
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a28">FLAC__seekable_stream_decoder_set_metadata_ignore</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__format.html#a97">FLAC__MetadataType</a> type)</td></tr>
70
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a29">FLAC__seekable_stream_decoder_set_metadata_ignore_application</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const FLAC__byte id[4])</td></tr>
71
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a30">FLAC__seekable_stream_decoder_set_metadata_ignore_all</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
72
 
<tr><td nowrap align=right valign=top><a class="el" href="group__flac__seekable__stream__decoder.html#a50">FLAC__SeekableStreamDecoderState</a>&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a31">FLAC__seekable_stream_decoder_get_state</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
73
 
<tr><td nowrap align=right valign=top><a class="el" href="group__flac__stream__decoder.html#a36">FLAC__StreamDecoderState</a>&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a32">FLAC__seekable_stream_decoder_get_stream_decoder_state</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
74
 
<tr><td nowrap align=right valign=top>const char *&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a33">FLAC__seekable_stream_decoder_get_resolved_state_string</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
75
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a34">FLAC__seekable_stream_decoder_get_md5_checking</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
76
 
<tr><td nowrap align=right valign=top>unsigned&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a35">FLAC__seekable_stream_decoder_get_channels</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
77
 
<tr><td nowrap align=right valign=top><a class="el" href="group__flac__format.html#a95">FLAC__ChannelAssignment</a>&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a36">FLAC__seekable_stream_decoder_get_channel_assignment</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
78
 
<tr><td nowrap align=right valign=top>unsigned&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a37">FLAC__seekable_stream_decoder_get_bits_per_sample</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
79
 
<tr><td nowrap align=right valign=top>unsigned&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a38">FLAC__seekable_stream_decoder_get_sample_rate</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
80
 
<tr><td nowrap align=right valign=top>unsigned&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a39">FLAC__seekable_stream_decoder_get_blocksize</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
81
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a40">FLAC__seekable_stream_decoder_get_decode_position</a> (const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 *position)</td></tr>
82
 
<tr><td nowrap align=right valign=top><a class="el" href="group__flac__seekable__stream__decoder.html#a50">FLAC__SeekableStreamDecoderState</a>&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
83
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
84
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a43">FLAC__seekable_stream_decoder_flush</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
85
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a44">FLAC__seekable_stream_decoder_reset</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
86
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a45">FLAC__seekable_stream_decoder_process_single</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
87
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a46">FLAC__seekable_stream_decoder_process_until_end_of_metadata</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
88
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a47">FLAC__seekable_stream_decoder_process_until_end_of_stream</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
89
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a48">FLAC__seekable_stream_decoder_skip_single_frame</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder)</td></tr>
90
 
<tr><td nowrap align=right valign=top>FLAC__bool&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a49">FLAC__seekable_stream_decoder_seek_absolute</a> (<a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 sample)</td></tr>
91
 
<tr><td colspan=2><br><h2>Variables</h2></td></tr>
92
 
<tr><td nowrap align=right valign=top>const char *const&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a0">FLAC__SeekableStreamDecoderStateString</a> []</td></tr>
93
 
<tr><td nowrap align=right valign=top>const char *const&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a1">FLAC__SeekableStreamDecoderReadStatusString</a> []</td></tr>
94
 
<tr><td nowrap align=right valign=top>const char *const&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a2">FLAC__SeekableStreamDecoderSeekStatusString</a> []</td></tr>
95
 
<tr><td nowrap align=right valign=top>const char *const&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a3">FLAC__SeekableStreamDecoderTellStatusString</a> []</td></tr>
96
 
<tr><td nowrap align=right valign=top>const char *const&nbsp;</td><td valign=bottom><a class="el" href="group__flac__seekable__stream__decoder.html#a4">FLAC__SeekableStreamDecoderLengthStatusString</a> []</td></tr>
97
 
</table>
98
 
<hr><a name="_details"></a><h2>Detailed Description</h2>
99
 
This module contains the functions which implement the seekable stream decoder.
100
 
<p>
101
 
 
102
 
<p>
103
 
 The basic usage of this decoder is as follows:<ul>
104
 
<li>The program creates an instance of a decoder using <a class="el" href="group__flac__seekable__stream__decoder.html#a13">FLAC__seekable_stream_decoder_new</a>().<li>The program overrides the default settings and sets callbacks for reading, writing, seeking, error reporting, and metadata reporting using FLAC__seekable_stream_decoder_set_*() functions.<li>The program initializes the instance to validate the settings and prepare for decoding using <a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>().<li>The program calls the FLAC__seekable_stream_decoder_process_*() functions to decode data, which subsequently calls the callbacks.<li>The program finishes the decoding with <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>(), which flushes the input and output and resets the decoder to the uninitialized state.<li>The instance may be used again or deleted with <a class="el" href="group__flac__seekable__stream__decoder.html#a14">FLAC__seekable_stream_decoder_delete</a>().</ul>
105
 
The seekable stream decoder is a wrapper around the <a class="el" href="group__flac__stream__decoder.html">stream decoder</a> which also provides seeking capability. In addition to the Read/Write/Metadata/Error callbacks of the stream decoder, the user must also provide the following:
106
 
<p>
107
 
<ul>
108
 
<li>Seek callback - This function will be called when the decoder wants to seek to an absolute position in the stream.<li>Tell callback - This function will be called when the decoder wants to know the current absolute position of the stream.<li>Length callback - This function will be called when the decoder wants to know length of the stream. The seeking algorithm currently requires that the overall stream length be known.<li>EOF callback - This function will be called when the decoder wants to know if it is at the end of the stream. This could be synthesized from the tell and length callbacks but it may be more expensive that way, so there is a separate callback for it.</ul>
109
 
Seeking is exposed through the <a class="el" href="group__flac__seekable__stream__decoder.html#a49">FLAC__seekable_stream_decoder_seek_absolute</a>() method. At any point after the seekable stream decoder has been initialized, the user can call this function to seek to an exact sample within the stream. Subsequently, the first time the write callback is called it will be passed a (possibly partial) block starting at that sample.
110
 
<p>
111
 
The seekable stream decoder also provides MD5 signature checking. If this is turned on before initialization, <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>() will report when the decoded MD5 signature does not match the one stored in the STREAMINFO block. MD5 checking is automatically turned off (until the next <a class="el" href="group__flac__seekable__stream__decoder.html#a44">FLAC__seekable_stream_decoder_reset</a>()) if there is no signature in the STREAMINFO block or when a seek is attempted.
112
 
<p>
113
 
Make sure to read the detailed description of the <a class="el" href="group__flac__stream__decoder.html">stream decoder module</a> since the seekable stream decoder inherits much of its behavior.
114
 
<p>
115
 
<dl compact><dt><b>
116
 
Note: </b><dd>
117
 
 The "set" functions may only be called when the decoder is in the state FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED, i.e. after <a class="el" href="group__flac__seekable__stream__decoder.html#a13">FLAC__seekable_stream_decoder_new</a>() or <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>(), but before <a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>(). If this is the case they will return <code>true</code>, otherwise <code>false</code>.</dl><dl compact><dt><b>
118
 
Note: </b><dd>
119
 
 <a class="el" href="group__flac__stream__decoder.html#a29">FLAC__stream_decoder_finish</a>() resets all settings to the constructor defaults, including the callbacks. </dl><hr><h2>Typedef Documentation</h2>
120
 
<a name="a5" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderReadCallback"></a><p>
121
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
122
 
  <tr>
123
 
    <td class="md">
124
 
      <table cellpadding="0" cellspacing="0" border="0">
125
 
        <tr>
126
 
          <td class="md" nowrap valign="top"> typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a51">FLAC__SeekableStreamDecoderReadStatus</a>(* FLAC__SeekableStreamDecoderReadCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__byte buffer[], unsigned *bytes, void *client_data)
127
 
      </table>
128
 
    </td>
129
 
  </tr>
130
 
</table>
131
 
<table cellspacing=5 cellpadding=0 border=0>
132
 
  <tr>
133
 
    <td>
134
 
      &nbsp;
135
 
    </td>
136
 
    <td>
137
 
 
138
 
<p>
139
 
Signature for the read callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a16">FLAC__seekable_stream_decoder_set_read_callback</a>() and FLAC__StreamDecoderReadCallback for more info.<dl compact><dt><b>
140
 
Parameters: </b><dd>
141
 
<table border=0 cellspacing=2 cellpadding=0>
142
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
143
 
The decoder instance calling the callback. </td></tr>
144
 
<tr><td valign=top><em>buffer</em>&nbsp;</td><td>
145
 
A pointer to a location for the callee to store data to be decoded. </td></tr>
146
 
<tr><td valign=top><em>bytes</em>&nbsp;</td><td>
147
 
A pointer to the size of the buffer. </td></tr>
148
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
149
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
150
 
</table>
151
 
</dl><dl compact><dt><b>
152
 
Return values: </b><dd>
153
 
<table border=0 cellspacing=2 cellpadding=0>
154
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderReadStatus</em>&nbsp;</td><td>
155
 
The callee's return status. </td></tr>
156
 
</table>
157
 
</dl>    </td>
158
 
  </tr>
159
 
</table>
160
 
<a name="a6" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderSeekCallback"></a><p>
161
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
162
 
  <tr>
163
 
    <td class="md">
164
 
      <table cellpadding="0" cellspacing="0" border="0">
165
 
        <tr>
166
 
          <td class="md" nowrap valign="top"> typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a52">FLAC__SeekableStreamDecoderSeekStatus</a>(* FLAC__SeekableStreamDecoderSeekCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)
167
 
      </table>
168
 
    </td>
169
 
  </tr>
170
 
</table>
171
 
<table cellspacing=5 cellpadding=0 border=0>
172
 
  <tr>
173
 
    <td>
174
 
      &nbsp;
175
 
    </td>
176
 
    <td>
177
 
 
178
 
<p>
179
 
Signature for the seek callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a17">FLAC__seekable_stream_decoder_set_seek_callback</a>() for more info.<dl compact><dt><b>
180
 
Parameters: </b><dd>
181
 
<table border=0 cellspacing=2 cellpadding=0>
182
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
183
 
The decoder instance calling the callback. </td></tr>
184
 
<tr><td valign=top><em>absolute_byte_offset</em>&nbsp;</td><td>
185
 
The offset from the beginning of the stream to seek to. </td></tr>
186
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
187
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
188
 
</table>
189
 
</dl><dl compact><dt><b>
190
 
Return values: </b><dd>
191
 
<table border=0 cellspacing=2 cellpadding=0>
192
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderSeekStatus</em>&nbsp;</td><td>
193
 
The callee's return status. </td></tr>
194
 
</table>
195
 
</dl>    </td>
196
 
  </tr>
197
 
</table>
198
 
<a name="a7" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderTellCallback"></a><p>
199
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
200
 
  <tr>
201
 
    <td class="md">
202
 
      <table cellpadding="0" cellspacing="0" border="0">
203
 
        <tr>
204
 
          <td class="md" nowrap valign="top"> typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a53">FLAC__SeekableStreamDecoderTellStatus</a>(* FLAC__SeekableStreamDecoderTellCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
205
 
      </table>
206
 
    </td>
207
 
  </tr>
208
 
</table>
209
 
<table cellspacing=5 cellpadding=0 border=0>
210
 
  <tr>
211
 
    <td>
212
 
      &nbsp;
213
 
    </td>
214
 
    <td>
215
 
 
216
 
<p>
217
 
Signature for the tell callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a18">FLAC__seekable_stream_decoder_set_tell_callback</a>() for more info.<dl compact><dt><b>
218
 
Parameters: </b><dd>
219
 
<table border=0 cellspacing=2 cellpadding=0>
220
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
221
 
The decoder instance calling the callback. </td></tr>
222
 
<tr><td valign=top><em>absolute_byte_offset</em>&nbsp;</td><td>
223
 
A pointer to storage for the current offset from the beginning of the stream. </td></tr>
224
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
225
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
226
 
</table>
227
 
</dl><dl compact><dt><b>
228
 
Return values: </b><dd>
229
 
<table border=0 cellspacing=2 cellpadding=0>
230
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderTellStatus</em>&nbsp;</td><td>
231
 
The callee's return status. </td></tr>
232
 
</table>
233
 
</dl>    </td>
234
 
  </tr>
235
 
</table>
236
 
<a name="a8" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderLengthCallback"></a><p>
237
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
238
 
  <tr>
239
 
    <td class="md">
240
 
      <table cellpadding="0" cellspacing="0" border="0">
241
 
        <tr>
242
 
          <td class="md" nowrap valign="top"> typedef <a class="el" href="group__flac__seekable__stream__decoder.html#a54">FLAC__SeekableStreamDecoderLengthStatus</a>(* FLAC__SeekableStreamDecoderLengthCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, FLAC__uint64 *stream_length, void *client_data)
243
 
      </table>
244
 
    </td>
245
 
  </tr>
246
 
</table>
247
 
<table cellspacing=5 cellpadding=0 border=0>
248
 
  <tr>
249
 
    <td>
250
 
      &nbsp;
251
 
    </td>
252
 
    <td>
253
 
 
254
 
<p>
255
 
Signature for the length callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a19">FLAC__seekable_stream_decoder_set_length_callback</a>() for more info.<dl compact><dt><b>
256
 
Parameters: </b><dd>
257
 
<table border=0 cellspacing=2 cellpadding=0>
258
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
259
 
The decoder instance calling the callback. </td></tr>
260
 
<tr><td valign=top><em>stream_length</em>&nbsp;</td><td>
261
 
A pointer to storage for the length of the stream in bytes. </td></tr>
262
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
263
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
264
 
</table>
265
 
</dl><dl compact><dt><b>
266
 
Return values: </b><dd>
267
 
<table border=0 cellspacing=2 cellpadding=0>
268
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderLengthStatus</em>&nbsp;</td><td>
269
 
The callee's return status. </td></tr>
270
 
</table>
271
 
</dl>    </td>
272
 
  </tr>
273
 
</table>
274
 
<a name="a9" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderEofCallback"></a><p>
275
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
276
 
  <tr>
277
 
    <td class="md">
278
 
      <table cellpadding="0" cellspacing="0" border="0">
279
 
        <tr>
280
 
          <td class="md" nowrap valign="top"> typedef FLAC__bool(* FLAC__SeekableStreamDecoderEofCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, void *client_data)
281
 
      </table>
282
 
    </td>
283
 
  </tr>
284
 
</table>
285
 
<table cellspacing=5 cellpadding=0 border=0>
286
 
  <tr>
287
 
    <td>
288
 
      &nbsp;
289
 
    </td>
290
 
    <td>
291
 
 
292
 
<p>
293
 
Signature for the EOF callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a20">FLAC__seekable_stream_decoder_set_eof_callback</a>() for more info.<dl compact><dt><b>
294
 
Parameters: </b><dd>
295
 
<table border=0 cellspacing=2 cellpadding=0>
296
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
297
 
The decoder instance calling the callback. </td></tr>
298
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
299
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
300
 
</table>
301
 
</dl><dl compact><dt><b>
302
 
Return values: </b><dd>
303
 
<table border=0 cellspacing=2 cellpadding=0>
304
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
305
 
<code>true</code> if the currently at the end of the stream, else <code>false</code>. </td></tr>
306
 
</table>
307
 
</dl>    </td>
308
 
  </tr>
309
 
</table>
310
 
<a name="a10" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderWriteCallback"></a><p>
311
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
312
 
  <tr>
313
 
    <td class="md">
314
 
      <table cellpadding="0" cellspacing="0" border="0">
315
 
        <tr>
316
 
          <td class="md" nowrap valign="top"> typedef <a class="el" href="group__flac__stream__decoder.html#a38">FLAC__StreamDecoderWriteStatus</a>(* FLAC__SeekableStreamDecoderWriteCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const <a class="el" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, const FLAC__int32 * const buffer[], void *client_data)
317
 
      </table>
318
 
    </td>
319
 
  </tr>
320
 
</table>
321
 
<table cellspacing=5 cellpadding=0 border=0>
322
 
  <tr>
323
 
    <td>
324
 
      &nbsp;
325
 
    </td>
326
 
    <td>
327
 
 
328
 
<p>
329
 
Signature for the write callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a21">FLAC__seekable_stream_decoder_set_write_callback</a>() and FLAC__StreamDecoderWriteCallback for more info.<dl compact><dt><b>
330
 
Parameters: </b><dd>
331
 
<table border=0 cellspacing=2 cellpadding=0>
332
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
333
 
The decoder instance calling the callback. </td></tr>
334
 
<tr><td valign=top><em>frame</em>&nbsp;</td><td>
335
 
The description of the decoded frame. </td></tr>
336
 
<tr><td valign=top><em>buffer</em>&nbsp;</td><td>
337
 
An array of pointers to decoded channels of data. </td></tr>
338
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
339
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
340
 
</table>
341
 
</dl><dl compact><dt><b>
342
 
Return values: </b><dd>
343
 
<table border=0 cellspacing=2 cellpadding=0>
344
 
<tr><td valign=top><em>FLAC__StreamDecoderWriteStatus</em>&nbsp;</td><td>
345
 
The callee's return status. </td></tr>
346
 
</table>
347
 
</dl>    </td>
348
 
  </tr>
349
 
</table>
350
 
<a name="a11" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderMetadataCallback"></a><p>
351
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
352
 
  <tr>
353
 
    <td class="md">
354
 
      <table cellpadding="0" cellspacing="0" border="0">
355
 
        <tr>
356
 
          <td class="md" nowrap valign="top"> typedef void(* FLAC__SeekableStreamDecoderMetadataCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, const <a class="el" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata, void *client_data)
357
 
      </table>
358
 
    </td>
359
 
  </tr>
360
 
</table>
361
 
<table cellspacing=5 cellpadding=0 border=0>
362
 
  <tr>
363
 
    <td>
364
 
      &nbsp;
365
 
    </td>
366
 
    <td>
367
 
 
368
 
<p>
369
 
Signature for the metadata callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a22">FLAC__seekable_stream_decoder_set_metadata_callback</a>() and FLAC__StreamDecoderMetadataCallback for more info.<dl compact><dt><b>
370
 
Parameters: </b><dd>
371
 
<table border=0 cellspacing=2 cellpadding=0>
372
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
373
 
The decoder instance calling the callback. </td></tr>
374
 
<tr><td valign=top><em>metadata</em>&nbsp;</td><td>
375
 
The decoded metadata block. </td></tr>
376
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
377
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
378
 
</table>
379
 
</dl>    </td>
380
 
  </tr>
381
 
</table>
382
 
<a name="a12" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderErrorCallback"></a><p>
383
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
384
 
  <tr>
385
 
    <td class="md">
386
 
      <table cellpadding="0" cellspacing="0" border="0">
387
 
        <tr>
388
 
          <td class="md" nowrap valign="top"> typedef void(* FLAC__SeekableStreamDecoderErrorCallback)(const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *decoder, <a class="el" href="group__flac__stream__decoder.html#a39">FLAC__StreamDecoderErrorStatus</a> status, void *client_data)
389
 
      </table>
390
 
    </td>
391
 
  </tr>
392
 
</table>
393
 
<table cellspacing=5 cellpadding=0 border=0>
394
 
  <tr>
395
 
    <td>
396
 
      &nbsp;
397
 
    </td>
398
 
    <td>
399
 
 
400
 
<p>
401
 
Signature for the error callback. See <a class="el" href="group__flac__seekable__stream__decoder.html#a23">FLAC__seekable_stream_decoder_set_error_callback</a>() and FLAC__StreamDecoderErrorCallback for more info.<dl compact><dt><b>
402
 
Parameters: </b><dd>
403
 
<table border=0 cellspacing=2 cellpadding=0>
404
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
405
 
The decoder instance calling the callback. </td></tr>
406
 
<tr><td valign=top><em>status</em>&nbsp;</td><td>
407
 
The error encountered by the decoder. </td></tr>
408
 
<tr><td valign=top><em>client_data</em>&nbsp;</td><td>
409
 
The callee's client data set through <a class="el" href="group__flac__seekable__stream__decoder.html#a24">FLAC__seekable_stream_decoder_set_client_data</a>(). </td></tr>
410
 
</table>
411
 
</dl>    </td>
412
 
  </tr>
413
 
</table>
414
 
<hr><h2>Enumeration Type Documentation</h2>
415
 
<a name="a50" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderState"></a><p>
416
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
417
 
  <tr>
418
 
    <td class="md">
419
 
      <table cellpadding="0" cellspacing="0" border="0">
420
 
        <tr>
421
 
          <td class="md" nowrap valign="top"> enum FLAC__SeekableStreamDecoderState
422
 
      </table>
423
 
    </td>
424
 
  </tr>
425
 
</table>
426
 
<table cellspacing=5 cellpadding=0 border=0>
427
 
  <tr>
428
 
    <td>
429
 
      &nbsp;
430
 
    </td>
431
 
    <td>
432
 
 
433
 
<p>
434
 
State values for a <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a>
435
 
<p>
436
 
The decoder's state can be obtained by calling <a class="el" href="group__flac__seekable__stream__decoder.html#a31">FLAC__seekable_stream_decoder_get_state</a>(). <dl compact><dt><b>
437
 
Enumeration values:</b><dd>
438
 
<table border=0 cellspacing=2 cellpadding=0>
439
 
<tr><td valign=top><em><a name="a50a13" doxytag="FLAC__SEEKABLE_STREAM_DECODER_OK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_OK</em></em>&nbsp;</td><td>
440
 
The decoder is in the normal OK state. </td></tr>
441
 
<tr><td valign=top><em><a name="a50a14" doxytag="FLAC__SEEKABLE_STREAM_DECODER_SEEKING"></a><em>FLAC__SEEKABLE_STREAM_DECODER_SEEKING</em></em>&nbsp;</td><td>
442
 
The decoder is in the process of seeking. </td></tr>
443
 
<tr><td valign=top><em><a name="a50a15" doxytag="FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM"></a><em>FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM</em></em>&nbsp;</td><td>
444
 
The decoder has reached the end of the stream. </td></tr>
445
 
<tr><td valign=top><em><a name="a50a16" doxytag="FLAC__SEEKABLE_STREAM_DECODER_MEMORY_ALLOCATION_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_MEMORY_ALLOCATION_ERROR</em></em>&nbsp;</td><td>
446
 
An error occurred allocating memory. </td></tr>
447
 
<tr><td valign=top><em><a name="a50a17" doxytag="FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR</em></em>&nbsp;</td><td>
448
 
An error occurred in the underlying stream decoder. </td></tr>
449
 
<tr><td valign=top><em><a name="a50a18" doxytag="FLAC__SEEKABLE_STREAM_DECODER_READ_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_READ_ERROR</em></em>&nbsp;</td><td>
450
 
The read callback returned an error. </td></tr>
451
 
<tr><td valign=top><em><a name="a50a19" doxytag="FLAC__SEEKABLE_STREAM_DECODER_SEEK_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_SEEK_ERROR</em></em>&nbsp;</td><td>
452
 
An error occurred while seeking or the seek or tell callback returned an error. </td></tr>
453
 
<tr><td valign=top><em><a name="a50a20" doxytag="FLAC__SEEKABLE_STREAM_DECODER_ALREADY_INITIALIZED"></a><em>FLAC__SEEKABLE_STREAM_DECODER_ALREADY_INITIALIZED</em></em>&nbsp;</td><td>
454
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>() was called when the decoder was already initialized, usually because <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>() was not called. </td></tr>
455
 
<tr><td valign=top><em><a name="a50a21" doxytag="FLAC__SEEKABLE_STREAM_DECODER_INVALID_CALLBACK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_INVALID_CALLBACK</em></em>&nbsp;</td><td>
456
 
<a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>() was called without all callbacks being set. </td></tr>
457
 
<tr><td valign=top><em><a name="a50a22" doxytag="FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED"></a><em>FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED</em></em>&nbsp;</td><td>
458
 
The decoder is in the uninitialized state. </td></tr>
459
 
</table>
460
 
</dl>
461
 
    </td>
462
 
  </tr>
463
 
</table>
464
 
<a name="a51" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderReadStatus"></a><p>
465
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
466
 
  <tr>
467
 
    <td class="md">
468
 
      <table cellpadding="0" cellspacing="0" border="0">
469
 
        <tr>
470
 
          <td class="md" nowrap valign="top"> enum FLAC__SeekableStreamDecoderReadStatus
471
 
      </table>
472
 
    </td>
473
 
  </tr>
474
 
</table>
475
 
<table cellspacing=5 cellpadding=0 border=0>
476
 
  <tr>
477
 
    <td>
478
 
      &nbsp;
479
 
    </td>
480
 
    <td>
481
 
 
482
 
<p>
483
 
Return values for the <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> read callback. <dl compact><dt><b>
484
 
Enumeration values:</b><dd>
485
 
<table border=0 cellspacing=2 cellpadding=0>
486
 
<tr><td valign=top><em><a name="a51a23" doxytag="FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK</em></em>&nbsp;</td><td>
487
 
The read was OK and decoding can continue. </td></tr>
488
 
<tr><td valign=top><em><a name="a51a24" doxytag="FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_ERROR</em></em>&nbsp;</td><td>
489
 
An unrecoverable error occurred. The decoder will return from the process call. </td></tr>
490
 
</table>
491
 
</dl>
492
 
    </td>
493
 
  </tr>
494
 
</table>
495
 
<a name="a52" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderSeekStatus"></a><p>
496
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
497
 
  <tr>
498
 
    <td class="md">
499
 
      <table cellpadding="0" cellspacing="0" border="0">
500
 
        <tr>
501
 
          <td class="md" nowrap valign="top"> enum FLAC__SeekableStreamDecoderSeekStatus
502
 
      </table>
503
 
    </td>
504
 
  </tr>
505
 
</table>
506
 
<table cellspacing=5 cellpadding=0 border=0>
507
 
  <tr>
508
 
    <td>
509
 
      &nbsp;
510
 
    </td>
511
 
    <td>
512
 
 
513
 
<p>
514
 
Return values for the <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> seek callback. <dl compact><dt><b>
515
 
Enumeration values:</b><dd>
516
 
<table border=0 cellspacing=2 cellpadding=0>
517
 
<tr><td valign=top><em><a name="a52a25" doxytag="FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK</em></em>&nbsp;</td><td>
518
 
The seek was OK and decoding can continue. </td></tr>
519
 
<tr><td valign=top><em><a name="a52a26" doxytag="FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR</em></em>&nbsp;</td><td>
520
 
An unrecoverable error occurred. The decoder will return from the process call. </td></tr>
521
 
</table>
522
 
</dl>
523
 
    </td>
524
 
  </tr>
525
 
</table>
526
 
<a name="a53" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderTellStatus"></a><p>
527
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
528
 
  <tr>
529
 
    <td class="md">
530
 
      <table cellpadding="0" cellspacing="0" border="0">
531
 
        <tr>
532
 
          <td class="md" nowrap valign="top"> enum FLAC__SeekableStreamDecoderTellStatus
533
 
      </table>
534
 
    </td>
535
 
  </tr>
536
 
</table>
537
 
<table cellspacing=5 cellpadding=0 border=0>
538
 
  <tr>
539
 
    <td>
540
 
      &nbsp;
541
 
    </td>
542
 
    <td>
543
 
 
544
 
<p>
545
 
Return values for the <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> tell callback. <dl compact><dt><b>
546
 
Enumeration values:</b><dd>
547
 
<table border=0 cellspacing=2 cellpadding=0>
548
 
<tr><td valign=top><em><a name="a53a27" doxytag="FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK</em></em>&nbsp;</td><td>
549
 
The tell was OK and decoding can continue. </td></tr>
550
 
<tr><td valign=top><em><a name="a53a28" doxytag="FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR</em></em>&nbsp;</td><td>
551
 
An unrecoverable error occurred. The decoder will return from the process call. </td></tr>
552
 
</table>
553
 
</dl>
554
 
    </td>
555
 
  </tr>
556
 
</table>
557
 
<a name="a54" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderLengthStatus"></a><p>
558
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
559
 
  <tr>
560
 
    <td class="md">
561
 
      <table cellpadding="0" cellspacing="0" border="0">
562
 
        <tr>
563
 
          <td class="md" nowrap valign="top"> enum FLAC__SeekableStreamDecoderLengthStatus
564
 
      </table>
565
 
    </td>
566
 
  </tr>
567
 
</table>
568
 
<table cellspacing=5 cellpadding=0 border=0>
569
 
  <tr>
570
 
    <td>
571
 
      &nbsp;
572
 
    </td>
573
 
    <td>
574
 
 
575
 
<p>
576
 
Return values for the <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> length callback. <dl compact><dt><b>
577
 
Enumeration values:</b><dd>
578
 
<table border=0 cellspacing=2 cellpadding=0>
579
 
<tr><td valign=top><em><a name="a54a29" doxytag="FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK"></a><em>FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK</em></em>&nbsp;</td><td>
580
 
The length call was OK and decoding can continue. </td></tr>
581
 
<tr><td valign=top><em><a name="a54a30" doxytag="FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR"></a><em>FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR</em></em>&nbsp;</td><td>
582
 
An unrecoverable error occurred. The decoder will return from the process call. </td></tr>
583
 
</table>
584
 
</dl>
585
 
    </td>
586
 
  </tr>
587
 
</table>
588
 
<hr><h2>Function Documentation</h2>
589
 
<a name="a13" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_new"></a><p>
590
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
591
 
  <tr>
592
 
    <td class="md">
593
 
      <table cellpadding="0" cellspacing="0" border="0">
594
 
        <tr>
595
 
          <td class="md" nowrap valign="top"> <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a>* FLAC__seekable_stream_decoder_new </td>
596
 
          <td class="md" valign="top">(&nbsp;</td>
597
 
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
598
 
          <td class="md" valign="top">)&nbsp;</td>
599
 
          <td class="md" nowrap></td>
600
 
        </tr>
601
 
 
602
 
      </table>
603
 
    </td>
604
 
  </tr>
605
 
</table>
606
 
<table cellspacing=5 cellpadding=0 border=0>
607
 
  <tr>
608
 
    <td>
609
 
      &nbsp;
610
 
    </td>
611
 
    <td>
612
 
 
613
 
<p>
614
 
Create a new seekable stream decoder instance. The instance is created with default settings; see the individual FLAC__seekable_stream_decoder_set_*() functions for each setting's default.<dl compact><dt><b>
615
 
Return values: </b><dd>
616
 
<table border=0 cellspacing=2 cellpadding=0>
617
 
<tr><td valign=top><em><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a></em>&nbsp;</td><td>
618
 
* <code>NULL</code> if there was an error allocating memory, else the new instance. </td></tr>
619
 
</table>
620
 
</dl>    </td>
621
 
  </tr>
622
 
</table>
623
 
<a name="a14" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_delete"></a><p>
624
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
625
 
  <tr>
626
 
    <td class="md">
627
 
      <table cellpadding="0" cellspacing="0" border="0">
628
 
        <tr>
629
 
          <td class="md" nowrap valign="top"> void FLAC__seekable_stream_decoder_delete </td>
630
 
          <td class="md" valign="top">(&nbsp;</td>
631
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
632
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
633
 
          <td class="md" valign="top">)&nbsp;</td>
634
 
          <td class="md" nowrap></td>
635
 
        </tr>
636
 
 
637
 
      </table>
638
 
    </td>
639
 
  </tr>
640
 
</table>
641
 
<table cellspacing=5 cellpadding=0 border=0>
642
 
  <tr>
643
 
    <td>
644
 
      &nbsp;
645
 
    </td>
646
 
    <td>
647
 
 
648
 
<p>
649
 
Free a decoder instance. Deletes the object pointed to by <em>decoder</em>.<dl compact><dt><b>
650
 
Parameters: </b><dd>
651
 
<table border=0 cellspacing=2 cellpadding=0>
652
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
653
 
A pointer to an existing decoder. </td></tr>
654
 
</table>
655
 
</dl><dl compact><dt><b>
656
 
Assertions:</b><dd>
657
 
 <div class="fragment"><pre>decoder != NULL 
658
 
</pre></div> </dl>    </td>
659
 
  </tr>
660
 
</table>
661
 
<a name="a15" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_md5_checking"></a><p>
662
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
663
 
  <tr>
664
 
    <td class="md">
665
 
      <table cellpadding="0" cellspacing="0" border="0">
666
 
        <tr>
667
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_md5_checking </td>
668
 
          <td class="md" valign="top">(&nbsp;</td>
669
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
670
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
671
 
        </tr>
672
 
        <tr>
673
 
          <td></td>
674
 
          <td></td>
675
 
          <td class="md" nowrap>FLAC__bool&nbsp;</td>
676
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
677
 
        </tr>
678
 
        <tr>
679
 
          <td></td>
680
 
          <td class="md">)&nbsp;</td>
681
 
          <td class="md" colspan="2"></td>
682
 
        </tr>
683
 
 
684
 
      </table>
685
 
    </td>
686
 
  </tr>
687
 
</table>
688
 
<table cellspacing=5 cellpadding=0 border=0>
689
 
  <tr>
690
 
    <td>
691
 
      &nbsp;
692
 
    </td>
693
 
    <td>
694
 
 
695
 
<p>
696
 
Set the "MD5 signature checking" flag. If <code>true</code>, the decoder will compute the MD5 signature of the unencoded audio data while decoding and compare it to the signature from the STREAMINFO block, if it exists, during <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>().
697
 
<p>
698
 
MD5 signature checking will be turned off (until the next <a class="el" href="group__flac__seekable__stream__decoder.html#a44">FLAC__seekable_stream_decoder_reset</a>()) if there is no signature in the STREAMINFO block or when a seek is attempted.<dl compact><dt><b>
699
 
Default Value:</b><dd>
700
 
 <code>false</code> </dl><dl compact><dt><b>
701
 
Parameters: </b><dd>
702
 
<table border=0 cellspacing=2 cellpadding=0>
703
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
704
 
A decoder instance to set. </td></tr>
705
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
706
 
Flag value (see above). </td></tr>
707
 
</table>
708
 
</dl><dl compact><dt><b>
709
 
Assertions:</b><dd>
710
 
 <div class="fragment"><pre>decoder != NULL 
711
 
</pre></div> </dl><dl compact><dt><b>
712
 
Return values: </b><dd>
713
 
<table border=0 cellspacing=2 cellpadding=0>
714
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
715
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
716
 
</table>
717
 
</dl>    </td>
718
 
  </tr>
719
 
</table>
720
 
<a name="a16" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_read_callback"></a><p>
721
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
722
 
  <tr>
723
 
    <td class="md">
724
 
      <table cellpadding="0" cellspacing="0" border="0">
725
 
        <tr>
726
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_read_callback </td>
727
 
          <td class="md" valign="top">(&nbsp;</td>
728
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
729
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
730
 
        </tr>
731
 
        <tr>
732
 
          <td></td>
733
 
          <td></td>
734
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a5">FLAC__SeekableStreamDecoderReadCallback</a>&nbsp;</td>
735
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
736
 
        </tr>
737
 
        <tr>
738
 
          <td></td>
739
 
          <td class="md">)&nbsp;</td>
740
 
          <td class="md" colspan="2"></td>
741
 
        </tr>
742
 
 
743
 
      </table>
744
 
    </td>
745
 
  </tr>
746
 
</table>
747
 
<table cellspacing=5 cellpadding=0 border=0>
748
 
  <tr>
749
 
    <td>
750
 
      &nbsp;
751
 
    </td>
752
 
    <td>
753
 
 
754
 
<p>
755
 
Set the read callback. This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a10">FLAC__stream_decoder_set_read_callback</a>().
756
 
<p>
757
 
<dl compact><dt><b>
758
 
Note: </b><dd>
759
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
760
 
Default Value:</b><dd>
761
 
 <code>NULL</code> </dl><dl compact><dt><b>
762
 
Parameters: </b><dd>
763
 
<table border=0 cellspacing=2 cellpadding=0>
764
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
765
 
A decoder instance to set. </td></tr>
766
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
767
 
See above. </td></tr>
768
 
</table>
769
 
</dl><dl compact><dt><b>
770
 
Assertions:</b><dd>
771
 
 <div class="fragment"><pre>decoder != NULL 
772
 
</pre></div> <div class="fragment"><pre>value != NULL 
773
 
</pre></div> </dl><dl compact><dt><b>
774
 
Return values: </b><dd>
775
 
<table border=0 cellspacing=2 cellpadding=0>
776
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
777
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
778
 
</table>
779
 
</dl>    </td>
780
 
  </tr>
781
 
</table>
782
 
<a name="a17" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_seek_callback"></a><p>
783
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
784
 
  <tr>
785
 
    <td class="md">
786
 
      <table cellpadding="0" cellspacing="0" border="0">
787
 
        <tr>
788
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_seek_callback </td>
789
 
          <td class="md" valign="top">(&nbsp;</td>
790
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
791
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
792
 
        </tr>
793
 
        <tr>
794
 
          <td></td>
795
 
          <td></td>
796
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a6">FLAC__SeekableStreamDecoderSeekCallback</a>&nbsp;</td>
797
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
798
 
        </tr>
799
 
        <tr>
800
 
          <td></td>
801
 
          <td class="md">)&nbsp;</td>
802
 
          <td class="md" colspan="2"></td>
803
 
        </tr>
804
 
 
805
 
      </table>
806
 
    </td>
807
 
  </tr>
808
 
</table>
809
 
<table cellspacing=5 cellpadding=0 border=0>
810
 
  <tr>
811
 
    <td>
812
 
      &nbsp;
813
 
    </td>
814
 
    <td>
815
 
 
816
 
<p>
817
 
Set the seek callback. The supplied function will be called when the decoder needs to seek the input stream. The decoder will pass the absolute byte offset to seek to, 0 meaning the beginning of the stream.
818
 
<p>
819
 
<dl compact><dt><b>
820
 
Note: </b><dd>
821
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
822
 
Default Value:</b><dd>
823
 
 <code>NULL</code> </dl><dl compact><dt><b>
824
 
Parameters: </b><dd>
825
 
<table border=0 cellspacing=2 cellpadding=0>
826
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
827
 
A decoder instance to set. </td></tr>
828
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
829
 
See above. </td></tr>
830
 
</table>
831
 
</dl><dl compact><dt><b>
832
 
Assertions:</b><dd>
833
 
 <div class="fragment"><pre>decoder != NULL 
834
 
</pre></div> <div class="fragment"><pre>value != NULL 
835
 
</pre></div> </dl><dl compact><dt><b>
836
 
Return values: </b><dd>
837
 
<table border=0 cellspacing=2 cellpadding=0>
838
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
839
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
840
 
</table>
841
 
</dl>    </td>
842
 
  </tr>
843
 
</table>
844
 
<a name="a18" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_tell_callback"></a><p>
845
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
846
 
  <tr>
847
 
    <td class="md">
848
 
      <table cellpadding="0" cellspacing="0" border="0">
849
 
        <tr>
850
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_tell_callback </td>
851
 
          <td class="md" valign="top">(&nbsp;</td>
852
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
853
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
854
 
        </tr>
855
 
        <tr>
856
 
          <td></td>
857
 
          <td></td>
858
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a7">FLAC__SeekableStreamDecoderTellCallback</a>&nbsp;</td>
859
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
860
 
        </tr>
861
 
        <tr>
862
 
          <td></td>
863
 
          <td class="md">)&nbsp;</td>
864
 
          <td class="md" colspan="2"></td>
865
 
        </tr>
866
 
 
867
 
      </table>
868
 
    </td>
869
 
  </tr>
870
 
</table>
871
 
<table cellspacing=5 cellpadding=0 border=0>
872
 
  <tr>
873
 
    <td>
874
 
      &nbsp;
875
 
    </td>
876
 
    <td>
877
 
 
878
 
<p>
879
 
Set the tell callback. The supplied function will be called when the decoder wants to know the current position of the stream. The callback should return the byte offset from the beginning of the stream.
880
 
<p>
881
 
<dl compact><dt><b>
882
 
Note: </b><dd>
883
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
884
 
Default Value:</b><dd>
885
 
 <code>NULL</code> </dl><dl compact><dt><b>
886
 
Parameters: </b><dd>
887
 
<table border=0 cellspacing=2 cellpadding=0>
888
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
889
 
A decoder instance to set. </td></tr>
890
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
891
 
See above. </td></tr>
892
 
</table>
893
 
</dl><dl compact><dt><b>
894
 
Assertions:</b><dd>
895
 
 <div class="fragment"><pre>decoder != NULL 
896
 
</pre></div> <div class="fragment"><pre>value != NULL 
897
 
</pre></div> </dl><dl compact><dt><b>
898
 
Return values: </b><dd>
899
 
<table border=0 cellspacing=2 cellpadding=0>
900
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
901
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
902
 
</table>
903
 
</dl>    </td>
904
 
  </tr>
905
 
</table>
906
 
<a name="a19" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_length_callback"></a><p>
907
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
908
 
  <tr>
909
 
    <td class="md">
910
 
      <table cellpadding="0" cellspacing="0" border="0">
911
 
        <tr>
912
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_length_callback </td>
913
 
          <td class="md" valign="top">(&nbsp;</td>
914
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
915
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
916
 
        </tr>
917
 
        <tr>
918
 
          <td></td>
919
 
          <td></td>
920
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a8">FLAC__SeekableStreamDecoderLengthCallback</a>&nbsp;</td>
921
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
922
 
        </tr>
923
 
        <tr>
924
 
          <td></td>
925
 
          <td class="md">)&nbsp;</td>
926
 
          <td class="md" colspan="2"></td>
927
 
        </tr>
928
 
 
929
 
      </table>
930
 
    </td>
931
 
  </tr>
932
 
</table>
933
 
<table cellspacing=5 cellpadding=0 border=0>
934
 
  <tr>
935
 
    <td>
936
 
      &nbsp;
937
 
    </td>
938
 
    <td>
939
 
 
940
 
<p>
941
 
Set the length callback. The supplied function will be called when the decoder wants to know the total length of the stream in bytes.
942
 
<p>
943
 
<dl compact><dt><b>
944
 
Note: </b><dd>
945
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
946
 
Default Value:</b><dd>
947
 
 <code>NULL</code> </dl><dl compact><dt><b>
948
 
Parameters: </b><dd>
949
 
<table border=0 cellspacing=2 cellpadding=0>
950
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
951
 
A decoder instance to set. </td></tr>
952
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
953
 
See above. </td></tr>
954
 
</table>
955
 
</dl><dl compact><dt><b>
956
 
Assertions:</b><dd>
957
 
 <div class="fragment"><pre>decoder != NULL 
958
 
</pre></div> <div class="fragment"><pre>value != NULL 
959
 
</pre></div> </dl><dl compact><dt><b>
960
 
Return values: </b><dd>
961
 
<table border=0 cellspacing=2 cellpadding=0>
962
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
963
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
964
 
</table>
965
 
</dl>    </td>
966
 
  </tr>
967
 
</table>
968
 
<a name="a20" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_eof_callback"></a><p>
969
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
970
 
  <tr>
971
 
    <td class="md">
972
 
      <table cellpadding="0" cellspacing="0" border="0">
973
 
        <tr>
974
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_eof_callback </td>
975
 
          <td class="md" valign="top">(&nbsp;</td>
976
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
977
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
978
 
        </tr>
979
 
        <tr>
980
 
          <td></td>
981
 
          <td></td>
982
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a9">FLAC__SeekableStreamDecoderEofCallback</a>&nbsp;</td>
983
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
984
 
        </tr>
985
 
        <tr>
986
 
          <td></td>
987
 
          <td class="md">)&nbsp;</td>
988
 
          <td class="md" colspan="2"></td>
989
 
        </tr>
990
 
 
991
 
      </table>
992
 
    </td>
993
 
  </tr>
994
 
</table>
995
 
<table cellspacing=5 cellpadding=0 border=0>
996
 
  <tr>
997
 
    <td>
998
 
      &nbsp;
999
 
    </td>
1000
 
    <td>
1001
 
 
1002
 
<p>
1003
 
Set the eof callback. The supplied function will be called when the decoder needs to know if the end of the stream has been reached.
1004
 
<p>
1005
 
<dl compact><dt><b>
1006
 
Note: </b><dd>
1007
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
1008
 
Default Value:</b><dd>
1009
 
 <code>NULL</code> </dl><dl compact><dt><b>
1010
 
Parameters: </b><dd>
1011
 
<table border=0 cellspacing=2 cellpadding=0>
1012
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1013
 
A decoder instance to set. </td></tr>
1014
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
1015
 
See above. </td></tr>
1016
 
</table>
1017
 
</dl><dl compact><dt><b>
1018
 
Assertions:</b><dd>
1019
 
 <div class="fragment"><pre>decoder != NULL 
1020
 
</pre></div> <div class="fragment"><pre>value != NULL 
1021
 
</pre></div> </dl><dl compact><dt><b>
1022
 
Return values: </b><dd>
1023
 
<table border=0 cellspacing=2 cellpadding=0>
1024
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1025
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1026
 
</table>
1027
 
</dl>    </td>
1028
 
  </tr>
1029
 
</table>
1030
 
<a name="a21" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_write_callback"></a><p>
1031
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1032
 
  <tr>
1033
 
    <td class="md">
1034
 
      <table cellpadding="0" cellspacing="0" border="0">
1035
 
        <tr>
1036
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_write_callback </td>
1037
 
          <td class="md" valign="top">(&nbsp;</td>
1038
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1039
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1040
 
        </tr>
1041
 
        <tr>
1042
 
          <td></td>
1043
 
          <td></td>
1044
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a10">FLAC__SeekableStreamDecoderWriteCallback</a>&nbsp;</td>
1045
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
1046
 
        </tr>
1047
 
        <tr>
1048
 
          <td></td>
1049
 
          <td class="md">)&nbsp;</td>
1050
 
          <td class="md" colspan="2"></td>
1051
 
        </tr>
1052
 
 
1053
 
      </table>
1054
 
    </td>
1055
 
  </tr>
1056
 
</table>
1057
 
<table cellspacing=5 cellpadding=0 border=0>
1058
 
  <tr>
1059
 
    <td>
1060
 
      &nbsp;
1061
 
    </td>
1062
 
    <td>
1063
 
 
1064
 
<p>
1065
 
Set the write callback. This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a11">FLAC__stream_decoder_set_write_callback</a>().
1066
 
<p>
1067
 
<dl compact><dt><b>
1068
 
Note: </b><dd>
1069
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
1070
 
Default Value:</b><dd>
1071
 
 <code>NULL</code> </dl><dl compact><dt><b>
1072
 
Parameters: </b><dd>
1073
 
<table border=0 cellspacing=2 cellpadding=0>
1074
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1075
 
A decoder instance to set. </td></tr>
1076
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
1077
 
See above. </td></tr>
1078
 
</table>
1079
 
</dl><dl compact><dt><b>
1080
 
Assertions:</b><dd>
1081
 
 <div class="fragment"><pre>decoder != NULL 
1082
 
</pre></div> <div class="fragment"><pre>value != NULL 
1083
 
</pre></div> </dl><dl compact><dt><b>
1084
 
Return values: </b><dd>
1085
 
<table border=0 cellspacing=2 cellpadding=0>
1086
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1087
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1088
 
</table>
1089
 
</dl>    </td>
1090
 
  </tr>
1091
 
</table>
1092
 
<a name="a22" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_callback"></a><p>
1093
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1094
 
  <tr>
1095
 
    <td class="md">
1096
 
      <table cellpadding="0" cellspacing="0" border="0">
1097
 
        <tr>
1098
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_callback </td>
1099
 
          <td class="md" valign="top">(&nbsp;</td>
1100
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1101
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1102
 
        </tr>
1103
 
        <tr>
1104
 
          <td></td>
1105
 
          <td></td>
1106
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a11">FLAC__SeekableStreamDecoderMetadataCallback</a>&nbsp;</td>
1107
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
1108
 
        </tr>
1109
 
        <tr>
1110
 
          <td></td>
1111
 
          <td class="md">)&nbsp;</td>
1112
 
          <td class="md" colspan="2"></td>
1113
 
        </tr>
1114
 
 
1115
 
      </table>
1116
 
    </td>
1117
 
  </tr>
1118
 
</table>
1119
 
<table cellspacing=5 cellpadding=0 border=0>
1120
 
  <tr>
1121
 
    <td>
1122
 
      &nbsp;
1123
 
    </td>
1124
 
    <td>
1125
 
 
1126
 
<p>
1127
 
Set the metadata callback. This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a12">FLAC__stream_decoder_set_metadata_callback</a>().
1128
 
<p>
1129
 
<dl compact><dt><b>
1130
 
Note: </b><dd>
1131
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
1132
 
Default Value:</b><dd>
1133
 
 <code>NULL</code> </dl><dl compact><dt><b>
1134
 
Parameters: </b><dd>
1135
 
<table border=0 cellspacing=2 cellpadding=0>
1136
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1137
 
A decoder instance to set. </td></tr>
1138
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
1139
 
See above. </td></tr>
1140
 
</table>
1141
 
</dl><dl compact><dt><b>
1142
 
Assertions:</b><dd>
1143
 
 <div class="fragment"><pre>decoder != NULL 
1144
 
</pre></div> <div class="fragment"><pre>value != NULL 
1145
 
</pre></div> </dl><dl compact><dt><b>
1146
 
Return values: </b><dd>
1147
 
<table border=0 cellspacing=2 cellpadding=0>
1148
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1149
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1150
 
</table>
1151
 
</dl>    </td>
1152
 
  </tr>
1153
 
</table>
1154
 
<a name="a23" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_error_callback"></a><p>
1155
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1156
 
  <tr>
1157
 
    <td class="md">
1158
 
      <table cellpadding="0" cellspacing="0" border="0">
1159
 
        <tr>
1160
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_error_callback </td>
1161
 
          <td class="md" valign="top">(&nbsp;</td>
1162
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1163
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1164
 
        </tr>
1165
 
        <tr>
1166
 
          <td></td>
1167
 
          <td></td>
1168
 
          <td class="md" nowrap><a class="el" href="group__flac__seekable__stream__decoder.html#a12">FLAC__SeekableStreamDecoderErrorCallback</a>&nbsp;</td>
1169
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
1170
 
        </tr>
1171
 
        <tr>
1172
 
          <td></td>
1173
 
          <td class="md">)&nbsp;</td>
1174
 
          <td class="md" colspan="2"></td>
1175
 
        </tr>
1176
 
 
1177
 
      </table>
1178
 
    </td>
1179
 
  </tr>
1180
 
</table>
1181
 
<table cellspacing=5 cellpadding=0 border=0>
1182
 
  <tr>
1183
 
    <td>
1184
 
      &nbsp;
1185
 
    </td>
1186
 
    <td>
1187
 
 
1188
 
<p>
1189
 
Set the error callback. This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a13">FLAC__stream_decoder_set_error_callback</a>().
1190
 
<p>
1191
 
<dl compact><dt><b>
1192
 
Note: </b><dd>
1193
 
 The callback is mandatory and must be set before initialization.</dl><dl compact><dt><b>
1194
 
Default Value:</b><dd>
1195
 
 <code>NULL</code> </dl><dl compact><dt><b>
1196
 
Parameters: </b><dd>
1197
 
<table border=0 cellspacing=2 cellpadding=0>
1198
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1199
 
A decoder instance to set. </td></tr>
1200
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
1201
 
See above. </td></tr>
1202
 
</table>
1203
 
</dl><dl compact><dt><b>
1204
 
Assertions:</b><dd>
1205
 
 <div class="fragment"><pre>decoder != NULL 
1206
 
</pre></div> <div class="fragment"><pre>value != NULL 
1207
 
</pre></div> </dl><dl compact><dt><b>
1208
 
Return values: </b><dd>
1209
 
<table border=0 cellspacing=2 cellpadding=0>
1210
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1211
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1212
 
</table>
1213
 
</dl>    </td>
1214
 
  </tr>
1215
 
</table>
1216
 
<a name="a24" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_client_data"></a><p>
1217
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1218
 
  <tr>
1219
 
    <td class="md">
1220
 
      <table cellpadding="0" cellspacing="0" border="0">
1221
 
        <tr>
1222
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_client_data </td>
1223
 
          <td class="md" valign="top">(&nbsp;</td>
1224
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1225
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1226
 
        </tr>
1227
 
        <tr>
1228
 
          <td></td>
1229
 
          <td></td>
1230
 
          <td class="md" nowrap>void *&nbsp;</td>
1231
 
          <td class="mdname" nowrap>&nbsp; <em>value</em></td>
1232
 
        </tr>
1233
 
        <tr>
1234
 
          <td></td>
1235
 
          <td class="md">)&nbsp;</td>
1236
 
          <td class="md" colspan="2"></td>
1237
 
        </tr>
1238
 
 
1239
 
      </table>
1240
 
    </td>
1241
 
  </tr>
1242
 
</table>
1243
 
<table cellspacing=5 cellpadding=0 border=0>
1244
 
  <tr>
1245
 
    <td>
1246
 
      &nbsp;
1247
 
    </td>
1248
 
    <td>
1249
 
 
1250
 
<p>
1251
 
Set the client data to be passed back to callbacks. This value will be supplied to callbacks in their <em>client_data</em> argument.<dl compact><dt><b>
1252
 
Default Value:</b><dd>
1253
 
 <code>NULL</code> </dl><dl compact><dt><b>
1254
 
Parameters: </b><dd>
1255
 
<table border=0 cellspacing=2 cellpadding=0>
1256
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1257
 
A decoder instance to set. </td></tr>
1258
 
<tr><td valign=top><em>value</em>&nbsp;</td><td>
1259
 
See above. </td></tr>
1260
 
</table>
1261
 
</dl><dl compact><dt><b>
1262
 
Assertions:</b><dd>
1263
 
 <div class="fragment"><pre>decoder != NULL 
1264
 
</pre></div> </dl><dl compact><dt><b>
1265
 
Return values: </b><dd>
1266
 
<table border=0 cellspacing=2 cellpadding=0>
1267
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1268
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1269
 
</table>
1270
 
</dl>    </td>
1271
 
  </tr>
1272
 
</table>
1273
 
<a name="a25" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_respond"></a><p>
1274
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1275
 
  <tr>
1276
 
    <td class="md">
1277
 
      <table cellpadding="0" cellspacing="0" border="0">
1278
 
        <tr>
1279
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_respond </td>
1280
 
          <td class="md" valign="top">(&nbsp;</td>
1281
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1282
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1283
 
        </tr>
1284
 
        <tr>
1285
 
          <td></td>
1286
 
          <td></td>
1287
 
          <td class="md" nowrap><a class="el" href="group__flac__format.html#a97">FLAC__MetadataType</a>&nbsp;</td>
1288
 
          <td class="mdname" nowrap>&nbsp; <em>type</em></td>
1289
 
        </tr>
1290
 
        <tr>
1291
 
          <td></td>
1292
 
          <td class="md">)&nbsp;</td>
1293
 
          <td class="md" colspan="2"></td>
1294
 
        </tr>
1295
 
 
1296
 
      </table>
1297
 
    </td>
1298
 
  </tr>
1299
 
</table>
1300
 
<table cellspacing=5 cellpadding=0 border=0>
1301
 
  <tr>
1302
 
    <td>
1303
 
      &nbsp;
1304
 
    </td>
1305
 
    <td>
1306
 
 
1307
 
<p>
1308
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a15">FLAC__stream_decoder_set_metadata_respond</a>().<dl compact><dt><b>
1309
 
Default Value:</b><dd>
1310
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1311
 
Parameters: </b><dd>
1312
 
<table border=0 cellspacing=2 cellpadding=0>
1313
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1314
 
A decoder instance to set. </td></tr>
1315
 
<tr><td valign=top><em>type</em>&nbsp;</td><td>
1316
 
See above. </td></tr>
1317
 
</table>
1318
 
</dl><dl compact><dt><b>
1319
 
Assertions:</b><dd>
1320
 
 <div class="fragment"><pre>decoder != NULL 
1321
 
</pre></div> <em>type</em> is valid </dl><dl compact><dt><b>
1322
 
Return values: </b><dd>
1323
 
<table border=0 cellspacing=2 cellpadding=0>
1324
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1325
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1326
 
</table>
1327
 
</dl>    </td>
1328
 
  </tr>
1329
 
</table>
1330
 
<a name="a26" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_respond_application"></a><p>
1331
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1332
 
  <tr>
1333
 
    <td class="md">
1334
 
      <table cellpadding="0" cellspacing="0" border="0">
1335
 
        <tr>
1336
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_respond_application </td>
1337
 
          <td class="md" valign="top">(&nbsp;</td>
1338
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1339
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1340
 
        </tr>
1341
 
        <tr>
1342
 
          <td></td>
1343
 
          <td></td>
1344
 
          <td class="md" nowrap>const FLAC__byte&nbsp;</td>
1345
 
          <td class="mdname" nowrap>&nbsp; <em>id</em>[4]</td>
1346
 
        </tr>
1347
 
        <tr>
1348
 
          <td></td>
1349
 
          <td class="md">)&nbsp;</td>
1350
 
          <td class="md" colspan="2"></td>
1351
 
        </tr>
1352
 
 
1353
 
      </table>
1354
 
    </td>
1355
 
  </tr>
1356
 
</table>
1357
 
<table cellspacing=5 cellpadding=0 border=0>
1358
 
  <tr>
1359
 
    <td>
1360
 
      &nbsp;
1361
 
    </td>
1362
 
    <td>
1363
 
 
1364
 
<p>
1365
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a16">FLAC__stream_decoder_set_metadata_respond_application</a>().<dl compact><dt><b>
1366
 
Default Value:</b><dd>
1367
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1368
 
Parameters: </b><dd>
1369
 
<table border=0 cellspacing=2 cellpadding=0>
1370
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1371
 
A decoder instance to set. </td></tr>
1372
 
<tr><td valign=top><em>id</em>&nbsp;</td><td>
1373
 
See above. </td></tr>
1374
 
</table>
1375
 
</dl><dl compact><dt><b>
1376
 
Assertions:</b><dd>
1377
 
 <div class="fragment"><pre>decoder != NULL 
1378
 
</pre></div> <div class="fragment"><pre>id != NULL 
1379
 
</pre></div> </dl><dl compact><dt><b>
1380
 
Return values: </b><dd>
1381
 
<table border=0 cellspacing=2 cellpadding=0>
1382
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1383
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1384
 
</table>
1385
 
</dl>    </td>
1386
 
  </tr>
1387
 
</table>
1388
 
<a name="a27" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_respond_all"></a><p>
1389
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1390
 
  <tr>
1391
 
    <td class="md">
1392
 
      <table cellpadding="0" cellspacing="0" border="0">
1393
 
        <tr>
1394
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_respond_all </td>
1395
 
          <td class="md" valign="top">(&nbsp;</td>
1396
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1397
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1398
 
          <td class="md" valign="top">)&nbsp;</td>
1399
 
          <td class="md" nowrap></td>
1400
 
        </tr>
1401
 
 
1402
 
      </table>
1403
 
    </td>
1404
 
  </tr>
1405
 
</table>
1406
 
<table cellspacing=5 cellpadding=0 border=0>
1407
 
  <tr>
1408
 
    <td>
1409
 
      &nbsp;
1410
 
    </td>
1411
 
    <td>
1412
 
 
1413
 
<p>
1414
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a17">FLAC__stream_decoder_set_metadata_respond_all</a>().<dl compact><dt><b>
1415
 
Default Value:</b><dd>
1416
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1417
 
Parameters: </b><dd>
1418
 
<table border=0 cellspacing=2 cellpadding=0>
1419
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1420
 
A decoder instance to set. </td></tr>
1421
 
</table>
1422
 
</dl><dl compact><dt><b>
1423
 
Assertions:</b><dd>
1424
 
 <div class="fragment"><pre>decoder != NULL 
1425
 
</pre></div> </dl><dl compact><dt><b>
1426
 
Return values: </b><dd>
1427
 
<table border=0 cellspacing=2 cellpadding=0>
1428
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1429
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1430
 
</table>
1431
 
</dl>    </td>
1432
 
  </tr>
1433
 
</table>
1434
 
<a name="a28" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_ignore"></a><p>
1435
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1436
 
  <tr>
1437
 
    <td class="md">
1438
 
      <table cellpadding="0" cellspacing="0" border="0">
1439
 
        <tr>
1440
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_ignore </td>
1441
 
          <td class="md" valign="top">(&nbsp;</td>
1442
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1443
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1444
 
        </tr>
1445
 
        <tr>
1446
 
          <td></td>
1447
 
          <td></td>
1448
 
          <td class="md" nowrap><a class="el" href="group__flac__format.html#a97">FLAC__MetadataType</a>&nbsp;</td>
1449
 
          <td class="mdname" nowrap>&nbsp; <em>type</em></td>
1450
 
        </tr>
1451
 
        <tr>
1452
 
          <td></td>
1453
 
          <td class="md">)&nbsp;</td>
1454
 
          <td class="md" colspan="2"></td>
1455
 
        </tr>
1456
 
 
1457
 
      </table>
1458
 
    </td>
1459
 
  </tr>
1460
 
</table>
1461
 
<table cellspacing=5 cellpadding=0 border=0>
1462
 
  <tr>
1463
 
    <td>
1464
 
      &nbsp;
1465
 
    </td>
1466
 
    <td>
1467
 
 
1468
 
<p>
1469
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a18">FLAC__stream_decoder_set_metadata_ignore</a>().<dl compact><dt><b>
1470
 
Default Value:</b><dd>
1471
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1472
 
Parameters: </b><dd>
1473
 
<table border=0 cellspacing=2 cellpadding=0>
1474
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1475
 
A decoder instance to set. </td></tr>
1476
 
<tr><td valign=top><em>type</em>&nbsp;</td><td>
1477
 
See above. </td></tr>
1478
 
</table>
1479
 
</dl><dl compact><dt><b>
1480
 
Assertions:</b><dd>
1481
 
 <div class="fragment"><pre>decoder != NULL 
1482
 
</pre></div> <em>type</em> is valid </dl><dl compact><dt><b>
1483
 
Return values: </b><dd>
1484
 
<table border=0 cellspacing=2 cellpadding=0>
1485
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1486
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1487
 
</table>
1488
 
</dl>    </td>
1489
 
  </tr>
1490
 
</table>
1491
 
<a name="a29" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_ignore_application"></a><p>
1492
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1493
 
  <tr>
1494
 
    <td class="md">
1495
 
      <table cellpadding="0" cellspacing="0" border="0">
1496
 
        <tr>
1497
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_ignore_application </td>
1498
 
          <td class="md" valign="top">(&nbsp;</td>
1499
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1500
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
1501
 
        </tr>
1502
 
        <tr>
1503
 
          <td></td>
1504
 
          <td></td>
1505
 
          <td class="md" nowrap>const FLAC__byte&nbsp;</td>
1506
 
          <td class="mdname" nowrap>&nbsp; <em>id</em>[4]</td>
1507
 
        </tr>
1508
 
        <tr>
1509
 
          <td></td>
1510
 
          <td class="md">)&nbsp;</td>
1511
 
          <td class="md" colspan="2"></td>
1512
 
        </tr>
1513
 
 
1514
 
      </table>
1515
 
    </td>
1516
 
  </tr>
1517
 
</table>
1518
 
<table cellspacing=5 cellpadding=0 border=0>
1519
 
  <tr>
1520
 
    <td>
1521
 
      &nbsp;
1522
 
    </td>
1523
 
    <td>
1524
 
 
1525
 
<p>
1526
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a19">FLAC__stream_decoder_set_metadata_ignore_application</a>().<dl compact><dt><b>
1527
 
Default Value:</b><dd>
1528
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1529
 
Parameters: </b><dd>
1530
 
<table border=0 cellspacing=2 cellpadding=0>
1531
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1532
 
A decoder instance to set. </td></tr>
1533
 
<tr><td valign=top><em>id</em>&nbsp;</td><td>
1534
 
See above. </td></tr>
1535
 
</table>
1536
 
</dl><dl compact><dt><b>
1537
 
Assertions:</b><dd>
1538
 
 <div class="fragment"><pre>decoder != NULL 
1539
 
</pre></div> <div class="fragment"><pre>id != NULL 
1540
 
</pre></div> </dl><dl compact><dt><b>
1541
 
Return values: </b><dd>
1542
 
<table border=0 cellspacing=2 cellpadding=0>
1543
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1544
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1545
 
</table>
1546
 
</dl>    </td>
1547
 
  </tr>
1548
 
</table>
1549
 
<a name="a30" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_set_metadata_ignore_all"></a><p>
1550
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1551
 
  <tr>
1552
 
    <td class="md">
1553
 
      <table cellpadding="0" cellspacing="0" border="0">
1554
 
        <tr>
1555
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_set_metadata_ignore_all </td>
1556
 
          <td class="md" valign="top">(&nbsp;</td>
1557
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1558
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1559
 
          <td class="md" valign="top">)&nbsp;</td>
1560
 
          <td class="md" nowrap></td>
1561
 
        </tr>
1562
 
 
1563
 
      </table>
1564
 
    </td>
1565
 
  </tr>
1566
 
</table>
1567
 
<table cellspacing=5 cellpadding=0 border=0>
1568
 
  <tr>
1569
 
    <td>
1570
 
      &nbsp;
1571
 
    </td>
1572
 
    <td>
1573
 
 
1574
 
<p>
1575
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a20">FLAC__stream_decoder_set_metadata_ignore_all</a>().<dl compact><dt><b>
1576
 
Default Value:</b><dd>
1577
 
 By default, only the <code>STREAMINFO</code> block is returned via the metadata callback. </dl><dl compact><dt><b>
1578
 
Parameters: </b><dd>
1579
 
<table border=0 cellspacing=2 cellpadding=0>
1580
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1581
 
A decoder instance to set. </td></tr>
1582
 
</table>
1583
 
</dl><dl compact><dt><b>
1584
 
Assertions:</b><dd>
1585
 
 <div class="fragment"><pre>decoder != NULL 
1586
 
</pre></div> </dl><dl compact><dt><b>
1587
 
Return values: </b><dd>
1588
 
<table border=0 cellspacing=2 cellpadding=0>
1589
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1590
 
<code>false</code> if the decoder is already initialized, else <code>true</code>. </td></tr>
1591
 
</table>
1592
 
</dl>    </td>
1593
 
  </tr>
1594
 
</table>
1595
 
<a name="a31" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_state"></a><p>
1596
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1597
 
  <tr>
1598
 
    <td class="md">
1599
 
      <table cellpadding="0" cellspacing="0" border="0">
1600
 
        <tr>
1601
 
          <td class="md" nowrap valign="top"> <a class="el" href="group__flac__seekable__stream__decoder.html#a50">FLAC__SeekableStreamDecoderState</a> FLAC__seekable_stream_decoder_get_state </td>
1602
 
          <td class="md" valign="top">(&nbsp;</td>
1603
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1604
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1605
 
          <td class="md" valign="top">)&nbsp;</td>
1606
 
          <td class="md" nowrap></td>
1607
 
        </tr>
1608
 
 
1609
 
      </table>
1610
 
    </td>
1611
 
  </tr>
1612
 
</table>
1613
 
<table cellspacing=5 cellpadding=0 border=0>
1614
 
  <tr>
1615
 
    <td>
1616
 
      &nbsp;
1617
 
    </td>
1618
 
    <td>
1619
 
 
1620
 
<p>
1621
 
Get the current decoder state.<dl compact><dt><b>
1622
 
Parameters: </b><dd>
1623
 
<table border=0 cellspacing=2 cellpadding=0>
1624
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1625
 
A decoder instance to query. </td></tr>
1626
 
</table>
1627
 
</dl><dl compact><dt><b>
1628
 
Assertions:</b><dd>
1629
 
 <div class="fragment"><pre>decoder != NULL 
1630
 
</pre></div> </dl><dl compact><dt><b>
1631
 
Return values: </b><dd>
1632
 
<table border=0 cellspacing=2 cellpadding=0>
1633
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderState</em>&nbsp;</td><td>
1634
 
The current decoder state. </td></tr>
1635
 
</table>
1636
 
</dl>    </td>
1637
 
  </tr>
1638
 
</table>
1639
 
<a name="a32" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_stream_decoder_state"></a><p>
1640
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1641
 
  <tr>
1642
 
    <td class="md">
1643
 
      <table cellpadding="0" cellspacing="0" border="0">
1644
 
        <tr>
1645
 
          <td class="md" nowrap valign="top"> <a class="el" href="group__flac__stream__decoder.html#a36">FLAC__StreamDecoderState</a> FLAC__seekable_stream_decoder_get_stream_decoder_state </td>
1646
 
          <td class="md" valign="top">(&nbsp;</td>
1647
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1648
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1649
 
          <td class="md" valign="top">)&nbsp;</td>
1650
 
          <td class="md" nowrap></td>
1651
 
        </tr>
1652
 
 
1653
 
      </table>
1654
 
    </td>
1655
 
  </tr>
1656
 
</table>
1657
 
<table cellspacing=5 cellpadding=0 border=0>
1658
 
  <tr>
1659
 
    <td>
1660
 
      &nbsp;
1661
 
    </td>
1662
 
    <td>
1663
 
 
1664
 
<p>
1665
 
Get the state of the underlying stream decoder. Useful when the seekable stream decoder state is <code>FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR</code>.<dl compact><dt><b>
1666
 
Parameters: </b><dd>
1667
 
<table border=0 cellspacing=2 cellpadding=0>
1668
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1669
 
A decoder instance to query. </td></tr>
1670
 
</table>
1671
 
</dl><dl compact><dt><b>
1672
 
Assertions:</b><dd>
1673
 
 <div class="fragment"><pre>decoder != NULL 
1674
 
</pre></div> </dl><dl compact><dt><b>
1675
 
Return values: </b><dd>
1676
 
<table border=0 cellspacing=2 cellpadding=0>
1677
 
<tr><td valign=top><em>FLAC__StreamDecoderState</em>&nbsp;</td><td>
1678
 
The stream decoder state. </td></tr>
1679
 
</table>
1680
 
</dl>    </td>
1681
 
  </tr>
1682
 
</table>
1683
 
<a name="a33" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_resolved_state_string"></a><p>
1684
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1685
 
  <tr>
1686
 
    <td class="md">
1687
 
      <table cellpadding="0" cellspacing="0" border="0">
1688
 
        <tr>
1689
 
          <td class="md" nowrap valign="top"> const char* FLAC__seekable_stream_decoder_get_resolved_state_string </td>
1690
 
          <td class="md" valign="top">(&nbsp;</td>
1691
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1692
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1693
 
          <td class="md" valign="top">)&nbsp;</td>
1694
 
          <td class="md" nowrap></td>
1695
 
        </tr>
1696
 
 
1697
 
      </table>
1698
 
    </td>
1699
 
  </tr>
1700
 
</table>
1701
 
<table cellspacing=5 cellpadding=0 border=0>
1702
 
  <tr>
1703
 
    <td>
1704
 
      &nbsp;
1705
 
    </td>
1706
 
    <td>
1707
 
 
1708
 
<p>
1709
 
Get the current decoder state as a C string. This version automatically resolves <code>FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR</code> by getting the stream decoder's state.<dl compact><dt><b>
1710
 
Parameters: </b><dd>
1711
 
<table border=0 cellspacing=2 cellpadding=0>
1712
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1713
 
A decoder instance to query. </td></tr>
1714
 
</table>
1715
 
</dl><dl compact><dt><b>
1716
 
Assertions:</b><dd>
1717
 
 <div class="fragment"><pre>decoder != NULL 
1718
 
</pre></div> </dl><dl compact><dt><b>
1719
 
Return values: </b><dd>
1720
 
<table border=0 cellspacing=2 cellpadding=0>
1721
 
<tr><td valign=top><em>const</em>&nbsp;</td><td>
1722
 
char * The decoder state as a C string. Do not modify the contents. </td></tr>
1723
 
</table>
1724
 
</dl>    </td>
1725
 
  </tr>
1726
 
</table>
1727
 
<a name="a34" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_md5_checking"></a><p>
1728
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1729
 
  <tr>
1730
 
    <td class="md">
1731
 
      <table cellpadding="0" cellspacing="0" border="0">
1732
 
        <tr>
1733
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_get_md5_checking </td>
1734
 
          <td class="md" valign="top">(&nbsp;</td>
1735
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1736
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1737
 
          <td class="md" valign="top">)&nbsp;</td>
1738
 
          <td class="md" nowrap></td>
1739
 
        </tr>
1740
 
 
1741
 
      </table>
1742
 
    </td>
1743
 
  </tr>
1744
 
</table>
1745
 
<table cellspacing=5 cellpadding=0 border=0>
1746
 
  <tr>
1747
 
    <td>
1748
 
      &nbsp;
1749
 
    </td>
1750
 
    <td>
1751
 
 
1752
 
<p>
1753
 
Get the "MD5 signature checking" flag. This is the value of the setting, not whether or not the decoder is currently checking the MD5 (remember, it can be turned off automatically by a seek). When the decoder is reset the flag will be restored to the value returned by this function.<dl compact><dt><b>
1754
 
Parameters: </b><dd>
1755
 
<table border=0 cellspacing=2 cellpadding=0>
1756
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1757
 
A decoder instance to query. </td></tr>
1758
 
</table>
1759
 
</dl><dl compact><dt><b>
1760
 
Assertions:</b><dd>
1761
 
 <div class="fragment"><pre>decoder != NULL 
1762
 
</pre></div> </dl><dl compact><dt><b>
1763
 
Return values: </b><dd>
1764
 
<table border=0 cellspacing=2 cellpadding=0>
1765
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
1766
 
See above. </td></tr>
1767
 
</table>
1768
 
</dl>    </td>
1769
 
  </tr>
1770
 
</table>
1771
 
<a name="a35" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_channels"></a><p>
1772
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1773
 
  <tr>
1774
 
    <td class="md">
1775
 
      <table cellpadding="0" cellspacing="0" border="0">
1776
 
        <tr>
1777
 
          <td class="md" nowrap valign="top"> unsigned FLAC__seekable_stream_decoder_get_channels </td>
1778
 
          <td class="md" valign="top">(&nbsp;</td>
1779
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1780
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1781
 
          <td class="md" valign="top">)&nbsp;</td>
1782
 
          <td class="md" nowrap></td>
1783
 
        </tr>
1784
 
 
1785
 
      </table>
1786
 
    </td>
1787
 
  </tr>
1788
 
</table>
1789
 
<table cellspacing=5 cellpadding=0 border=0>
1790
 
  <tr>
1791
 
    <td>
1792
 
      &nbsp;
1793
 
    </td>
1794
 
    <td>
1795
 
 
1796
 
<p>
1797
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a23">FLAC__stream_decoder_get_channels</a>().<dl compact><dt><b>
1798
 
Parameters: </b><dd>
1799
 
<table border=0 cellspacing=2 cellpadding=0>
1800
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1801
 
A decoder instance to query. </td></tr>
1802
 
</table>
1803
 
</dl><dl compact><dt><b>
1804
 
Assertions:</b><dd>
1805
 
 <div class="fragment"><pre>decoder != NULL 
1806
 
</pre></div> </dl><dl compact><dt><b>
1807
 
Return values: </b><dd>
1808
 
<table border=0 cellspacing=2 cellpadding=0>
1809
 
<tr><td valign=top><em>unsigned</em>&nbsp;</td><td>
1810
 
See above. </td></tr>
1811
 
</table>
1812
 
</dl>    </td>
1813
 
  </tr>
1814
 
</table>
1815
 
<a name="a36" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_channel_assignment"></a><p>
1816
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1817
 
  <tr>
1818
 
    <td class="md">
1819
 
      <table cellpadding="0" cellspacing="0" border="0">
1820
 
        <tr>
1821
 
          <td class="md" nowrap valign="top"> <a class="el" href="group__flac__format.html#a95">FLAC__ChannelAssignment</a> FLAC__seekable_stream_decoder_get_channel_assignment </td>
1822
 
          <td class="md" valign="top">(&nbsp;</td>
1823
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1824
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1825
 
          <td class="md" valign="top">)&nbsp;</td>
1826
 
          <td class="md" nowrap></td>
1827
 
        </tr>
1828
 
 
1829
 
      </table>
1830
 
    </td>
1831
 
  </tr>
1832
 
</table>
1833
 
<table cellspacing=5 cellpadding=0 border=0>
1834
 
  <tr>
1835
 
    <td>
1836
 
      &nbsp;
1837
 
    </td>
1838
 
    <td>
1839
 
 
1840
 
<p>
1841
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a24">FLAC__stream_decoder_get_channel_assignment</a>().<dl compact><dt><b>
1842
 
Parameters: </b><dd>
1843
 
<table border=0 cellspacing=2 cellpadding=0>
1844
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1845
 
A decoder instance to query. </td></tr>
1846
 
</table>
1847
 
</dl><dl compact><dt><b>
1848
 
Assertions:</b><dd>
1849
 
 <div class="fragment"><pre>decoder != NULL 
1850
 
</pre></div> </dl><dl compact><dt><b>
1851
 
Return values: </b><dd>
1852
 
<table border=0 cellspacing=2 cellpadding=0>
1853
 
<tr><td valign=top><em>FLAC__ChannelAssignment</em>&nbsp;</td><td>
1854
 
See above. </td></tr>
1855
 
</table>
1856
 
</dl>    </td>
1857
 
  </tr>
1858
 
</table>
1859
 
<a name="a37" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_bits_per_sample"></a><p>
1860
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1861
 
  <tr>
1862
 
    <td class="md">
1863
 
      <table cellpadding="0" cellspacing="0" border="0">
1864
 
        <tr>
1865
 
          <td class="md" nowrap valign="top"> unsigned FLAC__seekable_stream_decoder_get_bits_per_sample </td>
1866
 
          <td class="md" valign="top">(&nbsp;</td>
1867
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1868
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1869
 
          <td class="md" valign="top">)&nbsp;</td>
1870
 
          <td class="md" nowrap></td>
1871
 
        </tr>
1872
 
 
1873
 
      </table>
1874
 
    </td>
1875
 
  </tr>
1876
 
</table>
1877
 
<table cellspacing=5 cellpadding=0 border=0>
1878
 
  <tr>
1879
 
    <td>
1880
 
      &nbsp;
1881
 
    </td>
1882
 
    <td>
1883
 
 
1884
 
<p>
1885
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a25">FLAC__stream_decoder_get_bits_per_sample</a>().<dl compact><dt><b>
1886
 
Parameters: </b><dd>
1887
 
<table border=0 cellspacing=2 cellpadding=0>
1888
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1889
 
A decoder instance to query. </td></tr>
1890
 
</table>
1891
 
</dl><dl compact><dt><b>
1892
 
Assertions:</b><dd>
1893
 
 <div class="fragment"><pre>decoder != NULL 
1894
 
</pre></div> </dl><dl compact><dt><b>
1895
 
Return values: </b><dd>
1896
 
<table border=0 cellspacing=2 cellpadding=0>
1897
 
<tr><td valign=top><em>unsigned</em>&nbsp;</td><td>
1898
 
See above. </td></tr>
1899
 
</table>
1900
 
</dl>    </td>
1901
 
  </tr>
1902
 
</table>
1903
 
<a name="a38" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_sample_rate"></a><p>
1904
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1905
 
  <tr>
1906
 
    <td class="md">
1907
 
      <table cellpadding="0" cellspacing="0" border="0">
1908
 
        <tr>
1909
 
          <td class="md" nowrap valign="top"> unsigned FLAC__seekable_stream_decoder_get_sample_rate </td>
1910
 
          <td class="md" valign="top">(&nbsp;</td>
1911
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1912
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1913
 
          <td class="md" valign="top">)&nbsp;</td>
1914
 
          <td class="md" nowrap></td>
1915
 
        </tr>
1916
 
 
1917
 
      </table>
1918
 
    </td>
1919
 
  </tr>
1920
 
</table>
1921
 
<table cellspacing=5 cellpadding=0 border=0>
1922
 
  <tr>
1923
 
    <td>
1924
 
      &nbsp;
1925
 
    </td>
1926
 
    <td>
1927
 
 
1928
 
<p>
1929
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a26">FLAC__stream_decoder_get_sample_rate</a>().<dl compact><dt><b>
1930
 
Parameters: </b><dd>
1931
 
<table border=0 cellspacing=2 cellpadding=0>
1932
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1933
 
A decoder instance to query. </td></tr>
1934
 
</table>
1935
 
</dl><dl compact><dt><b>
1936
 
Assertions:</b><dd>
1937
 
 <div class="fragment"><pre>decoder != NULL 
1938
 
</pre></div> </dl><dl compact><dt><b>
1939
 
Return values: </b><dd>
1940
 
<table border=0 cellspacing=2 cellpadding=0>
1941
 
<tr><td valign=top><em>unsigned</em>&nbsp;</td><td>
1942
 
See above. </td></tr>
1943
 
</table>
1944
 
</dl>    </td>
1945
 
  </tr>
1946
 
</table>
1947
 
<a name="a39" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_blocksize"></a><p>
1948
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1949
 
  <tr>
1950
 
    <td class="md">
1951
 
      <table cellpadding="0" cellspacing="0" border="0">
1952
 
        <tr>
1953
 
          <td class="md" nowrap valign="top"> unsigned FLAC__seekable_stream_decoder_get_blocksize </td>
1954
 
          <td class="md" valign="top">(&nbsp;</td>
1955
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
1956
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
1957
 
          <td class="md" valign="top">)&nbsp;</td>
1958
 
          <td class="md" nowrap></td>
1959
 
        </tr>
1960
 
 
1961
 
      </table>
1962
 
    </td>
1963
 
  </tr>
1964
 
</table>
1965
 
<table cellspacing=5 cellpadding=0 border=0>
1966
 
  <tr>
1967
 
    <td>
1968
 
      &nbsp;
1969
 
    </td>
1970
 
    <td>
1971
 
 
1972
 
<p>
1973
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a27">FLAC__stream_decoder_get_blocksize</a>().<dl compact><dt><b>
1974
 
Parameters: </b><dd>
1975
 
<table border=0 cellspacing=2 cellpadding=0>
1976
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
1977
 
A decoder instance to query. </td></tr>
1978
 
</table>
1979
 
</dl><dl compact><dt><b>
1980
 
Assertions:</b><dd>
1981
 
 <div class="fragment"><pre>decoder != NULL 
1982
 
</pre></div> </dl><dl compact><dt><b>
1983
 
Return values: </b><dd>
1984
 
<table border=0 cellspacing=2 cellpadding=0>
1985
 
<tr><td valign=top><em>unsigned</em>&nbsp;</td><td>
1986
 
See above. </td></tr>
1987
 
</table>
1988
 
</dl>    </td>
1989
 
  </tr>
1990
 
</table>
1991
 
<a name="a40" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_get_decode_position"></a><p>
1992
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1993
 
  <tr>
1994
 
    <td class="md">
1995
 
      <table cellpadding="0" cellspacing="0" border="0">
1996
 
        <tr>
1997
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_get_decode_position </td>
1998
 
          <td class="md" valign="top">(&nbsp;</td>
1999
 
          <td class="md" nowrap valign="top">const <a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2000
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
2001
 
        </tr>
2002
 
        <tr>
2003
 
          <td></td>
2004
 
          <td></td>
2005
 
          <td class="md" nowrap>FLAC__uint64 *&nbsp;</td>
2006
 
          <td class="mdname" nowrap>&nbsp; <em>position</em></td>
2007
 
        </tr>
2008
 
        <tr>
2009
 
          <td></td>
2010
 
          <td class="md">)&nbsp;</td>
2011
 
          <td class="md" colspan="2"></td>
2012
 
        </tr>
2013
 
 
2014
 
      </table>
2015
 
    </td>
2016
 
  </tr>
2017
 
</table>
2018
 
<table cellspacing=5 cellpadding=0 border=0>
2019
 
  <tr>
2020
 
    <td>
2021
 
      &nbsp;
2022
 
    </td>
2023
 
    <td>
2024
 
 
2025
 
<p>
2026
 
Returns the decoder's current read position within the stream. The position is the byte offset from the start of the stream. Bytes before this position have been fully decoded. Note that there may still be undecoded bytes in the decoder's read FIFO. The returned position is correct even after a seek.<dl compact><dt><b>
2027
 
Parameters: </b><dd>
2028
 
<table border=0 cellspacing=2 cellpadding=0>
2029
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2030
 
A decoder instance to query. </td></tr>
2031
 
<tr><td valign=top><em>position</em>&nbsp;</td><td>
2032
 
Address at which to return the desired position. </td></tr>
2033
 
</table>
2034
 
</dl><dl compact><dt><b>
2035
 
Assertions:</b><dd>
2036
 
 <div class="fragment"><pre>decoder != NULL 
2037
 
</pre></div> <div class="fragment"><pre>position != NULL 
2038
 
</pre></div> </dl><dl compact><dt><b>
2039
 
Return values: </b><dd>
2040
 
<table border=0 cellspacing=2 cellpadding=0>
2041
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2042
 
<code>true</code> if successful, <code>false</code> if there was an error from the 'tell' callback. </td></tr>
2043
 
</table>
2044
 
</dl>    </td>
2045
 
  </tr>
2046
 
</table>
2047
 
<a name="a41" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_init"></a><p>
2048
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2049
 
  <tr>
2050
 
    <td class="md">
2051
 
      <table cellpadding="0" cellspacing="0" border="0">
2052
 
        <tr>
2053
 
          <td class="md" nowrap valign="top"> <a class="el" href="group__flac__seekable__stream__decoder.html#a50">FLAC__SeekableStreamDecoderState</a> FLAC__seekable_stream_decoder_init </td>
2054
 
          <td class="md" valign="top">(&nbsp;</td>
2055
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2056
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2057
 
          <td class="md" valign="top">)&nbsp;</td>
2058
 
          <td class="md" nowrap></td>
2059
 
        </tr>
2060
 
 
2061
 
      </table>
2062
 
    </td>
2063
 
  </tr>
2064
 
</table>
2065
 
<table cellspacing=5 cellpadding=0 border=0>
2066
 
  <tr>
2067
 
    <td>
2068
 
      &nbsp;
2069
 
    </td>
2070
 
    <td>
2071
 
 
2072
 
<p>
2073
 
Initialize the decoder instance. Should be called after <a class="el" href="group__flac__seekable__stream__decoder.html#a13">FLAC__seekable_stream_decoder_new</a>() and FLAC__seekable_stream_decoder_set_*() but before any of the FLAC__seekable_stream_decoder_process_*() functions. Will set and return the decoder state, which will be FLAC__SEEKABLE_STREAM_DECODER_OK if initialization succeeded.<dl compact><dt><b>
2074
 
Parameters: </b><dd>
2075
 
<table border=0 cellspacing=2 cellpadding=0>
2076
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2077
 
An uninitialized decoder instance. </td></tr>
2078
 
</table>
2079
 
</dl><dl compact><dt><b>
2080
 
Assertions:</b><dd>
2081
 
 <div class="fragment"><pre>decoder != NULL 
2082
 
</pre></div> </dl><dl compact><dt><b>
2083
 
Return values: </b><dd>
2084
 
<table border=0 cellspacing=2 cellpadding=0>
2085
 
<tr><td valign=top><em>FLAC__SeekableStreamDecoderState</em>&nbsp;</td><td>
2086
 
<code>FLAC__SEEKABLE_STREAM_DECODER_OK</code> if initialization was successful; see FLAC__SeekableStreamDecoderState for the meanings of other return values. </td></tr>
2087
 
</table>
2088
 
</dl>    </td>
2089
 
  </tr>
2090
 
</table>
2091
 
<a name="a42" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_finish"></a><p>
2092
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2093
 
  <tr>
2094
 
    <td class="md">
2095
 
      <table cellpadding="0" cellspacing="0" border="0">
2096
 
        <tr>
2097
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_finish </td>
2098
 
          <td class="md" valign="top">(&nbsp;</td>
2099
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2100
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2101
 
          <td class="md" valign="top">)&nbsp;</td>
2102
 
          <td class="md" nowrap></td>
2103
 
        </tr>
2104
 
 
2105
 
      </table>
2106
 
    </td>
2107
 
  </tr>
2108
 
</table>
2109
 
<table cellspacing=5 cellpadding=0 border=0>
2110
 
  <tr>
2111
 
    <td>
2112
 
      &nbsp;
2113
 
    </td>
2114
 
    <td>
2115
 
 
2116
 
<p>
2117
 
Finish the decoding process. Flushes the decoding buffer, releases resources, resets the decoder settings to their defaults, and returns the decoder state to FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED.
2118
 
<p>
2119
 
In the event of a prematurely-terminated decode, it is not strictly necessary to call this immediately before <a class="el" href="group__flac__seekable__stream__decoder.html#a14">FLAC__seekable_stream_decoder_delete</a>() but it is good practice to match every <a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>() with a <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>().<dl compact><dt><b>
2120
 
Parameters: </b><dd>
2121
 
<table border=0 cellspacing=2 cellpadding=0>
2122
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2123
 
An uninitialized decoder instance. </td></tr>
2124
 
</table>
2125
 
</dl><dl compact><dt><b>
2126
 
Assertions:</b><dd>
2127
 
 <div class="fragment"><pre>decoder != NULL 
2128
 
</pre></div> </dl><dl compact><dt><b>
2129
 
Return values: </b><dd>
2130
 
<table border=0 cellspacing=2 cellpadding=0>
2131
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2132
 
<code>false</code> if MD5 checking is on AND a STREAMINFO block was available AND the MD5 signature in the STREAMINFO block was non-zero AND the signature does not match the one computed by the decoder; else <code>true</code>. </td></tr>
2133
 
</table>
2134
 
</dl>    </td>
2135
 
  </tr>
2136
 
</table>
2137
 
<a name="a43" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_flush"></a><p>
2138
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2139
 
  <tr>
2140
 
    <td class="md">
2141
 
      <table cellpadding="0" cellspacing="0" border="0">
2142
 
        <tr>
2143
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_flush </td>
2144
 
          <td class="md" valign="top">(&nbsp;</td>
2145
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2146
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2147
 
          <td class="md" valign="top">)&nbsp;</td>
2148
 
          <td class="md" nowrap></td>
2149
 
        </tr>
2150
 
 
2151
 
      </table>
2152
 
    </td>
2153
 
  </tr>
2154
 
</table>
2155
 
<table cellspacing=5 cellpadding=0 border=0>
2156
 
  <tr>
2157
 
    <td>
2158
 
      &nbsp;
2159
 
    </td>
2160
 
    <td>
2161
 
 
2162
 
<p>
2163
 
Flush the stream input. The decoder's input buffer will be cleared and the state set to <code>FLAC__SEEKABLE_STREAM_DECODER_OK</code>. This will also turn off MD5 checking.<dl compact><dt><b>
2164
 
Parameters: </b><dd>
2165
 
<table border=0 cellspacing=2 cellpadding=0>
2166
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2167
 
A decoder instance. </td></tr>
2168
 
</table>
2169
 
</dl><dl compact><dt><b>
2170
 
Assertions:</b><dd>
2171
 
 <div class="fragment"><pre>decoder != NULL 
2172
 
</pre></div> </dl><dl compact><dt><b>
2173
 
Return values: </b><dd>
2174
 
<table border=0 cellspacing=2 cellpadding=0>
2175
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2176
 
<code>true</code> if successful, else <code>false</code> if a memory allocation or stream decoder error occurs. </td></tr>
2177
 
</table>
2178
 
</dl>    </td>
2179
 
  </tr>
2180
 
</table>
2181
 
<a name="a44" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_reset"></a><p>
2182
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2183
 
  <tr>
2184
 
    <td class="md">
2185
 
      <table cellpadding="0" cellspacing="0" border="0">
2186
 
        <tr>
2187
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_reset </td>
2188
 
          <td class="md" valign="top">(&nbsp;</td>
2189
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2190
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2191
 
          <td class="md" valign="top">)&nbsp;</td>
2192
 
          <td class="md" nowrap></td>
2193
 
        </tr>
2194
 
 
2195
 
      </table>
2196
 
    </td>
2197
 
  </tr>
2198
 
</table>
2199
 
<table cellspacing=5 cellpadding=0 border=0>
2200
 
  <tr>
2201
 
    <td>
2202
 
      &nbsp;
2203
 
    </td>
2204
 
    <td>
2205
 
 
2206
 
<p>
2207
 
Reset the decoding process. The decoder's input buffer will be cleared and the state set to <code>FLAC__SEEKABLE_STREAM_DECODER_OK</code>. This is similar to <a class="el" href="group__flac__seekable__stream__decoder.html#a42">FLAC__seekable_stream_decoder_finish</a>() except that the settings are preserved; there is no need to call <a class="el" href="group__flac__seekable__stream__decoder.html#a41">FLAC__seekable_stream_decoder_init</a>() before decoding again. MD5 checking will be restored to its original setting.<dl compact><dt><b>
2208
 
Parameters: </b><dd>
2209
 
<table border=0 cellspacing=2 cellpadding=0>
2210
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2211
 
A decoder instance. </td></tr>
2212
 
</table>
2213
 
</dl><dl compact><dt><b>
2214
 
Assertions:</b><dd>
2215
 
 <div class="fragment"><pre>decoder != NULL 
2216
 
</pre></div> </dl><dl compact><dt><b>
2217
 
Return values: </b><dd>
2218
 
<table border=0 cellspacing=2 cellpadding=0>
2219
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2220
 
<code>true</code> if successful, else <code>false</code> if a memory allocation or stream decoder error occurs. </td></tr>
2221
 
</table>
2222
 
</dl>    </td>
2223
 
  </tr>
2224
 
</table>
2225
 
<a name="a45" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_process_single"></a><p>
2226
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2227
 
  <tr>
2228
 
    <td class="md">
2229
 
      <table cellpadding="0" cellspacing="0" border="0">
2230
 
        <tr>
2231
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_process_single </td>
2232
 
          <td class="md" valign="top">(&nbsp;</td>
2233
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2234
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2235
 
          <td class="md" valign="top">)&nbsp;</td>
2236
 
          <td class="md" nowrap></td>
2237
 
        </tr>
2238
 
 
2239
 
      </table>
2240
 
    </td>
2241
 
  </tr>
2242
 
</table>
2243
 
<table cellspacing=5 cellpadding=0 border=0>
2244
 
  <tr>
2245
 
    <td>
2246
 
      &nbsp;
2247
 
    </td>
2248
 
    <td>
2249
 
 
2250
 
<p>
2251
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a32">FLAC__stream_decoder_process_single</a>().<dl compact><dt><b>
2252
 
Parameters: </b><dd>
2253
 
<table border=0 cellspacing=2 cellpadding=0>
2254
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2255
 
A decoder instance. </td></tr>
2256
 
</table>
2257
 
</dl><dl compact><dt><b>
2258
 
Assertions:</b><dd>
2259
 
 <div class="fragment"><pre>decoder != NULL 
2260
 
</pre></div> </dl><dl compact><dt><b>
2261
 
Return values: </b><dd>
2262
 
<table border=0 cellspacing=2 cellpadding=0>
2263
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2264
 
See above. </td></tr>
2265
 
</table>
2266
 
</dl>    </td>
2267
 
  </tr>
2268
 
</table>
2269
 
<a name="a46" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_process_until_end_of_metadata"></a><p>
2270
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2271
 
  <tr>
2272
 
    <td class="md">
2273
 
      <table cellpadding="0" cellspacing="0" border="0">
2274
 
        <tr>
2275
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_process_until_end_of_metadata </td>
2276
 
          <td class="md" valign="top">(&nbsp;</td>
2277
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2278
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2279
 
          <td class="md" valign="top">)&nbsp;</td>
2280
 
          <td class="md" nowrap></td>
2281
 
        </tr>
2282
 
 
2283
 
      </table>
2284
 
    </td>
2285
 
  </tr>
2286
 
</table>
2287
 
<table cellspacing=5 cellpadding=0 border=0>
2288
 
  <tr>
2289
 
    <td>
2290
 
      &nbsp;
2291
 
    </td>
2292
 
    <td>
2293
 
 
2294
 
<p>
2295
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a33">FLAC__stream_decoder_process_until_end_of_metadata</a>().<dl compact><dt><b>
2296
 
Parameters: </b><dd>
2297
 
<table border=0 cellspacing=2 cellpadding=0>
2298
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2299
 
A decoder instance. </td></tr>
2300
 
</table>
2301
 
</dl><dl compact><dt><b>
2302
 
Assertions:</b><dd>
2303
 
 <div class="fragment"><pre>decoder != NULL 
2304
 
</pre></div> </dl><dl compact><dt><b>
2305
 
Return values: </b><dd>
2306
 
<table border=0 cellspacing=2 cellpadding=0>
2307
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2308
 
See above. </td></tr>
2309
 
</table>
2310
 
</dl>    </td>
2311
 
  </tr>
2312
 
</table>
2313
 
<a name="a47" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_process_until_end_of_stream"></a><p>
2314
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2315
 
  <tr>
2316
 
    <td class="md">
2317
 
      <table cellpadding="0" cellspacing="0" border="0">
2318
 
        <tr>
2319
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_process_until_end_of_stream </td>
2320
 
          <td class="md" valign="top">(&nbsp;</td>
2321
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2322
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2323
 
          <td class="md" valign="top">)&nbsp;</td>
2324
 
          <td class="md" nowrap></td>
2325
 
        </tr>
2326
 
 
2327
 
      </table>
2328
 
    </td>
2329
 
  </tr>
2330
 
</table>
2331
 
<table cellspacing=5 cellpadding=0 border=0>
2332
 
  <tr>
2333
 
    <td>
2334
 
      &nbsp;
2335
 
    </td>
2336
 
    <td>
2337
 
 
2338
 
<p>
2339
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a34">FLAC__stream_decoder_process_until_end_of_stream</a>().<dl compact><dt><b>
2340
 
Parameters: </b><dd>
2341
 
<table border=0 cellspacing=2 cellpadding=0>
2342
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2343
 
A decoder instance. </td></tr>
2344
 
</table>
2345
 
</dl><dl compact><dt><b>
2346
 
Assertions:</b><dd>
2347
 
 <div class="fragment"><pre>decoder != NULL 
2348
 
</pre></div> </dl><dl compact><dt><b>
2349
 
Return values: </b><dd>
2350
 
<table border=0 cellspacing=2 cellpadding=0>
2351
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2352
 
See above. </td></tr>
2353
 
</table>
2354
 
</dl>    </td>
2355
 
  </tr>
2356
 
</table>
2357
 
<a name="a48" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_skip_single_frame"></a><p>
2358
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2359
 
  <tr>
2360
 
    <td class="md">
2361
 
      <table cellpadding="0" cellspacing="0" border="0">
2362
 
        <tr>
2363
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_skip_single_frame </td>
2364
 
          <td class="md" valign="top">(&nbsp;</td>
2365
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2366
 
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decoder</em>          </td>
2367
 
          <td class="md" valign="top">)&nbsp;</td>
2368
 
          <td class="md" nowrap></td>
2369
 
        </tr>
2370
 
 
2371
 
      </table>
2372
 
    </td>
2373
 
  </tr>
2374
 
</table>
2375
 
<table cellspacing=5 cellpadding=0 border=0>
2376
 
  <tr>
2377
 
    <td>
2378
 
      &nbsp;
2379
 
    </td>
2380
 
    <td>
2381
 
 
2382
 
<p>
2383
 
This is inherited from <a class="el" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a>; see <a class="el" href="group__flac__stream__decoder.html#a35">FLAC__stream_decoder_skip_single_frame</a>().<dl compact><dt><b>
2384
 
Parameters: </b><dd>
2385
 
<table border=0 cellspacing=2 cellpadding=0>
2386
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2387
 
A decoder instance. </td></tr>
2388
 
</table>
2389
 
</dl><dl compact><dt><b>
2390
 
Assertions:</b><dd>
2391
 
 <div class="fragment"><pre>decoder != NULL 
2392
 
</pre></div> </dl><dl compact><dt><b>
2393
 
Return values: </b><dd>
2394
 
<table border=0 cellspacing=2 cellpadding=0>
2395
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2396
 
See above. </td></tr>
2397
 
</table>
2398
 
</dl>    </td>
2399
 
  </tr>
2400
 
</table>
2401
 
<a name="a49" doxytag="seekable_stream_decoder.h::FLAC__seekable_stream_decoder_seek_absolute"></a><p>
2402
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2403
 
  <tr>
2404
 
    <td class="md">
2405
 
      <table cellpadding="0" cellspacing="0" border="0">
2406
 
        <tr>
2407
 
          <td class="md" nowrap valign="top"> FLAC__bool FLAC__seekable_stream_decoder_seek_absolute </td>
2408
 
          <td class="md" valign="top">(&nbsp;</td>
2409
 
          <td class="md" nowrap valign="top"><a class="el" href="structFLAC____SeekableStreamDecoder.html">FLAC__SeekableStreamDecoder</a> *&nbsp;</td>
2410
 
          <td class="mdname" nowrap>&nbsp; <em>decoder</em>, </td>
2411
 
        </tr>
2412
 
        <tr>
2413
 
          <td></td>
2414
 
          <td></td>
2415
 
          <td class="md" nowrap>FLAC__uint64&nbsp;</td>
2416
 
          <td class="mdname" nowrap>&nbsp; <em>sample</em></td>
2417
 
        </tr>
2418
 
        <tr>
2419
 
          <td></td>
2420
 
          <td class="md">)&nbsp;</td>
2421
 
          <td class="md" colspan="2"></td>
2422
 
        </tr>
2423
 
 
2424
 
      </table>
2425
 
    </td>
2426
 
  </tr>
2427
 
</table>
2428
 
<table cellspacing=5 cellpadding=0 border=0>
2429
 
  <tr>
2430
 
    <td>
2431
 
      &nbsp;
2432
 
    </td>
2433
 
    <td>
2434
 
 
2435
 
<p>
2436
 
Flush the input and seek to an absolute sample. Decoding will resume at the given sample. Note that because of this, the next write callback may contain a partial block.<dl compact><dt><b>
2437
 
Parameters: </b><dd>
2438
 
<table border=0 cellspacing=2 cellpadding=0>
2439
 
<tr><td valign=top><em>decoder</em>&nbsp;</td><td>
2440
 
A decoder instance. </td></tr>
2441
 
<tr><td valign=top><em>sample</em>&nbsp;</td><td>
2442
 
The target sample number to seek to. </td></tr>
2443
 
</table>
2444
 
</dl><dl compact><dt><b>
2445
 
Assertions:</b><dd>
2446
 
 <div class="fragment"><pre>decoder != NULL 
2447
 
</pre></div> </dl><dl compact><dt><b>
2448
 
Return values: </b><dd>
2449
 
<table border=0 cellspacing=2 cellpadding=0>
2450
 
<tr><td valign=top><em>FLAC__bool</em>&nbsp;</td><td>
2451
 
<code>true</code> if successful, else <code>false</code>. </td></tr>
2452
 
</table>
2453
 
</dl>    </td>
2454
 
  </tr>
2455
 
</table>
2456
 
<hr><h2>Variable Documentation</h2>
2457
 
<a name="a0" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderStateString"></a><p>
2458
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2459
 
  <tr>
2460
 
    <td class="md">
2461
 
      <table cellpadding="0" cellspacing="0" border="0">
2462
 
        <tr>
2463
 
          <td class="md" nowrap valign="top"> const char* const FLAC__SeekableStreamDecoderStateString[]
2464
 
      </table>
2465
 
    </td>
2466
 
  </tr>
2467
 
</table>
2468
 
<table cellspacing=5 cellpadding=0 border=0>
2469
 
  <tr>
2470
 
    <td>
2471
 
      &nbsp;
2472
 
    </td>
2473
 
    <td>
2474
 
 
2475
 
<p>
2476
 
Maps a FLAC__SeekableStreamDecoderState to a C string.
2477
 
<p>
2478
 
Using a FLAC__SeekableStreamDecoderState as the index to this array will give the string equivalent. The contents should not be modified.     </td>
2479
 
  </tr>
2480
 
</table>
2481
 
<a name="a1" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderReadStatusString"></a><p>
2482
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2483
 
  <tr>
2484
 
    <td class="md">
2485
 
      <table cellpadding="0" cellspacing="0" border="0">
2486
 
        <tr>
2487
 
          <td class="md" nowrap valign="top"> const char* const FLAC__SeekableStreamDecoderReadStatusString[]
2488
 
      </table>
2489
 
    </td>
2490
 
  </tr>
2491
 
</table>
2492
 
<table cellspacing=5 cellpadding=0 border=0>
2493
 
  <tr>
2494
 
    <td>
2495
 
      &nbsp;
2496
 
    </td>
2497
 
    <td>
2498
 
 
2499
 
<p>
2500
 
Maps a FLAC__SeekableStreamDecoderReadStatus to a C string.
2501
 
<p>
2502
 
Using a FLAC__SeekableStreamDecoderReadStatus as the index to this array will give the string equivalent. The contents should not be modified.     </td>
2503
 
  </tr>
2504
 
</table>
2505
 
<a name="a2" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderSeekStatusString"></a><p>
2506
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2507
 
  <tr>
2508
 
    <td class="md">
2509
 
      <table cellpadding="0" cellspacing="0" border="0">
2510
 
        <tr>
2511
 
          <td class="md" nowrap valign="top"> const char* const FLAC__SeekableStreamDecoderSeekStatusString[]
2512
 
      </table>
2513
 
    </td>
2514
 
  </tr>
2515
 
</table>
2516
 
<table cellspacing=5 cellpadding=0 border=0>
2517
 
  <tr>
2518
 
    <td>
2519
 
      &nbsp;
2520
 
    </td>
2521
 
    <td>
2522
 
 
2523
 
<p>
2524
 
Maps a FLAC__SeekableStreamDecoderSeekStatus to a C string.
2525
 
<p>
2526
 
Using a FLAC__SeekableStreamDecoderSeekStatus as the index to this array will give the string equivalent. The contents should not be modified.     </td>
2527
 
  </tr>
2528
 
</table>
2529
 
<a name="a3" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderTellStatusString"></a><p>
2530
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2531
 
  <tr>
2532
 
    <td class="md">
2533
 
      <table cellpadding="0" cellspacing="0" border="0">
2534
 
        <tr>
2535
 
          <td class="md" nowrap valign="top"> const char* const FLAC__SeekableStreamDecoderTellStatusString[]
2536
 
      </table>
2537
 
    </td>
2538
 
  </tr>
2539
 
</table>
2540
 
<table cellspacing=5 cellpadding=0 border=0>
2541
 
  <tr>
2542
 
    <td>
2543
 
      &nbsp;
2544
 
    </td>
2545
 
    <td>
2546
 
 
2547
 
<p>
2548
 
Maps a FLAC__SeekableStreamDecoderTellStatus to a C string.
2549
 
<p>
2550
 
Using a FLAC__SeekableStreamDecoderTellStatus as the index to this array will give the string equivalent. The contents should not be modified.     </td>
2551
 
  </tr>
2552
 
</table>
2553
 
<a name="a4" doxytag="seekable_stream_decoder.h::FLAC__SeekableStreamDecoderLengthStatusString"></a><p>
2554
 
<table width="100%" cellpadding="2" cellspacing="0" border="0">
2555
 
  <tr>
2556
 
    <td class="md">
2557
 
      <table cellpadding="0" cellspacing="0" border="0">
2558
 
        <tr>
2559
 
          <td class="md" nowrap valign="top"> const char* const FLAC__SeekableStreamDecoderLengthStatusString[]
2560
 
      </table>
2561
 
    </td>
2562
 
  </tr>
2563
 
</table>
2564
 
<table cellspacing=5 cellpadding=0 border=0>
2565
 
  <tr>
2566
 
    <td>
2567
 
      &nbsp;
2568
 
    </td>
2569
 
    <td>
2570
 
 
2571
 
<p>
2572
 
Maps a FLAC__SeekableStreamDecoderLengthStatus to a C string.
2573
 
<p>
2574
 
Using a FLAC__SeekableStreamDecoderLengthStatus as the index to this array will give the string equivalent. The contents should not be modified.     </td>
2575
 
  </tr>
2576
 
</table>
2577
 
<hr><address><small>Generated on Fri Feb 4 18:39:16 2005 for FLAC by
2578
 
<a href="http://www.doxygen.org/index.html">
2579
 
<img src="doxygen.gif" alt="doxygen" align="middle" border=0 
2580
 
width=110 height=53></a>1.2.14 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
2581
 
 &copy;&nbsp;1997-2002</small></address>
2582
 
</body>
2583
 
</html>