1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>FLAC: FLAC::Metadata::VorbisComment::Entry Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5</head><body>
6<!-- Generated by Doxygen 1.4.2 -->
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>
8<div class="nav">
9<b>FLAC</b>::<b>Metadata</b>::<a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment.html">VorbisComment</a>::<a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">Entry</a></div>
10<h1>FLAC::Metadata::VorbisComment::Entry Class Reference</h1><code>#include &lt;<a class="el" href="+_2metadata_8h-source.html">metadata.h</a>&gt;</code>
11<p>
12<a href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
13Convenience class for encapsulating Vorbis comment entries. An entry is a vendor string or a comment field. In the case of a vendor string, the field name is undefined; only the field value is relevant.<p>
14A <em>field</em> as used in the methods refers to an entire 'NAME=VALUE' string; for convenience the string is NUL-terminated. A length field is required in the unlikely event that the value contains contain embedded NULs.<p>
15A <em>field_name</em> is what is on the left side of the first '=' in the <em>field</em>. By definition it is ASCII and so is NUL-terminated and does not require a length to describe it. <em>field_name</em> is undefined for a vendor string entry.<p>
16A <em>field_value</em> is what is on the right side of the first '=' in the <em>field</em>. By definition, this may contain embedded NULs and so a <em>field_value_length</em> is required to describe it. However in practice, embedded NULs are not known to be used, so it is generally safe to treat field values as NUL- terminated UTF-8 strings.<p>
17Always check <a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html#FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya8">is_valid()</a> after the constructor or operator= to make sure memory was properly allocated and that the <a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">Entry</a> conforms to the Vorbis comment specification. 
18<p>
19<table border="0" cellpadding="0" cellspacing="0">
20<tr><td></td></tr>
21<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
22<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya1" doxytag="FLAC::Metadata::VorbisComment::Entry::Entry"></a>
23&nbsp;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (const char *field, unsigned field_length)</td></tr>
24
25<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya2" doxytag="FLAC::Metadata::VorbisComment::Entry::Entry"></a>
26&nbsp;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (const char *field)</td></tr>
27
28<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya3" doxytag="FLAC::Metadata::VorbisComment::Entry::Entry"></a>
29&nbsp;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (const char *field_name, const char *field_value, unsigned field_value_length)</td></tr>
30
31<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya4" doxytag="FLAC::Metadata::VorbisComment::Entry::Entry"></a>
32&nbsp;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (const char *field_name, const char *field_value)</td></tr>
33
34<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya5" doxytag="FLAC::Metadata::VorbisComment::Entry::Entry"></a>
35&nbsp;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (const <a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">Entry</a> &amp;entry)</td></tr>
36
37<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya6" doxytag="FLAC::Metadata::VorbisComment::Entry::operator="></a>
38<a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">Entry</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html">Entry</a> &amp;entry)</td></tr>
39
40<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFLAC_1_1Metadata_1_1VorbisComment_1_1Entry.html#FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya8">is_valid</a> () const </td></tr>
41
42<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya9" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field_length"></a>
43unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field_length</b> () const </td></tr>
44
45<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya10" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field_name_length"></a>
46unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field_name_length</b> () const </td></tr>
47
48<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya11" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field_value_length"></a>
49unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field_value_length</b> () const </td></tr>
50
51<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya12" doxytag="FLAC::Metadata::VorbisComment::Entry::get_entry"></a>
52::<a class="el" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_entry</b> () const </td></tr>
53
54<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya13" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field"></a>
55const char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field</b> () const </td></tr>
56
57<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya14" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field_name"></a>
58const char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field_name</b> () const </td></tr>
59
60<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya15" doxytag="FLAC::Metadata::VorbisComment::Entry::get_field_value"></a>
61const char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_field_value</b> () const </td></tr>
62
63<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya16" doxytag="FLAC::Metadata::VorbisComment::Entry::set_field"></a>
64bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>set_field</b> (const char *field, unsigned field_length)</td></tr>
65
66<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya17" doxytag="FLAC::Metadata::VorbisComment::Entry::set_field"></a>
67bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>set_field</b> (const char *field)</td></tr>
68
69<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya18" doxytag="FLAC::Metadata::VorbisComment::Entry::set_field_name"></a>
70bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>set_field_name</b> (const char *field_name)</td></tr>
71
72<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya19" doxytag="FLAC::Metadata::VorbisComment::Entry::set_field_value"></a>
73bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>set_field_value</b> (const char *field_value, unsigned field_value_length)</td></tr>
74
75<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya20" doxytag="FLAC::Metadata::VorbisComment::Entry::set_field_value"></a>
76bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>set_field_value</b> (const char *field_value)</td></tr>
77
78<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
79<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp0" doxytag="FLAC::Metadata::VorbisComment::Entry::is_valid_"></a>
80bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>is_valid_</b></td></tr>
81
82<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp1" doxytag="FLAC::Metadata::VorbisComment::Entry::entry_"></a>
83::<a class="el" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>entry_</b></td></tr>
84
85<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp2" doxytag="FLAC::Metadata::VorbisComment::Entry::field_name_"></a>
86char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>field_name_</b></td></tr>
87
88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp3" doxytag="FLAC::Metadata::VorbisComment::Entry::field_name_length_"></a>
89unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><b>field_name_length_</b></td></tr>
90
91<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp4" doxytag="FLAC::Metadata::VorbisComment::Entry::field_value_"></a>
92char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>field_value_</b></td></tr>
93
94<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entryp5" doxytag="FLAC::Metadata::VorbisComment::Entry::field_value_length_"></a>
95unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><b>field_value_length_</b></td></tr>
96
97</table>
98<hr><h2>Member Function Documentation</h2>
99<a class="anchor" name="FLAC_1_1Metadata_1_1VorbisComment_1_1Entrya8" doxytag="FLAC::Metadata::VorbisComment::Entry::is_valid"></a><p>
100<table class="mdTable" cellpadding="2" cellspacing="0">
101  <tr>
102    <td class="mdRow">
103      <table cellpadding="0" cellspacing="0" border="0">
104        <tr>
105          <td class="md" nowrap valign="top">virtual bool FLAC::Metadata::VorbisComment::Entry::is_valid           </td>
106          <td class="md" valign="top">(&nbsp;</td>
107          <td class="mdname1" valign="top" nowrap>          </td>
108          <td class="md" valign="top">&nbsp;)&nbsp;</td>
109          <td class="md" nowrap> const<code> [virtual]</code></td>
110        </tr>
111      </table>
112    </td>
113  </tr>
114</table>
115<table cellspacing="5" cellpadding="0" border="0">
116  <tr>
117    <td>
118      &nbsp;
119    </td>
120    <td>
121
122<p>
123Returns <code>true</code> iff object was properly constructed. 
124<p>
125    </td>
126  </tr>
127</table>
128<hr>The documentation for this class was generated from the following file:<ul>
129<li>include/FLAC++/<a class="el" href="+_2metadata_8h-source.html">metadata.h</a></ul>
130
131<hr size="1">
132<div class="copyright">
133	<!-- @@@ oh so hacky -->
134	<table>
135		<tr>
136			<td align="left">
137				Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson
138			</td>
139			<td width="1%" align="right">
140				<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=13478&type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
141			</td>
142		</tr>
143	</table>
144</div>
145<!-- Copyright (c)  2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson -->
146<!-- Permission is granted to copy, distribute and/or modify this document -->
147<!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
148<!-- or any later version published by the Free Software Foundation; -->
149<!-- with no invariant sections. -->
150<!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
151</body>
152</html>
153