~ubuntu-branches/ubuntu/quantal/flac/quantal

« back to all changes in this revision

Viewing changes to doc/html/api/decoder_8h-source.html

  • Committer: Bazaar Package Importer
  • Author(s): Kees Cook
  • Date: 2007-12-06 16:57:20 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20071206165720-ldii5tm8dq6zxg0l
Tags: 1.2.1-1ubuntu1
* Merge from debian unstable, remaining changes:
  - debian/control: xmms-dev dropped to allow xmms to move to universe,
    adjust maintainer field.

Show diffs side-by-side

added added

removed removed

Lines of Context:
41
41
00032 <span class="preprocessor">#ifndef FLACPP__DECODER_H</span>
42
42
00033 <span class="preprocessor"></span><span class="preprocessor">#define FLACPP__DECODER_H</span>
43
43
00034 <span class="preprocessor"></span>
44
 
00035 <span class="preprocessor">#include "export.h"</span>
 
44
00035 <span class="preprocessor">#include "<a class="code" href="+_2export_8h.html">export.h</a>"</span>
45
45
00036 
46
46
00037 <span class="preprocessor">#include &lt;string&gt;</span>
47
47
00038 <span class="preprocessor">#include "<a class="code" href="stream__decoder_8h.html">FLAC/stream_decoder.h</a>"</span>
72
72
00123 
73
73
00124             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_ogg_serial_number(<span class="keywordtype">long</span> value);                        
74
74
00125             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_md5_checking(<span class="keywordtype">bool</span> value);                             
75
 
00126             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_respond(::<a class="code" href="group__flac__format.html#ga109">FLAC__MetadataType</a> type);          
 
75
00126             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_respond(::<a class="code" href="group__flac__format.html#ga113">FLAC__MetadataType</a> type);          
76
76
00127             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_respond_application(<span class="keyword">const</span> FLAC__byte <span class="keywordtype">id</span>[4]); 
77
77
00128             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_respond_all();                               
78
 
00129             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_ignore(::<a class="code" href="group__flac__format.html#ga109">FLAC__MetadataType</a> type);           
 
78
00129             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_ignore(::<a class="code" href="group__flac__format.html#ga113">FLAC__MetadataType</a> type);           
79
79
00130             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_ignore_application(<span class="keyword">const</span> FLAC__byte <span class="keywordtype">id</span>[4]);  
80
80
00131             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> set_metadata_ignore_all();                                
81
81
00132 
84
84
00135             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> get_md5_checking() <span class="keyword">const</span>;                            
85
85
00136             <span class="keyword">virtual</span> FLAC__uint64 get_total_samples() <span class="keyword">const</span>;                   
86
86
00137             <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> get_channels() <span class="keyword">const</span>;                            
87
 
00138             <a class="code" href="group__flac__format.html#ga107">virtual ::FLAC__ChannelAssignment</a> get_channel_assignment() <span class="keyword">const</span>; 
 
87
00138             <a class="code" href="group__flac__format.html#ga111">virtual ::FLAC__ChannelAssignment</a> get_channel_assignment() <span class="keyword">const</span>; 
88
88
00139             <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> get_bits_per_sample() <span class="keyword">const</span>;                     
89
89
00140             <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> get_sample_rate() <span class="keyword">const</span>;                         
90
90
00141             <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> get_blocksize() <span class="keyword">const</span>;                           
91
 
00142 
92
 
00143             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init();      
93
 
00144             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg();  
94
 
00145 
95
 
00146             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> finish(); 
96
 
00147 
97
 
00148             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> flush(); 
98
 
00149             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> reset(); 
99
 
00150 
100
 
00151             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_single();                
101
 
00152             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_until_end_of_metadata(); 
102
 
00153             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_until_end_of_stream();   
103
 
00154             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> skip_single_frame();             
104
 
00155 
105
 
00156             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> seek_absolute(FLAC__uint64 sample); 
106
 
00157         <span class="keyword">protected</span>:
107
 
00159             <a class="code" href="group__flac__stream__decoder.html#ga52">virtual ::FLAC__StreamDecoderReadStatus</a> read_callback(FLAC__byte buffer[], size_t *bytes) = 0;
108
 
00160 
109
 
00162             <a class="code" href="group__flac__stream__decoder.html#ga53">virtual ::FLAC__StreamDecoderSeekStatus</a> seek_callback(FLAC__uint64 absolute_byte_offset);
110
 
00163 
111
 
00165             <a class="code" href="group__flac__stream__decoder.html#ga54">virtual ::FLAC__StreamDecoderTellStatus</a> tell_callback(FLAC__uint64 *absolute_byte_offset);
112
 
00166 
113
 
00168             <a class="code" href="group__flac__stream__decoder.html#ga55">virtual ::FLAC__StreamDecoderLengthStatus</a> length_callback(FLAC__uint64 *stream_length);
114
 
00169 
115
 
00171             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> eof_callback();
116
 
00172 
117
 
00174             <a class="code" href="group__flac__stream__decoder.html#ga56">virtual ::FLAC__StreamDecoderWriteStatus</a> write_callback(<span class="keyword">const</span> ::<a class="code" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, <span class="keyword">const</span> FLAC__int32 * <span class="keyword">const</span> buffer[]) = 0;
118
 
00175 
119
 
00177             <span class="keyword">virtual</span> <span class="keywordtype">void</span> metadata_callback(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata);
120
 
00178 
121
 
00180             <span class="keyword">virtual</span> <span class="keywordtype">void</span> error_callback(::<a class="code" href="group__flac__stream__decoder.html#ga57">FLAC__StreamDecoderErrorStatus</a> status) = 0;
122
 
00181 
123
 
00182 <span class="preprocessor">#if (defined _MSC_VER) || (defined __BORLANDC__) || (defined __GNUG__ &amp;&amp; (__GNUG__ &lt; 2 || (__GNUG__ == 2 &amp;&amp; __GNUC_MINOR__ &lt; 96))) || (defined __SUNPRO_CC)</span>
124
 
00183 <span class="preprocessor"></span>            <span class="comment">// lame hack: some MSVC/GCC versions can't see a protected decoder_ from nested State::resolved_as_cstring()</span>
125
 
00184             <span class="keyword">friend</span> State;
126
 
00185 <span class="preprocessor">#endif</span>
127
 
00186 <span class="preprocessor"></span>            ::FLAC__StreamDecoder *decoder_;
128
 
00187 
129
 
00188             <a class="code" href="group__flac__stream__decoder.html#ga52">static ::FLAC__StreamDecoderReadStatus</a> read_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__byte buffer[], size_t *bytes, <span class="keywordtype">void</span> *client_data);
130
 
00189             <a class="code" href="group__flac__stream__decoder.html#ga53">static ::FLAC__StreamDecoderSeekStatus</a> seek_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
131
 
00190             <a class="code" href="group__flac__stream__decoder.html#ga54">static ::FLAC__StreamDecoderTellStatus</a> tell_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 *absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
132
 
00191             <a class="code" href="group__flac__stream__decoder.html#ga55">static ::FLAC__StreamDecoderLengthStatus</a> length_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 *stream_length, <span class="keywordtype">void</span> *client_data);
133
 
00192             <span class="keyword">static</span> FLAC__bool eof_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keywordtype">void</span> *client_data);
134
 
00193             <a class="code" href="group__flac__stream__decoder.html#ga56">static ::FLAC__StreamDecoderWriteStatus</a> write_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keyword">const</span> ::<a class="code" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, <span class="keyword">const</span> FLAC__int32 * <span class="keyword">const</span> buffer[], <span class="keywordtype">void</span> *client_data);
135
 
00194             <span class="keyword">static</span> <span class="keywordtype">void</span> metadata_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata, <span class="keywordtype">void</span> *client_data);
136
 
00195             <span class="keyword">static</span> <span class="keywordtype">void</span> error_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, ::<a class="code" href="group__flac__stream__decoder.html#ga57">FLAC__StreamDecoderErrorStatus</a> status, <span class="keywordtype">void</span> *client_data);
137
 
00196         <span class="keyword">private</span>:
138
 
00197             <span class="comment">// Private and undefined so you can't use them:</span>
139
 
00198             Stream(<span class="keyword">const</span> Stream &amp;);
140
 
00199             <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> Stream &amp;);
141
 
00200         };
142
 
00201 
143
 
<a name="l00221"></a><a class="code" href="classFLAC_1_1Decoder_1_1File.html">00221</a>         <span class="keyword">class </span>FLACPP_API File: <span class="keyword">public</span> Stream {
144
 
00222         <span class="keyword">public</span>:
145
 
00223             File();
146
 
00224             <span class="keyword">virtual</span> ~File();
147
 
00225 
148
 
00226             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(FILE *file);                      
149
 
00227             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename);            
150
 
00228             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(<span class="keyword">const</span> std::string &amp;filename);     
151
 
00229             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(FILE *file);                  
152
 
00230             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename);        
153
 
00231             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(<span class="keyword">const</span> std::string &amp;filename); 
154
 
00232         <span class="keyword">protected</span>:
155
 
00233             <span class="comment">// this is a dummy implementation to satisfy the pure virtual in Stream that is actually supplied internally by the C layer</span>
156
 
00234             <a class="code" href="group__flac__stream__decoder.html#ga52">virtual ::FLAC__StreamDecoderReadStatus</a> read_callback(FLAC__byte buffer[], size_t *bytes);
157
 
00235         <span class="keyword">private</span>:
158
 
00236             <span class="comment">// Private and undefined so you can't use them:</span>
159
 
00237             File(<span class="keyword">const</span> File &amp;);
160
 
00238             <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> File &amp;);
161
 
00239         };
162
 
00240 
163
 
00241     }
164
 
00242 }
165
 
00243 
166
 
00244 <span class="preprocessor">#endif</span>
 
91
00142             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> get_decode_position(FLAC__uint64 *position) <span class="keyword">const</span>;   
 
92
00143 
 
93
00144             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init();      
 
94
00145             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg();  
 
95
00146 
 
96
00147             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> finish(); 
 
97
00148 
 
98
00149             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> flush(); 
 
99
00150             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> reset(); 
 
100
00151 
 
101
00152             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_single();                
 
102
00153             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_until_end_of_metadata(); 
 
103
00154             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> process_until_end_of_stream();   
 
104
00155             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> skip_single_frame();             
 
105
00156 
 
106
00157             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> seek_absolute(FLAC__uint64 sample); 
 
107
00158         <span class="keyword">protected</span>:
 
108
00160             <a class="code" href="group__flac__stream__decoder.html#ga52">virtual ::FLAC__StreamDecoderReadStatus</a> read_callback(FLAC__byte buffer[], size_t *bytes) = 0;
 
109
00161 
 
110
00163             <a class="code" href="group__flac__stream__decoder.html#ga53">virtual ::FLAC__StreamDecoderSeekStatus</a> seek_callback(FLAC__uint64 absolute_byte_offset);
 
111
00164 
 
112
00166             <a class="code" href="group__flac__stream__decoder.html#ga54">virtual ::FLAC__StreamDecoderTellStatus</a> tell_callback(FLAC__uint64 *absolute_byte_offset);
 
113
00167 
 
114
00169             <a class="code" href="group__flac__stream__decoder.html#ga55">virtual ::FLAC__StreamDecoderLengthStatus</a> length_callback(FLAC__uint64 *stream_length);
 
115
00170 
 
116
00172             <span class="keyword">virtual</span> <span class="keywordtype">bool</span> eof_callback();
 
117
00173 
 
118
00175             <a class="code" href="group__flac__stream__decoder.html#ga56">virtual ::FLAC__StreamDecoderWriteStatus</a> write_callback(<span class="keyword">const</span> ::<a class="code" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, <span class="keyword">const</span> FLAC__int32 * <span class="keyword">const</span> buffer[]) = 0;
 
119
00176 
 
120
00178             <span class="keyword">virtual</span> <span class="keywordtype">void</span> metadata_callback(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata);
 
121
00179 
 
122
00181             <span class="keyword">virtual</span> <span class="keywordtype">void</span> error_callback(::<a class="code" href="group__flac__stream__decoder.html#ga57">FLAC__StreamDecoderErrorStatus</a> status) = 0;
 
123
00182 
 
124
00183 <span class="preprocessor">#if (defined _MSC_VER) || (defined __BORLANDC__) || (defined __GNUG__ &amp;&amp; (__GNUG__ &lt; 2 || (__GNUG__ == 2 &amp;&amp; __GNUC_MINOR__ &lt; 96))) || (defined __SUNPRO_CC)</span>
 
125
00184 <span class="preprocessor"></span>            <span class="comment">// lame hack: some MSVC/GCC versions can't see a protected decoder_ from nested State::resolved_as_cstring()</span>
 
126
00185             <span class="keyword">friend</span> State;
 
127
00186 <span class="preprocessor">#endif</span>
 
128
00187 <span class="preprocessor"></span>            ::FLAC__StreamDecoder *decoder_;
 
129
00188 
 
130
00189             <a class="code" href="group__flac__stream__decoder.html#ga52">static ::FLAC__StreamDecoderReadStatus</a> read_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__byte buffer[], size_t *bytes, <span class="keywordtype">void</span> *client_data);
 
131
00190             <a class="code" href="group__flac__stream__decoder.html#ga53">static ::FLAC__StreamDecoderSeekStatus</a> seek_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
 
132
00191             <a class="code" href="group__flac__stream__decoder.html#ga54">static ::FLAC__StreamDecoderTellStatus</a> tell_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 *absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
 
133
00192             <a class="code" href="group__flac__stream__decoder.html#ga55">static ::FLAC__StreamDecoderLengthStatus</a> length_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, FLAC__uint64 *stream_length, <span class="keywordtype">void</span> *client_data);
 
134
00193             <span class="keyword">static</span> FLAC__bool eof_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keywordtype">void</span> *client_data);
 
135
00194             <a class="code" href="group__flac__stream__decoder.html#ga56">static ::FLAC__StreamDecoderWriteStatus</a> write_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keyword">const</span> ::<a class="code" href="structFLAC____Frame.html">FLAC__Frame</a> *frame, <span class="keyword">const</span> FLAC__int32 * <span class="keyword">const</span> buffer[], <span class="keywordtype">void</span> *client_data);
 
136
00195             <span class="keyword">static</span> <span class="keywordtype">void</span> metadata_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata, <span class="keywordtype">void</span> *client_data);
 
137
00196             <span class="keyword">static</span> <span class="keywordtype">void</span> error_callback_(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamDecoder.html">FLAC__StreamDecoder</a> *decoder, ::<a class="code" href="group__flac__stream__decoder.html#ga57">FLAC__StreamDecoderErrorStatus</a> status, <span class="keywordtype">void</span> *client_data);
 
138
00197         <span class="keyword">private</span>:
 
139
00198             <span class="comment">// Private and undefined so you can't use them:</span>
 
140
00199             Stream(<span class="keyword">const</span> Stream &amp;);
 
141
00200             <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> Stream &amp;);
 
142
00201         };
 
143
00202 
 
144
<a name="l00222"></a><a class="code" href="classFLAC_1_1Decoder_1_1File.html">00222</a>         <span class="keyword">class </span>FLACPP_API File: <span class="keyword">public</span> Stream {
 
145
00223         <span class="keyword">public</span>:
 
146
00224             File();
 
147
00225             <span class="keyword">virtual</span> ~File();
 
148
00226 
 
149
00227             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(FILE *file);                      
 
150
00228             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename);            
 
151
00229             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init(<span class="keyword">const</span> std::string &amp;filename);     
 
152
00230             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(FILE *file);                  
 
153
00231             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename);        
 
154
00232             <a class="code" href="group__flac__stream__decoder.html#ga51">virtual ::FLAC__StreamDecoderInitStatus</a> init_ogg(<span class="keyword">const</span> std::string &amp;filename); 
 
155
00233         <span class="keyword">protected</span>:
 
156
00234             <span class="comment">// this is a dummy implementation to satisfy the pure virtual in Stream that is actually supplied internally by the C layer</span>
 
157
00235             <a class="code" href="group__flac__stream__decoder.html#ga52">virtual ::FLAC__StreamDecoderReadStatus</a> read_callback(FLAC__byte buffer[], size_t *bytes);
 
158
00236         <span class="keyword">private</span>:
 
159
00237             <span class="comment">// Private and undefined so you can't use them:</span>
 
160
00238             File(<span class="keyword">const</span> File &amp;);
 
161
00239             <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> File &amp;);
 
162
00240         };
 
163
00241 
 
164
00242     }
 
165
00243 }
 
166
00244 
 
167
00245 <span class="preprocessor">#endif</span>
167
168
</pre></div>
168
169
<hr size="1">
169
170
<div class="copyright">