annotate src/flac-1.2.1/doc/html/api/+_2metadata_8h-source.html @ 86:98c1576536ae

Bring in flac, ogg, vorbis
author Chris Cannam <cannam@all-day-breakfast.com>
date Tue, 19 Mar 2013 17:37:49 +0000
parents
children
rev   line source
cannam@86 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
cannam@86 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
cannam@86 3 <title>FLAC: include/FLAC++/metadata.h Source File</title>
cannam@86 4 <link href="doxygen.css" rel="stylesheet" type="text/css">
cannam@86 5 </head><body>
cannam@86 6 <!-- Generated by Doxygen 1.4.2 -->
cannam@86 7 <div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
cannam@86 8 <div class="nav">
cannam@86 9 <a class="el" href="dir_000000.html">include</a>&nbsp;/&nbsp;<a class="el" href="dir_000001.html">FLAC++</a></div>
cannam@86 10 <h1>metadata.h</h1><a href="+_2metadata_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 <span class="comment">/* libFLAC++ - Free Lossless Audio Codec library</span>
cannam@86 11 00002 <span class="comment"> * Copyright (C) 2002,2003,2004,2005,2006,2007 Josh Coalson</span>
cannam@86 12 00003 <span class="comment"> *</span>
cannam@86 13 00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
cannam@86 14 00005 <span class="comment"> * modification, are permitted provided that the following conditions</span>
cannam@86 15 00006 <span class="comment"> * are met:</span>
cannam@86 16 00007 <span class="comment"> *</span>
cannam@86 17 00008 <span class="comment"> * - Redistributions of source code must retain the above copyright</span>
cannam@86 18 00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
cannam@86 19 00010 <span class="comment"> *</span>
cannam@86 20 00011 <span class="comment"> * - Redistributions in binary form must reproduce the above copyright</span>
cannam@86 21 00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in the</span>
cannam@86 22 00013 <span class="comment"> * documentation and/or other materials provided with the distribution.</span>
cannam@86 23 00014 <span class="comment"> *</span>
cannam@86 24 00015 <span class="comment"> * - Neither the name of the Xiph.org Foundation nor the names of its</span>
cannam@86 25 00016 <span class="comment"> * contributors may be used to endorse or promote products derived from</span>
cannam@86 26 00017 <span class="comment"> * this software without specific prior written permission.</span>
cannam@86 27 00018 <span class="comment"> *</span>
cannam@86 28 00019 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
cannam@86 29 00020 <span class="comment"> * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
cannam@86 30 00021 <span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
cannam@86 31 00022 <span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR</span>
cannam@86 32 00023 <span class="comment"> * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,</span>
cannam@86 33 00024 <span class="comment"> * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,</span>
cannam@86 34 00025 <span class="comment"> * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR</span>
cannam@86 35 00026 <span class="comment"> * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF</span>
cannam@86 36 00027 <span class="comment"> * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING</span>
cannam@86 37 00028 <span class="comment"> * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS</span>
cannam@86 38 00029 <span class="comment"> * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
cannam@86 39 00030 <span class="comment"> */</span>
cannam@86 40 00031
cannam@86 41 00032 <span class="preprocessor">#ifndef FLACPP__METADATA_H</span>
cannam@86 42 00033 <span class="preprocessor"></span><span class="preprocessor">#define FLACPP__METADATA_H</span>
cannam@86 43 00034 <span class="preprocessor"></span>
cannam@86 44 00035 <span class="preprocessor">#include "<a class="code" href="+_2export_8h.html">export.h</a>"</span>
cannam@86 45 00036
cannam@86 46 00037 <span class="preprocessor">#include "<a class="code" href="metadata_8h.html">FLAC/metadata.h</a>"</span>
cannam@86 47 00038
cannam@86 48 00039 <span class="comment">// ===============================================================</span>
cannam@86 49 00040 <span class="comment">//</span>
cannam@86 50 00041 <span class="comment">// Full documentation for the metadata interface can be found</span>
cannam@86 51 00042 <span class="comment">// in the C layer in include/FLAC/metadata.h</span>
cannam@86 52 00043 <span class="comment">//</span>
cannam@86 53 00044 <span class="comment">// ===============================================================</span>
cannam@86 54 00045
cannam@86 55 00074 <span class="keyword">namespace </span>FLAC {
cannam@86 56 00075 <span class="keyword">namespace </span>Metadata {
cannam@86 57 00076
cannam@86 58 00077 <span class="comment">// ============================================================</span>
cannam@86 59 00078 <span class="comment">//</span>
cannam@86 60 00079 <span class="comment">// Metadata objects</span>
cannam@86 61 00080 <span class="comment">//</span>
cannam@86 62 00081 <span class="comment">// ============================================================</span>
cannam@86 63 00082
cannam@86 64 <a name="l00108"></a><a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html">00108</a> <span class="keyword">class </span>FLACPP_API Prototype {
cannam@86 65 00109 <span class="keyword">protected</span>:
cannam@86 66 00111
cannam@86 67 00114 Prototype(<span class="keyword">const</span> Prototype &amp;);
cannam@86 68 00115 Prototype(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;);
cannam@86 69 00116 Prototype(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *);
cannam@86 70 00118
cannam@86 71 00129 Prototype(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy);
cannam@86 72 00130
cannam@86 73 00132
cannam@86 74 00133 Prototype &amp;operator=(<span class="keyword">const</span> Prototype &amp;);
cannam@86 75 00134 Prototype &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;);
cannam@86 76 00135 Prototype &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *);
cannam@86 77 00137
cannam@86 78 00141 Prototype &amp;assign_object(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy);
cannam@86 79 00142
cannam@86 80 00145 <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
cannam@86 81 00146
cannam@86 82 00147 ::FLAC__StreamMetadata *object_;
cannam@86 83 00148 <span class="keyword">public</span>:
cannam@86 84 00151 <span class="keyword">virtual</span> ~Prototype();
cannam@86 85 00152
cannam@86 86 00154
cannam@86 87 00156 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Prototype &amp;) <span class="keyword">const</span>;
cannam@86 88 00157 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;) <span class="keyword">const</span>;
cannam@86 89 00158 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *) <span class="keyword">const</span>;
cannam@86 90 00160
cannam@86 91 00162
cannam@86 92 00163 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Prototype &amp;) <span class="keyword">const</span>;
cannam@86 93 00164 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;) <span class="keyword">const</span>;
cannam@86 94 00165 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *) <span class="keyword">const</span>;
cannam@86 95 00167
cannam@86 96 00168 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classFLAC_1_1Metadata_1_1SimpleIterator.html">SimpleIterator</a>;
cannam@86 97 00169 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classFLAC_1_1Metadata_1_1Iterator.html">Iterator</a>;
cannam@86 98 00170
cannam@86 99 00175 <span class="keyword">inline</span> <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 100 00176
cannam@86 101 00183 <span class="keywordtype">bool</span> get_is_last() <span class="keyword">const</span>;
cannam@86 102 00184
cannam@86 103 00190 <a class="code" href="group__flac__format.html#ga113"> ::FLAC__MetadataType</a> get_type() <span class="keyword">const</span>;
cannam@86 104 00191
cannam@86 105 00201 <span class="keywordtype">unsigned</span> get_length() <span class="keyword">const</span>;
cannam@86 106 00202
cannam@86 107 00209 <span class="keywordtype">void</span> set_is_last(<span class="keywordtype">bool</span>);
cannam@86 108 00210
cannam@86 109 00218 <span class="keyword">inline</span> operator const ::FLAC__StreamMetadata *() <span class="keyword">const</span>;
cannam@86 110 00219 <span class="keyword">private</span>:
cannam@86 111 00221 Prototype();
cannam@86 112 00222
cannam@86 113 00223 <span class="comment">// These are used only by Iterator</span>
cannam@86 114 00224 <span class="keywordtype">bool</span> is_reference_;
cannam@86 115 00225 <span class="keyword">inline</span> <span class="keywordtype">void</span> set_reference(<span class="keywordtype">bool</span> x) { is_reference_ = x; }
cannam@86 116 00226 };
cannam@86 117 00227
cannam@86 118 00228 <span class="preprocessor">#ifdef _MSC_VER</span>
cannam@86 119 00229 <span class="preprocessor"></span><span class="comment">// warning C4800: 'int' : forcing to bool 'true' or 'false' (performance warning)</span>
cannam@86 120 00230 <span class="preprocessor">#pragma warning ( disable : 4800 )</span>
cannam@86 121 00231 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
cannam@86 122 00232 <span class="preprocessor"></span>
cannam@86 123 <a name="l00233"></a><a class="code" href="group__flacpp__metadata__object.html#ga1">00233</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(<span class="keyword">const</span> Prototype &amp;object)<span class="keyword"> const</span>
cannam@86 124 00234 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">bool</span>)<a class="code" href="group__flac__metadata__object.html#ga3">::FLAC__metadata_object_is_equal</a>(object_, object.<a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentp0">object_</a>); }
cannam@86 125 00235
cannam@86 126 00236 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const</span>
cannam@86 127 00237 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">bool</span>)<a class="code" href="group__flac__metadata__object.html#ga3">::FLAC__metadata_object_is_equal</a>(object_, &amp;object); }
cannam@86 128 00238
cannam@86 129 00239 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const</span>
cannam@86 130 00240 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">bool</span>)<a class="code" href="group__flac__metadata__object.html#ga3">::FLAC__metadata_object_is_equal</a>(object_, object); }
cannam@86 131 00241
cannam@86 132 00242 <span class="preprocessor">#ifdef _MSC_VER</span>
cannam@86 133 00243 <span class="preprocessor"></span><span class="comment">// @@@ how to re-enable? the following doesn't work</span>
cannam@86 134 00244 <span class="comment">// #pragma warning ( enable : 4800 )</span>
cannam@86 135 00245 <span class="preprocessor">#endif</span>
cannam@86 136 00246 <span class="preprocessor"></span>
cannam@86 137 <a name="l00247"></a><a class="code" href="group__flacpp__metadata__object.html#ga4">00247</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(<span class="keyword">const</span> Prototype &amp;object)<span class="keyword"> const</span>
cannam@86 138 00248 <span class="keyword"> </span>{ <span class="keywordflow">return</span> !<a class="code" href="group__flacpp__metadata__object.html#ga1">operator==</a>(object); }
cannam@86 139 00249
cannam@86 140 00250 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const</span>
cannam@86 141 00251 <span class="keyword"> </span>{ <span class="keywordflow">return</span> !<a class="code" href="group__flacpp__metadata__object.html#ga1">operator==</a>(object); }
cannam@86 142 00252
cannam@86 143 00253 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const</span>
cannam@86 144 00254 <span class="keyword"> </span>{ <span class="keywordflow">return</span> !<a class="code" href="group__flacpp__metadata__object.html#ga1">operator==</a>(object); }
cannam@86 145 00255
cannam@86 146 <a name="l00256"></a><a class="code" href="group__flacpp__metadata__object.html#ga7">00256</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__object.html#ga7">Prototype::is_valid</a>()<span class="keyword"> const</span>
cannam@86 147 00257 <span class="keyword"> </span>{ <span class="keywordflow">return</span> 0 != object_; }
cannam@86 148 00258
cannam@86 149 <a name="l00259"></a><a class="code" href="group__flacpp__metadata__object.html#ga8">00259</a> <span class="keyword">inline</span> Prototype::operator const ::FLAC__StreamMetadata *()<span class="keyword"> const</span>
cannam@86 150 00260 <span class="keyword"> </span>{ <span class="keywordflow">return</span> object_; }
cannam@86 151 00261
cannam@86 152 00263 FLACPP_API Prototype *<a class="code" href="group__flacpp__metadata__object.html#ga0">clone</a>(<span class="keyword">const</span> Prototype *);
cannam@86 153 00264
cannam@86 154 00265
cannam@86 155 <a name="l00270"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html">00270</a> <span class="keyword">class </span>FLACPP_API StreamInfo : <span class="keyword">public</span> Prototype {
cannam@86 156 00271 <span class="keyword">public</span>:
cannam@86 157 00272 StreamInfo();
cannam@86 158 00273
cannam@86 159 00275
cannam@86 160 <a name="l00278"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa1">00278</a> <span class="keyword">inline</span> StreamInfo(<span class="keyword">const</span> StreamInfo &amp;object): Prototype(object) { }
cannam@86 161 00279 <span class="keyword">inline</span> StreamInfo(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 162 00280 <span class="keyword">inline</span> StreamInfo(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 163 00282
cannam@86 164 <a name="l00286"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa4">00286</a> <span class="keyword">inline</span> StreamInfo(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 165 00287
cannam@86 166 00288 ~StreamInfo();
cannam@86 167 00289
cannam@86 168 00291
cannam@86 169 <a name="l00292"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa6">00292</a> <span class="keyword">inline</span> StreamInfo &amp;operator=(<span class="keyword">const</span> StreamInfo &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 170 00293 <span class="keyword">inline</span> StreamInfo &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 171 00294 <span class="keyword">inline</span> StreamInfo &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 172 00296
cannam@86 173 <a name="l00300"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa9">00300</a> <span class="keyword">inline</span> StreamInfo &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 174 00301
cannam@86 175 00303
cannam@86 176 <a name="l00304"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa10">00304</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> StreamInfo &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 177 00305 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 178 00306 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 179 00308
cannam@86 180 00310
cannam@86 181 <a name="l00311"></a><a class="code" href="classFLAC_1_1Metadata_1_1StreamInfo.html#FLAC_1_1Metadata_1_1StreamInfoa13">00311</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> StreamInfo &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 182 00312 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 183 00313 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 184 00315
cannam@86 185 00317
cannam@86 186 00318 <span class="keywordtype">unsigned</span> get_min_blocksize() <span class="keyword">const</span>;
cannam@86 187 00319 <span class="keywordtype">unsigned</span> get_max_blocksize() <span class="keyword">const</span>;
cannam@86 188 00320 <span class="keywordtype">unsigned</span> get_min_framesize() <span class="keyword">const</span>;
cannam@86 189 00321 <span class="keywordtype">unsigned</span> get_max_framesize() <span class="keyword">const</span>;
cannam@86 190 00322 <span class="keywordtype">unsigned</span> get_sample_rate() <span class="keyword">const</span>;
cannam@86 191 00323 <span class="keywordtype">unsigned</span> get_channels() <span class="keyword">const</span>;
cannam@86 192 00324 <span class="keywordtype">unsigned</span> get_bits_per_sample() <span class="keyword">const</span>;
cannam@86 193 00325 FLAC__uint64 get_total_samples() <span class="keyword">const</span>;
cannam@86 194 00326 <span class="keyword">const</span> FLAC__byte *get_md5sum() <span class="keyword">const</span>;
cannam@86 195 00327
cannam@86 196 00328 <span class="keywordtype">void</span> set_min_blocksize(<span class="keywordtype">unsigned</span> value);
cannam@86 197 00329 <span class="keywordtype">void</span> set_max_blocksize(<span class="keywordtype">unsigned</span> value);
cannam@86 198 00330 <span class="keywordtype">void</span> set_min_framesize(<span class="keywordtype">unsigned</span> value);
cannam@86 199 00331 <span class="keywordtype">void</span> set_max_framesize(<span class="keywordtype">unsigned</span> value);
cannam@86 200 00332 <span class="keywordtype">void</span> set_sample_rate(<span class="keywordtype">unsigned</span> value);
cannam@86 201 00333 <span class="keywordtype">void</span> set_channels(<span class="keywordtype">unsigned</span> value);
cannam@86 202 00334 <span class="keywordtype">void</span> set_bits_per_sample(<span class="keywordtype">unsigned</span> value);
cannam@86 203 00335 <span class="keywordtype">void</span> set_total_samples(FLAC__uint64 value);
cannam@86 204 00336 <span class="keywordtype">void</span> set_md5sum(<span class="keyword">const</span> FLAC__byte value[16]);
cannam@86 205 00338 };
cannam@86 206 00339
cannam@86 207 <a name="l00344"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html">00344</a> <span class="keyword">class </span>FLACPP_API Padding : <span class="keyword">public</span> Prototype {
cannam@86 208 00345 <span class="keyword">public</span>:
cannam@86 209 00346 Padding();
cannam@86 210 00347
cannam@86 211 00349
cannam@86 212 <a name="l00352"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga1">00352</a> <span class="keyword">inline</span> Padding(<span class="keyword">const</span> Padding &amp;object): Prototype(object) { }
cannam@86 213 00353 <span class="keyword">inline</span> Padding(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 214 00354 <span class="keyword">inline</span> Padding(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 215 00356
cannam@86 216 <a name="l00360"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga4">00360</a> <span class="keyword">inline</span> Padding(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 217 00361
cannam@86 218 00362 ~Padding();
cannam@86 219 00363
cannam@86 220 00365
cannam@86 221 <a name="l00366"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga6">00366</a> <span class="keyword">inline</span> Padding &amp;operator=(<span class="keyword">const</span> Padding &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 222 00367 <span class="keyword">inline</span> Padding &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 223 00368 <span class="keyword">inline</span> Padding &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 224 00370
cannam@86 225 <a name="l00374"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga9">00374</a> <span class="keyword">inline</span> Padding &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 226 00375
cannam@86 227 00377
cannam@86 228 <a name="l00378"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga10">00378</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Padding &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 229 00379 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 230 00380 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 231 00382
cannam@86 232 00384
cannam@86 233 <a name="l00385"></a><a class="code" href="classFLAC_1_1Metadata_1_1Padding.html#FLAC_1_1Metadata_1_1Paddinga13">00385</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Padding &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 234 00386 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 235 00387 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 236 00389
cannam@86 237 00390 <span class="keywordtype">void</span> set_length(<span class="keywordtype">unsigned</span> length);
cannam@86 238 00391 };
cannam@86 239 00392
cannam@86 240 <a name="l00397"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html">00397</a> <span class="keyword">class </span>FLACPP_API Application : <span class="keyword">public</span> Prototype {
cannam@86 241 00398 <span class="keyword">public</span>:
cannam@86 242 00399 Application();
cannam@86 243 00400 <span class="comment">//</span>
cannam@86 244 00402 <span class="comment"></span>
cannam@86 245 <a name="l00405"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa1">00405</a> <span class="keyword">inline</span> Application(<span class="keyword">const</span> Application &amp;object): Prototype(object) { }
cannam@86 246 00406 <span class="keyword">inline</span> Application(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 247 00407 <span class="keyword">inline</span> Application(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 248 00409
cannam@86 249 <a name="l00413"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa4">00413</a> <span class="keyword">inline</span> Application(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 250 00414
cannam@86 251 00415 ~Application();
cannam@86 252 00416
cannam@86 253 00418
cannam@86 254 <a name="l00419"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa6">00419</a> <span class="keyword">inline</span> Application &amp;operator=(<span class="keyword">const</span> Application &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 255 00420 <span class="keyword">inline</span> Application &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 256 00421 <span class="keyword">inline</span> Application &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 257 00423
cannam@86 258 <a name="l00427"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa9">00427</a> <span class="keyword">inline</span> Application &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 259 00428
cannam@86 260 00430
cannam@86 261 <a name="l00431"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa10">00431</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Application &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 262 00432 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 263 00433 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 264 00435
cannam@86 265 00437
cannam@86 266 <a name="l00438"></a><a class="code" href="classFLAC_1_1Metadata_1_1Application.html#FLAC_1_1Metadata_1_1Applicationa13">00438</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Application &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 267 00439 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 268 00440 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 269 00442
cannam@86 270 00443 <span class="keyword">const</span> FLAC__byte *get_id() <span class="keyword">const</span>;
cannam@86 271 00444 <span class="keyword">const</span> FLAC__byte *get_data() <span class="keyword">const</span>;
cannam@86 272 00445
cannam@86 273 00446 <span class="keywordtype">void</span> set_id(<span class="keyword">const</span> FLAC__byte value[4]);
cannam@86 274 00448 <span class="keywordtype">bool</span> set_data(<span class="keyword">const</span> FLAC__byte *data, <span class="keywordtype">unsigned</span> length);
cannam@86 275 00449 <span class="keywordtype">bool</span> set_data(FLAC__byte *data, <span class="keywordtype">unsigned</span> length, <span class="keywordtype">bool</span> copy);
cannam@86 276 00450 };
cannam@86 277 00451
cannam@86 278 <a name="l00456"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html">00456</a> <span class="keyword">class </span>FLACPP_API SeekTable : <span class="keyword">public</span> Prototype {
cannam@86 279 00457 <span class="keyword">public</span>:
cannam@86 280 00458 SeekTable();
cannam@86 281 00459
cannam@86 282 00461
cannam@86 283 <a name="l00464"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea1">00464</a> <span class="keyword">inline</span> SeekTable(<span class="keyword">const</span> SeekTable &amp;object): Prototype(object) { }
cannam@86 284 00465 <span class="keyword">inline</span> SeekTable(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 285 00466 <span class="keyword">inline</span> SeekTable(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 286 00468
cannam@86 287 <a name="l00472"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea4">00472</a> <span class="keyword">inline</span> SeekTable(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 288 00473
cannam@86 289 00474 ~SeekTable();
cannam@86 290 00475
cannam@86 291 00477
cannam@86 292 <a name="l00478"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea6">00478</a> <span class="keyword">inline</span> SeekTable &amp;operator=(<span class="keyword">const</span> SeekTable &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 293 00479 <span class="keyword">inline</span> SeekTable &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 294 00480 <span class="keyword">inline</span> SeekTable &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 295 00482
cannam@86 296 <a name="l00486"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea9">00486</a> <span class="keyword">inline</span> SeekTable &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 297 00487
cannam@86 298 00489
cannam@86 299 <a name="l00490"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea10">00490</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> SeekTable &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 300 00491 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 301 00492 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 302 00494
cannam@86 303 00496
cannam@86 304 <a name="l00497"></a><a class="code" href="classFLAC_1_1Metadata_1_1SeekTable.html#FLAC_1_1Metadata_1_1SeekTablea13">00497</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> SeekTable &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 305 00498 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 306 00499 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 307 00501
cannam@86 308 00502 <span class="keywordtype">unsigned</span> get_num_points() <span class="keyword">const</span>;
cannam@86 309 00503 ::FLAC__StreamMetadata_SeekPoint get_point(<span class="keywordtype">unsigned</span> index) <span class="keyword">const</span>;
cannam@86 310 00504
cannam@86 311 00506 <span class="keywordtype">void</span> set_point(<span class="keywordtype">unsigned</span> index, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a> &amp;point);
cannam@86 312 00507
cannam@86 313 00509 <span class="keywordtype">bool</span> insert_point(<span class="keywordtype">unsigned</span> index, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a> &amp;point);
cannam@86 314 00510
cannam@86 315 00512 <span class="keywordtype">bool</span> delete_point(<span class="keywordtype">unsigned</span> index);
cannam@86 316 00513
cannam@86 317 00515 <span class="keywordtype">bool</span> is_legal() <span class="keyword">const</span>;
cannam@86 318 00516 };
cannam@86 319 00517
cannam@86 320 <a name="l00522"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html">00522</a> <span class="keyword">class </span>FLACPP_API VorbisComment : <span class="keyword">public</span> Prototype {
cannam@86 321 00523 <span class="keyword">public</span>:
cannam@86 322 <a name="l00553"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">00553</a> <span class="keyword">class </span>FLACPP_API Entry {
cannam@86 323 00554 <span class="keyword">public</span>:
cannam@86 324 00555 Entry();
cannam@86 325 00556
cannam@86 326 00557 Entry(<span class="keyword">const</span> <span class="keywordtype">char</span> *field, <span class="keywordtype">unsigned</span> field_length);
cannam@86 327 00558 Entry(<span class="keyword">const</span> <span class="keywordtype">char</span> *field); <span class="comment">// assumes \a field is NUL-terminated</span>
cannam@86 328 00559
cannam@86 329 00560 Entry(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *field_value, <span class="keywordtype">unsigned</span> field_value_length);
cannam@86 330 00561 Entry(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *field_value); <span class="comment">// assumes \a field_value is NUL-terminated</span>
cannam@86 331 00562
cannam@86 332 00563 Entry(<span class="keyword">const</span> Entry &amp;entry);
cannam@86 333 00564
cannam@86 334 00565 Entry &amp;operator=(<span class="keyword">const</span> Entry &amp;entry);
cannam@86 335 00566
cannam@86 336 00567 <span class="keyword">virtual</span> ~Entry();
cannam@86 337 00568
cannam@86 338 00569 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 339 00570
cannam@86 340 00571 <span class="keywordtype">unsigned</span> get_field_length() <span class="keyword">const</span>;
cannam@86 341 00572 <span class="keywordtype">unsigned</span> get_field_name_length() <span class="keyword">const</span>;
cannam@86 342 00573 <span class="keywordtype">unsigned</span> get_field_value_length() <span class="keyword">const</span>;
cannam@86 343 00574
cannam@86 344 00575 ::FLAC__StreamMetadata_VorbisComment_Entry get_entry() <span class="keyword">const</span>;
cannam@86 345 00576 <span class="keyword">const</span> <span class="keywordtype">char</span> *get_field() <span class="keyword">const</span>;
cannam@86 346 00577 <span class="keyword">const</span> <span class="keywordtype">char</span> *get_field_name() <span class="keyword">const</span>;
cannam@86 347 00578 <span class="keyword">const</span> <span class="keywordtype">char</span> *get_field_value() <span class="keyword">const</span>;
cannam@86 348 00579
cannam@86 349 00580 <span class="keywordtype">bool</span> set_field(<span class="keyword">const</span> <span class="keywordtype">char</span> *field, <span class="keywordtype">unsigned</span> field_length);
cannam@86 350 00581 <span class="keywordtype">bool</span> set_field(<span class="keyword">const</span> <span class="keywordtype">char</span> *field); <span class="comment">// assumes \a field is NUL-terminated</span>
cannam@86 351 00582 <span class="keywordtype">bool</span> set_field_name(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_name);
cannam@86 352 00583 <span class="keywordtype">bool</span> set_field_value(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_value, <span class="keywordtype">unsigned</span> field_value_length);
cannam@86 353 00584 <span class="keywordtype">bool</span> set_field_value(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_value); <span class="comment">// assumes \a field_value is NUL-terminated</span>
cannam@86 354 00585 <span class="keyword">protected</span>:
cannam@86 355 00586 <span class="keywordtype">bool</span> is_valid_;
cannam@86 356 00587 ::FLAC__StreamMetadata_VorbisComment_Entry entry_;
cannam@86 357 00588 <span class="keywordtype">char</span> *field_name_;
cannam@86 358 00589 <span class="keywordtype">unsigned</span> field_name_length_;
cannam@86 359 00590 <span class="keywordtype">char</span> *field_value_;
cannam@86 360 00591 <span class="keywordtype">unsigned</span> field_value_length_;
cannam@86 361 00592 <span class="keyword">private</span>:
cannam@86 362 00593 <span class="keywordtype">void</span> zero();
cannam@86 363 00594 <span class="keywordtype">void</span> clear();
cannam@86 364 00595 <span class="keywordtype">void</span> clear_entry();
cannam@86 365 00596 <span class="keywordtype">void</span> clear_field_name();
cannam@86 366 00597 <span class="keywordtype">void</span> clear_field_value();
cannam@86 367 00598 <span class="keywordtype">void</span> construct(<span class="keyword">const</span> <span class="keywordtype">char</span> *field, <span class="keywordtype">unsigned</span> field_length);
cannam@86 368 00599 <span class="keywordtype">void</span> construct(<span class="keyword">const</span> <span class="keywordtype">char</span> *field); <span class="comment">// assumes \a field is NUL-terminated</span>
cannam@86 369 00600 <span class="keywordtype">void</span> construct(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *field_value, <span class="keywordtype">unsigned</span> field_value_length);
cannam@86 370 00601 <span class="keywordtype">void</span> construct(<span class="keyword">const</span> <span class="keywordtype">char</span> *field_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *field_value); <span class="comment">// assumes \a field_value is NUL-terminated</span>
cannam@86 371 00602 <span class="keywordtype">void</span> compose_field();
cannam@86 372 00603 <span class="keywordtype">void</span> parse_field();
cannam@86 373 00604 };
cannam@86 374 00605
cannam@86 375 00606 VorbisComment();
cannam@86 376 00607
cannam@86 377 00609
cannam@86 378 <a name="l00612"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta1">00612</a> <span class="keyword">inline</span> VorbisComment(<span class="keyword">const</span> VorbisComment &amp;object): Prototype(object) { }
cannam@86 379 00613 <span class="keyword">inline</span> VorbisComment(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 380 00614 <span class="keyword">inline</span> VorbisComment(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 381 00616
cannam@86 382 <a name="l00620"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta4">00620</a> <span class="keyword">inline</span> VorbisComment(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 383 00621
cannam@86 384 00622 ~VorbisComment();
cannam@86 385 00623
cannam@86 386 00625
cannam@86 387 <a name="l00626"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta6">00626</a> <span class="keyword">inline</span> VorbisComment &amp;operator=(<span class="keyword">const</span> VorbisComment &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 388 00627 <span class="keyword">inline</span> VorbisComment &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 389 00628 <span class="keyword">inline</span> VorbisComment &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 390 00630
cannam@86 391 <a name="l00634"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta9">00634</a> <span class="keyword">inline</span> VorbisComment &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 392 00635
cannam@86 393 00637
cannam@86 394 <a name="l00638"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta10">00638</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> VorbisComment &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 395 00639 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 396 00640 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 397 00642
cannam@86 398 00644
cannam@86 399 <a name="l00645"></a><a class="code" href="classFLAC_1_1Metadata_1_1VorbisComment.html#FLAC_1_1Metadata_1_1VorbisCommenta13">00645</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> VorbisComment &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 400 00646 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 401 00647 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 402 00649
cannam@86 403 00650 <span class="keywordtype">unsigned</span> get_num_comments() <span class="keyword">const</span>;
cannam@86 404 00651 <span class="keyword">const</span> FLAC__byte *get_vendor_string() <span class="keyword">const</span>; <span class="comment">// NUL-terminated UTF-8 string</span>
cannam@86 405 00652 Entry get_comment(<span class="keywordtype">unsigned</span> index) <span class="keyword">const</span>;
cannam@86 406 00653
cannam@86 407 00655 <span class="keywordtype">bool</span> set_vendor_string(<span class="keyword">const</span> FLAC__byte *string); <span class="comment">// NUL-terminated UTF-8 string</span>
cannam@86 408 00656
cannam@86 409 00658 <span class="keywordtype">bool</span> set_comment(<span class="keywordtype">unsigned</span> index, <span class="keyword">const</span> Entry &amp;entry);
cannam@86 410 00659
cannam@86 411 00661 <span class="keywordtype">bool</span> insert_comment(<span class="keywordtype">unsigned</span> index, <span class="keyword">const</span> Entry &amp;entry);
cannam@86 412 00662
cannam@86 413 00664 <span class="keywordtype">bool</span> append_comment(<span class="keyword">const</span> Entry &amp;entry);
cannam@86 414 00665
cannam@86 415 00667 <span class="keywordtype">bool</span> delete_comment(<span class="keywordtype">unsigned</span> index);
cannam@86 416 00668 };
cannam@86 417 00669
cannam@86 418 <a name="l00674"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html">00674</a> <span class="keyword">class </span>FLACPP_API CueSheet : <span class="keyword">public</span> Prototype {
cannam@86 419 00675 <span class="keyword">public</span>:
cannam@86 420 <a name="l00682"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet_1_1Track.html">00682</a> <span class="keyword">class </span>FLACPP_API Track {
cannam@86 421 00683 <span class="keyword">protected</span>:
cannam@86 422 00684 ::FLAC__StreamMetadata_CueSheet_Track *object_;
cannam@86 423 00685 <span class="keyword">public</span>:
cannam@86 424 00686 Track();
cannam@86 425 00687 Track(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__CueSheet__Track.html">FLAC__StreamMetadata_CueSheet_Track</a> *track);
cannam@86 426 00688 Track(<span class="keyword">const</span> Track &amp;track);
cannam@86 427 00689 Track &amp;operator=(<span class="keyword">const</span> Track &amp;track);
cannam@86 428 00690
cannam@86 429 00691 <span class="keyword">virtual</span> ~Track();
cannam@86 430 00692
cannam@86 431 00693 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 432 00694
cannam@86 433 00695
cannam@86 434 00696 <span class="keyword">inline</span> FLAC__uint64 get_offset()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;offset; }
cannam@86 435 00697 <span class="keyword">inline</span> FLAC__byte get_number()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;number; }
cannam@86 436 00698 <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_isrc()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;isrc; }
cannam@86 437 00699 <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> get_type()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;type; }
cannam@86 438 00700 <span class="keyword">inline</span> <span class="keywordtype">bool</span> get_pre_emphasis()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;pre_emphasis; }
cannam@86 439 00701
cannam@86 440 00702 <span class="keyword">inline</span> FLAC__byte get_num_indices()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_-&gt;num_indices; }
cannam@86 441 00703 ::FLAC__StreamMetadata_CueSheet_Index get_index(<span class="keywordtype">unsigned</span> i) <span class="keyword">const</span>;
cannam@86 442 00704
cannam@86 443 00705 <span class="keyword">inline</span> const ::FLAC__StreamMetadata_CueSheet_Track *get_track()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_; }
cannam@86 444 00706
cannam@86 445 00707 <span class="keyword">inline</span> <span class="keywordtype">void</span> set_offset(FLAC__uint64 value) { object_-&gt;offset = value; }
cannam@86 446 00708 <span class="keyword">inline</span> <span class="keywordtype">void</span> set_number(FLAC__byte value) { object_-&gt;number = value; }
cannam@86 447 00709 <span class="keywordtype">void</span> set_isrc(<span class="keyword">const</span> <span class="keywordtype">char</span> value[12]);
cannam@86 448 00710 <span class="keywordtype">void</span> set_type(<span class="keywordtype">unsigned</span> value);
cannam@86 449 00711 <span class="keyword">inline</span> <span class="keywordtype">void</span> set_pre_emphasis(<span class="keywordtype">bool</span> value) { object_-&gt;pre_emphasis = value? 1 : 0; }
cannam@86 450 00712
cannam@86 451 00713 <span class="keywordtype">void</span> set_index(<span class="keywordtype">unsigned</span> i, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a> &amp;index);
cannam@86 452 00714 <span class="comment">//@@@ It's awkward but to insert/delete index points</span>
cannam@86 453 00715 <span class="comment">//@@@ you must use the routines in the CueSheet class.</span>
cannam@86 454 00716 };
cannam@86 455 00717
cannam@86 456 00718 CueSheet();
cannam@86 457 00719
cannam@86 458 00721
cannam@86 459 <a name="l00724"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta1">00724</a> <span class="keyword">inline</span> CueSheet(<span class="keyword">const</span> CueSheet &amp;object): Prototype(object) { }
cannam@86 460 00725 <span class="keyword">inline</span> CueSheet(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 461 00726 <span class="keyword">inline</span> CueSheet(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 462 00728
cannam@86 463 <a name="l00732"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta4">00732</a> <span class="keyword">inline</span> CueSheet(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 464 00733
cannam@86 465 00734 ~CueSheet();
cannam@86 466 00735
cannam@86 467 00737
cannam@86 468 <a name="l00738"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta6">00738</a> <span class="keyword">inline</span> CueSheet &amp;operator=(<span class="keyword">const</span> CueSheet &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 469 00739 <span class="keyword">inline</span> CueSheet &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 470 00740 <span class="keyword">inline</span> CueSheet &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 471 00742
cannam@86 472 <a name="l00746"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta9">00746</a> <span class="keyword">inline</span> CueSheet &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 473 00747
cannam@86 474 00749
cannam@86 475 <a name="l00750"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta10">00750</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> CueSheet &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 476 00751 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 477 00752 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 478 00754
cannam@86 479 00756
cannam@86 480 <a name="l00757"></a><a class="code" href="classFLAC_1_1Metadata_1_1CueSheet.html#FLAC_1_1Metadata_1_1CueSheeta13">00757</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> CueSheet &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 481 00758 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 482 00759 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 483 00761
cannam@86 484 00762 <span class="keyword">const</span> <span class="keywordtype">char</span> *get_media_catalog_number() <span class="keyword">const</span>;
cannam@86 485 00763 FLAC__uint64 get_lead_in() <span class="keyword">const</span>;
cannam@86 486 00764 <span class="keywordtype">bool</span> get_is_cd() <span class="keyword">const</span>;
cannam@86 487 00765
cannam@86 488 00766 <span class="keywordtype">unsigned</span> get_num_tracks() <span class="keyword">const</span>;
cannam@86 489 00767 Track get_track(<span class="keywordtype">unsigned</span> i) <span class="keyword">const</span>;
cannam@86 490 00768
cannam@86 491 00769 <span class="keywordtype">void</span> set_media_catalog_number(<span class="keyword">const</span> <span class="keywordtype">char</span> value[128]);
cannam@86 492 00770 <span class="keywordtype">void</span> set_lead_in(FLAC__uint64 value);
cannam@86 493 00771 <span class="keywordtype">void</span> set_is_cd(<span class="keywordtype">bool</span> value);
cannam@86 494 00772
cannam@86 495 00773 <span class="keywordtype">void</span> set_index(<span class="keywordtype">unsigned</span> track_num, <span class="keywordtype">unsigned</span> index_num, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a> &amp;index);
cannam@86 496 00774
cannam@86 497 00776 <span class="keywordtype">bool</span> insert_index(<span class="keywordtype">unsigned</span> track_num, <span class="keywordtype">unsigned</span> index_num, <span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a> &amp;index);
cannam@86 498 00777
cannam@86 499 00779 <span class="keywordtype">bool</span> delete_index(<span class="keywordtype">unsigned</span> track_num, <span class="keywordtype">unsigned</span> index_num);
cannam@86 500 00780
cannam@86 501 00782 <span class="keywordtype">bool</span> set_track(<span class="keywordtype">unsigned</span> i, <span class="keyword">const</span> Track &amp;track);
cannam@86 502 00783
cannam@86 503 00785 <span class="keywordtype">bool</span> insert_track(<span class="keywordtype">unsigned</span> i, <span class="keyword">const</span> Track &amp;track);
cannam@86 504 00786
cannam@86 505 00788 <span class="keywordtype">bool</span> delete_track(<span class="keywordtype">unsigned</span> i);
cannam@86 506 00789
cannam@86 507 00791 <span class="keywordtype">bool</span> is_legal(<span class="keywordtype">bool</span> check_cd_da_subset = <span class="keyword">false</span>, <span class="keyword">const</span> <span class="keywordtype">char</span> **violation = 0) <span class="keyword">const</span>;
cannam@86 508 00792
cannam@86 509 00794 FLAC__uint32 calculate_cddb_id() <span class="keyword">const</span>;
cannam@86 510 00795 };
cannam@86 511 00796
cannam@86 512 <a name="l00801"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html">00801</a> <span class="keyword">class </span>FLACPP_API Picture : <span class="keyword">public</span> Prototype {
cannam@86 513 00802 <span class="keyword">public</span>:
cannam@86 514 00803 Picture();
cannam@86 515 00804
cannam@86 516 00806
cannam@86 517 <a name="l00809"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea1">00809</a> <span class="keyword">inline</span> Picture(<span class="keyword">const</span> Picture &amp;object): Prototype(object) { }
cannam@86 518 00810 <span class="keyword">inline</span> Picture(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 519 00811 <span class="keyword">inline</span> Picture(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 520 00813
cannam@86 521 <a name="l00817"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea4">00817</a> <span class="keyword">inline</span> Picture(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 522 00818
cannam@86 523 00819 ~Picture();
cannam@86 524 00820
cannam@86 525 00822
cannam@86 526 <a name="l00823"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea6">00823</a> <span class="keyword">inline</span> Picture &amp;operator=(<span class="keyword">const</span> Picture &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 527 00824 <span class="keyword">inline</span> Picture &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 528 00825 <span class="keyword">inline</span> Picture &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 529 00827
cannam@86 530 <a name="l00831"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea9">00831</a> <span class="keyword">inline</span> Picture &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 531 00832
cannam@86 532 00834
cannam@86 533 <a name="l00835"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea10">00835</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Picture &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 534 00836 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 535 00837 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 536 00839
cannam@86 537 00841
cannam@86 538 <a name="l00842"></a><a class="code" href="classFLAC_1_1Metadata_1_1Picture.html#FLAC_1_1Metadata_1_1Picturea13">00842</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Picture &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 539 00843 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 540 00844 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 541 00846 <a class="code" href="group__flac__format.html#ga114"></a>
cannam@86 542 00847 <a class="code" href="group__flac__format.html#ga114"> ::FLAC__StreamMetadata_Picture_Type</a> get_type() <span class="keyword">const</span>;
cannam@86 543 00848 <span class="keyword">const</span> <span class="keywordtype">char</span> *get_mime_type() <span class="keyword">const</span>; <span class="comment">// NUL-terminated printable ASCII string</span>
cannam@86 544 00849 <span class="keyword">const</span> FLAC__byte *get_description() <span class="keyword">const</span>; <span class="comment">// NUL-terminated UTF-8 string</span>
cannam@86 545 00850 FLAC__uint32 get_width() <span class="keyword">const</span>;
cannam@86 546 00851 FLAC__uint32 get_height() <span class="keyword">const</span>;
cannam@86 547 00852 FLAC__uint32 get_depth() <span class="keyword">const</span>;
cannam@86 548 00853 FLAC__uint32 get_colors() <span class="keyword">const</span>;
cannam@86 549 00854 FLAC__uint32 get_data_length() <span class="keyword">const</span>;
cannam@86 550 00855 <span class="keyword">const</span> FLAC__byte *get_data() <span class="keyword">const</span>;
cannam@86 551 00856
cannam@86 552 00857 <span class="keywordtype">void</span> set_type(::<a class="code" href="group__flac__format.html#ga114">FLAC__StreamMetadata_Picture_Type</a> type);
cannam@86 553 00858
cannam@86 554 00860 <span class="keywordtype">bool</span> set_mime_type(<span class="keyword">const</span> <span class="keywordtype">char</span> *string); <span class="comment">// NUL-terminated printable ASCII string</span>
cannam@86 555 00861
cannam@86 556 00863 <span class="keywordtype">bool</span> set_description(<span class="keyword">const</span> FLAC__byte *string); <span class="comment">// NUL-terminated UTF-8 string</span>
cannam@86 557 00864
cannam@86 558 00865 <span class="keywordtype">void</span> set_width(FLAC__uint32 value) <span class="keyword">const</span>;
cannam@86 559 00866 <span class="keywordtype">void</span> set_height(FLAC__uint32 value) <span class="keyword">const</span>;
cannam@86 560 00867 <span class="keywordtype">void</span> set_depth(FLAC__uint32 value) <span class="keyword">const</span>;
cannam@86 561 00868 <span class="keywordtype">void</span> set_colors(FLAC__uint32 value) <span class="keyword">const</span>;
cannam@86 562 00869
cannam@86 563 00871 <span class="keywordtype">bool</span> set_data(<span class="keyword">const</span> FLAC__byte *data, FLAC__uint32 data_length);
cannam@86 564 00872 };
cannam@86 565 00873
cannam@86 566 <a name="l00880"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html">00880</a> <span class="keyword">class </span>FLACPP_API Unknown : <span class="keyword">public</span> Prototype {
cannam@86 567 00881 <span class="keyword">public</span>:
cannam@86 568 00882 Unknown();
cannam@86 569 00883 <span class="comment">//</span>
cannam@86 570 00885 <span class="comment"></span>
cannam@86 571 <a name="l00888"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna1">00888</a> <span class="keyword">inline</span> Unknown(<span class="keyword">const</span> Unknown &amp;object): Prototype(object) { }
cannam@86 572 00889 <span class="keyword">inline</span> Unknown(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object): Prototype(object) { }
cannam@86 573 00890 <span class="keyword">inline</span> Unknown(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object): Prototype(object) { }
cannam@86 574 00892
cannam@86 575 <a name="l00896"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna4">00896</a> <span class="keyword">inline</span> Unknown(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy): Prototype(object, copy) { }
cannam@86 576 00897
cannam@86 577 00898 ~Unknown();
cannam@86 578 00899
cannam@86 579 00901
cannam@86 580 <a name="l00902"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna6">00902</a> <span class="keyword">inline</span> Unknown &amp;operator=(<span class="keyword">const</span> Unknown &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 581 00903 <span class="keyword">inline</span> Unknown &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 582 00904 <span class="keyword">inline</span> Unknown &amp;operator=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1Prototypeb4">Prototype::operator=</a>(object); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 583 00906
cannam@86 584 <a name="l00910"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna9">00910</a> <span class="keyword">inline</span> Unknown &amp;assign(::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object, <span class="keywordtype">bool</span> copy) { <a class="code" href="classFLAC_1_1Metadata_1_1Prototype.html#FLAC_1_1Metadata_1_1VorbisCommentb0">Prototype::assign_object</a>(object, copy); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
cannam@86 585 00911
cannam@86 586 00913
cannam@86 587 <a name="l00914"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna10">00914</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Unknown &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 588 00915 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 589 00916 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga1">Prototype::operator==</a>(object); }
cannam@86 590 00918
cannam@86 591 00920
cannam@86 592 <a name="l00921"></a><a class="code" href="classFLAC_1_1Metadata_1_1Unknown.html#FLAC_1_1Metadata_1_1Unknowna13">00921</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Unknown &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 593 00922 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> &amp;object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 594 00923 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> ::<a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *object)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="group__flacpp__metadata__object.html#ga4">Prototype::operator!=</a>(object); }
cannam@86 595 00925
cannam@86 596 00926 <span class="keyword">const</span> FLAC__byte *get_data() <span class="keyword">const</span>;
cannam@86 597 00927
cannam@86 598 00929 <span class="keywordtype">bool</span> set_data(<span class="keyword">const</span> FLAC__byte *data, <span class="keywordtype">unsigned</span> length);
cannam@86 599 00930 <span class="keywordtype">bool</span> set_data(FLAC__byte *data, <span class="keywordtype">unsigned</span> length, <span class="keywordtype">bool</span> copy);
cannam@86 600 00931 };
cannam@86 601 00932
cannam@86 602 00933 <span class="comment">/* \} */</span>
cannam@86 603 00934
cannam@86 604 00935
cannam@86 605 00948 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga0">get_streaminfo</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, StreamInfo &amp;streaminfo);
cannam@86 606 00949
cannam@86 607 00950 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga1">get_tags</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, VorbisComment *&amp;tags);
cannam@86 608 00951 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga1">get_tags</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, VorbisComment &amp;tags);
cannam@86 609 00952
cannam@86 610 00953 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga3">get_cuesheet</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, CueSheet *&amp;cuesheet);
cannam@86 611 00954 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga3">get_cuesheet</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, CueSheet &amp;cuesheet);
cannam@86 612 00955
cannam@86 613 00956 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga5">get_picture</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, Picture *&amp;picture, ::<a class="code" href="group__flac__format.html#ga114">FLAC__StreamMetadata_Picture_Type</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> FLAC__byte *description, <span class="keywordtype">unsigned</span> max_width, <span class="keywordtype">unsigned</span> max_height, <span class="keywordtype">unsigned</span> max_depth, <span class="keywordtype">unsigned</span> max_colors);
cannam@86 614 00957 FLACPP_API <span class="keywordtype">bool</span> <a class="code" href="group__flacpp__metadata__level0.html#ga5">get_picture</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, Picture &amp;picture, ::<a class="code" href="group__flac__format.html#ga114">FLAC__StreamMetadata_Picture_Type</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> FLAC__byte *description, <span class="keywordtype">unsigned</span> max_width, <span class="keywordtype">unsigned</span> max_height, <span class="keywordtype">unsigned</span> max_depth, <span class="keywordtype">unsigned</span> max_colors);
cannam@86 615 00958
cannam@86 616 00959 <span class="comment">/* \} */</span>
cannam@86 617 00960
cannam@86 618 00961
cannam@86 619 <a name="l00996"></a><a class="code" href="classFLAC_1_1Metadata_1_1SimpleIterator.html">00996</a> <span class="keyword">class </span>FLACPP_API SimpleIterator {
cannam@86 620 00997 <span class="keyword">public</span>:
cannam@86 621 <a name="l01000"></a><a class="code" href="classFLAC_1_1Metadata_1_1SimpleIterator_1_1Status.html">01000</a> <span class="keyword">class </span>FLACPP_API Status {
cannam@86 622 01001 <span class="keyword">public</span>:
cannam@86 623 01002 <span class="keyword">inline</span> Status(::<a class="code" href="group__flac__metadata__level1.html#ga18">FLAC__Metadata_SimpleIteratorStatus</a> status): status_(status) { }
cannam@86 624 01003 <span class="keyword">inline</span> <a class="code" href="group__flac__metadata__level1.html#ga18">operator ::FLAC__Metadata_SimpleIteratorStatus</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> status_; }
cannam@86 625 01004 <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *as_cstring()<span class="keyword"> const </span>{ <a class="code" href="group__flac__metadata__level1.html#ga1">return ::FLAC__Metadata_SimpleIteratorStatusString</a>[status_]; }
cannam@86 626 01005 <span class="keyword">protected</span>:<a class="code" href="group__flac__metadata__level1.html#ga18"></a>
cannam@86 627 01006 <a class="code" href="group__flac__metadata__level1.html#ga18"> ::FLAC__Metadata_SimpleIteratorStatus</a> status_;
cannam@86 628 01007 };
cannam@86 629 01008
cannam@86 630 01009 SimpleIterator();
cannam@86 631 01010 <span class="keyword">virtual</span> ~SimpleIterator();
cannam@86 632 01011
cannam@86 633 01012 <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 634 01013
cannam@86 635 01014 <span class="keywordtype">bool</span> init(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <span class="keywordtype">bool</span> read_only, <span class="keywordtype">bool</span> preserve_file_stats);
cannam@86 636 01015
cannam@86 637 01016 Status status();
cannam@86 638 01017 <span class="keywordtype">bool</span> is_writable() <span class="keyword">const</span>;
cannam@86 639 01018
cannam@86 640 01019 <span class="keywordtype">bool</span> next();
cannam@86 641 01020 <span class="keywordtype">bool</span> prev();
cannam@86 642 01021 <span class="keywordtype">bool</span> is_last() <span class="keyword">const</span>;
cannam@86 643 01022
cannam@86 644 01023 off_t get_block_offset() <span class="keyword">const</span>;
cannam@86 645 01024 <a class="code" href="group__flac__format.html#ga113"> ::FLAC__MetadataType</a> get_block_type() <span class="keyword">const</span>;
cannam@86 646 01025 <span class="keywordtype">unsigned</span> get_block_length() <span class="keyword">const</span>;
cannam@86 647 01026 <span class="keywordtype">bool</span> get_application_id(FLAC__byte *<span class="keywordtype">id</span>);
cannam@86 648 01027 Prototype *get_block();
cannam@86 649 01028 <span class="keywordtype">bool</span> set_block(Prototype *block, <span class="keywordtype">bool</span> use_padding = <span class="keyword">true</span>);
cannam@86 650 01029 <span class="keywordtype">bool</span> insert_block_after(Prototype *block, <span class="keywordtype">bool</span> use_padding = <span class="keyword">true</span>);
cannam@86 651 01030 <span class="keywordtype">bool</span> delete_block(<span class="keywordtype">bool</span> use_padding = <span class="keyword">true</span>);
cannam@86 652 01031
cannam@86 653 01032 <span class="keyword">protected</span>:<a class="code" href="group__flac__metadata__level1.html#ga0"></a>
cannam@86 654 01033 <a class="code" href="group__flac__metadata__level1.html#ga0"> ::FLAC__Metadata_SimpleIterator</a> *iterator_;
cannam@86 655 01034 <span class="keywordtype">void</span> clear();
cannam@86 656 01035 };
cannam@86 657 01036
cannam@86 658 01037 <span class="comment">/* \} */</span>
cannam@86 659 01038
cannam@86 660 01039
cannam@86 661 <a name="l01082"></a><a class="code" href="classFLAC_1_1Metadata_1_1Chain.html">01082</a> <span class="keyword">class </span>FLACPP_API Chain {
cannam@86 662 01083 <span class="keyword">public</span>:
cannam@86 663 <a name="l01086"></a><a class="code" href="classFLAC_1_1Metadata_1_1Chain_1_1Status.html">01086</a> <span class="keyword">class </span>FLACPP_API Status {
cannam@86 664 01087 <span class="keyword">public</span>:
cannam@86 665 01088 <span class="keyword">inline</span> Status(::<a class="code" href="group__flac__metadata__level2.html#ga27">FLAC__Metadata_ChainStatus</a> status): status_(status) { }
cannam@86 666 01089 <span class="keyword">inline</span> <a class="code" href="group__flac__metadata__level2.html#ga27">operator ::FLAC__Metadata_ChainStatus</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> status_; }
cannam@86 667 01090 <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *as_cstring()<span class="keyword"> const </span>{ <a class="code" href="group__flac__metadata__level2.html#ga2">return ::FLAC__Metadata_ChainStatusString</a>[status_]; }
cannam@86 668 01091 <span class="keyword">protected</span>:<a class="code" href="group__flac__metadata__level2.html#ga27"></a>
cannam@86 669 01092 <a class="code" href="group__flac__metadata__level2.html#ga27"> ::FLAC__Metadata_ChainStatus</a> status_;
cannam@86 670 01093 };
cannam@86 671 01094
cannam@86 672 01095 Chain();
cannam@86 673 01096 <span class="keyword">virtual</span> ~Chain();
cannam@86 674 01097
cannam@86 675 01098 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classFLAC_1_1Metadata_1_1Iterator.html">Iterator</a>;
cannam@86 676 01099
cannam@86 677 01100 <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 678 01101
cannam@86 679 01102 Status status();
cannam@86 680 01103
cannam@86 681 01104 <span class="keywordtype">bool</span> read(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <span class="keywordtype">bool</span> is_ogg = <span class="keyword">false</span>);
cannam@86 682 01105 <span class="keywordtype">bool</span> read(<a class="code" href="group__flac__callbacks.html#ga0">FLAC__IOHandle</a> handle, <a class="code" href="structFLAC____IOCallbacks.html">FLAC__IOCallbacks</a> callbacks, <span class="keywordtype">bool</span> is_ogg = <span class="keyword">false</span>);
cannam@86 683 01106
cannam@86 684 01107 <span class="keywordtype">bool</span> check_if_tempfile_needed(<span class="keywordtype">bool</span> use_padding);
cannam@86 685 01108
cannam@86 686 01109 <span class="keywordtype">bool</span> write(<span class="keywordtype">bool</span> use_padding = <span class="keyword">true</span>, <span class="keywordtype">bool</span> preserve_file_stats = <span class="keyword">false</span>);
cannam@86 687 01110 <span class="keywordtype">bool</span> write(<span class="keywordtype">bool</span> use_padding, ::<a class="code" href="group__flac__callbacks.html#ga0">FLAC__IOHandle</a> handle, ::<a class="code" href="structFLAC____IOCallbacks.html">FLAC__IOCallbacks</a> callbacks);
cannam@86 688 01111 <span class="keywordtype">bool</span> write(<span class="keywordtype">bool</span> use_padding, ::<a class="code" href="group__flac__callbacks.html#ga0">FLAC__IOHandle</a> handle, ::<a class="code" href="structFLAC____IOCallbacks.html">FLAC__IOCallbacks</a> callbacks, ::<a class="code" href="group__flac__callbacks.html#ga0">FLAC__IOHandle</a> temp_handle, ::<a class="code" href="structFLAC____IOCallbacks.html">FLAC__IOCallbacks</a> temp_callbacks);
cannam@86 689 01112
cannam@86 690 01113 <span class="keywordtype">void</span> merge_padding();
cannam@86 691 01114 <span class="keywordtype">void</span> sort_padding();
cannam@86 692 01115
cannam@86 693 01116 <span class="keyword">protected</span>:<a class="code" href="group__flac__metadata__level2.html#ga0"></a>
cannam@86 694 01117 <a class="code" href="group__flac__metadata__level2.html#ga0"> ::FLAC__Metadata_Chain</a> *chain_;
cannam@86 695 01118 <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
cannam@86 696 01119 };
cannam@86 697 01120
cannam@86 698 <a name="l01126"></a><a class="code" href="classFLAC_1_1Metadata_1_1Iterator.html">01126</a> <span class="keyword">class </span>FLACPP_API Iterator {
cannam@86 699 01127 <span class="keyword">public</span>:
cannam@86 700 01128 Iterator();
cannam@86 701 01129 <span class="keyword">virtual</span> ~Iterator();
cannam@86 702 01130
cannam@86 703 01131 <span class="keywordtype">bool</span> is_valid() <span class="keyword">const</span>;
cannam@86 704 01132
cannam@86 705 01133
cannam@86 706 01134 <span class="keywordtype">void</span> init(Chain &amp;chain);
cannam@86 707 01135
cannam@86 708 01136 <span class="keywordtype">bool</span> next();
cannam@86 709 01137 <span class="keywordtype">bool</span> prev();
cannam@86 710 01138 <a class="code" href="group__flac__format.html#ga113"></a>
cannam@86 711 01139 <a class="code" href="group__flac__format.html#ga113"> ::FLAC__MetadataType</a> get_block_type() <span class="keyword">const</span>;
cannam@86 712 01140 Prototype *get_block();
cannam@86 713 01141 <span class="keywordtype">bool</span> set_block(Prototype *block);
cannam@86 714 01142 <span class="keywordtype">bool</span> delete_block(<span class="keywordtype">bool</span> replace_with_padding);
cannam@86 715 01143 <span class="keywordtype">bool</span> insert_block_before(Prototype *block);
cannam@86 716 01144 <span class="keywordtype">bool</span> insert_block_after(Prototype *block);
cannam@86 717 01145
cannam@86 718 01146 <span class="keyword">protected</span>:<a class="code" href="group__flac__metadata__level2.html#ga1"></a>
cannam@86 719 01147 <a class="code" href="group__flac__metadata__level2.html#ga1"> ::FLAC__Metadata_Iterator</a> *iterator_;
cannam@86 720 01148 <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
cannam@86 721 01149 };
cannam@86 722 01150
cannam@86 723 01151 <span class="comment">/* \} */</span>
cannam@86 724 01152
cannam@86 725 01153 }
cannam@86 726 01154 }
cannam@86 727 01155
cannam@86 728 01156 <span class="preprocessor">#endif</span>
cannam@86 729 </pre></div>
cannam@86 730 <hr size="1">
cannam@86 731 <div class="copyright">
cannam@86 732 <!-- @@@ oh so hacky -->
cannam@86 733 <table>
cannam@86 734 <tr>
cannam@86 735 <td align="left">
cannam@86 736 Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
cannam@86 737 </td>
cannam@86 738 <td width="1%" align="right">
cannam@86 739 <a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=13478&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
cannam@86 740 </td>
cannam@86 741 </tr>
cannam@86 742 </table>
cannam@86 743 </div>
cannam@86 744 <!-- Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson -->
cannam@86 745 <!-- Permission is granted to copy, distribute and/or modify this document -->
cannam@86 746 <!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
cannam@86 747 <!-- or any later version published by the Free Software Foundation; -->
cannam@86 748 <!-- with no invariant sections. -->
cannam@86 749 <!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
cannam@86 750 </body>
cannam@86 751 </html>