Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > media > contrib > by-pkgid > 2c9d30f3cf217a6cae41860ebc0d6704 > files > 28

libid3lib3.8_0-devel-3.8.0-0.pre2.1.1mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ID3_Field class Reference</title>
<link href="id3lib.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">
<!-- Generated by Doxygen 1.2.12 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>ID3_Field  Class Reference</h1>The representative class of an ID3v2 field. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="field_8h-source.html">id3/field.h</a>&gt;</code>
<p>
<p>Inheritance diagram for ID3_Field::
<p><center><img src="class_i_d3___field.gif" usemap="#ID3_Field_map" border="0"></center>
<map name="ID3_Field_map">
<area href="class_i_d3___field_impl.html" alt="ID3_FieldImpl" shape="rect" coords="0,56,88,80">
</map>
<a href="class_i_d3___field-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a0">Clear</a> ()=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a1">Size</a> () const=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the size of a field.</em> <a href="#a1">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a2">BinSize</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a3">GetNumTextItems</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual ID3_Field &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a4">operator=</a> (<a class="el" href="sized__types_8h.html#a4">uint32</a> val)=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>A shortcut for the Set method.</em> <a href="#a4">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a5">Set</a> (<a class="el" href="sized__types_8h.html#a4">uint32</a>)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="sized__types_8h.html#a4">uint32</a>&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a6">Get</a> () const=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the value of the integer field.</em> <a href="#a6">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual ID3_Field &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a7">operator=</a> (const char *s)=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Shortcut for the Set operator.</em> <a href="#a7">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a8">Set</a> (const char *)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a9">Get</a> (char *, size_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a10">Get</a> (char *, size_t, index_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a11">GetRawText</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a12">GetRawTextItem</a> (index_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a13">Add</a> (const char *)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual ID3_Field &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a14">operator=</a> (const <a class="el" href="globals_8h.html#a39">unicode_t</a> *s)=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Shortcut for the Set operator. Performs similarly as <a class="el" href="class_i_d3___field.html#a7">operator=</a>(const char *), taking a unicode_t string as a parameter rather than an ascii string.</em> <a href="#a14">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a15">Set</a> (const <a class="el" href="globals_8h.html#a39">unicode_t</a> *)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a16">Get</a> (<a class="el" href="globals_8h.html#a39">unicode_t</a> *buffer, size_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a17">Get</a> (<a class="el" href="globals_8h.html#a39">unicode_t</a> *buffer, size_t, index_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual const <a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a18">GetRawUnicodeText</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual const <a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a19">GetRawUnicodeTextItem</a> (index_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a20">Add</a> (const <a class="el" href="globals_8h.html#a39">unicode_t</a> *)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a21">Set</a> (const <a class="el" href="globals_8h.html#a33">uchar</a> *, size_t)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual size_t&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a22">Get</a> (<a class="el" href="globals_8h.html#a33">uchar</a> *, size_t) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual const <a class="el" href="globals_8h.html#a33">uchar</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a23">GetRawBinary</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a24">FromFile</a> (const char *)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a25">ToFile</a> (const char *sInfo) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual ID3_Field &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a26">operator=</a> (const ID3_Field &amp;)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a27">InScope</a> (<a class="el" href="globals_8h.html#a216">ID3_V2Spec</a> spec) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="globals_8h.html#a218">ID3_FieldID</a>&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a28">GetID</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="globals_8h.html#a222">ID3_FieldType</a>&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a29">GetType</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a30">SetEncoding</a> (<a class="el" href="globals_8h.html#a214">ID3_TextEnc</a> enc)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="globals_8h.html#a214">ID3_TextEnc</a>&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a31">GetEncoding</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a32">IsEncodable</a> () const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a33">Render</a> (<a class="el" href="class_i_d3___writer.html">ID3_Writer</a> &amp;) const=0</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a34">Parse</a> (<a class="el" href="class_i_d3___reader.html">ID3_Reader</a> &amp;)=0</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#a35">HasChanged</a> () const=0</td></tr>
<tr><td colspan=2><br><h2>Protected Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#b0">~ID3_Field</a> ()</td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_i_d3___field.html#b1">ID3_Field</a> ()</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The representative class of an ID3v2 field.
<p>
As a general rule, you need never create an object of this type. id3lib uses them internally as part of the id3_frame class. You must know how to interact with these objects, though, and that's what this section is about.
<p>
The ID3_Field contains many overloaded methods to provide these facilities for four different data types: integers, ASCII strings, Unicode strings, and binary data.
<p>
An integer field supports the <a class="el" href="class_i_d3___field.html#a6">Get</a>(), <a class="el" href="class_i_d3___field.html#a5">Set</a>(uint32), and <a class="el" href="class_i_d3___field.html#a4">operator=</a>(uint32) methods.
<p>
Both types of strings support the <a class="el" href="class_i_d3___field.html#a3">GetNumTextItems</a>() method.
<p>
An ASCII string field supports the <a class="el" href="class_i_d3___field.html#a10">Get</a>(char*, size_t, index_t)),  <a class="el" href="class_i_d3___field.html#a8">Set</a>(const char*), <a class="el" href="class_i_d3___field.html#a13">Add</a>(const char*), and <a class="el" href="class_i_d3___field.html#a7">operator=</a>(const char *) methods.
<p>
A Unicode field also supports <a class="el" href="class_i_d3___field.html#a17">Get</a>(unicode_t*, size_t, index_t), <a class="el" href="class_i_d3___field.html#a15">Set</a>(const unicode_t*), <a class="el" href="class_i_d3___field.html#a20">Add</a>(const unicode_t*), and  <a class="el" href="class_i_d3___field.html#a14">operator=</a>(const unicode_t *). Without elaborating, the Unicode methods behave exactly the same as their ASCII counterparts, taking <code><a class="el" href="globals_8h.html#a39">unicode_t</a></code> pointers in place of <code>char</code> pointers.
<p>
All strings in id3lib are handled internally as Unicode. This means that when you set a field with an ASCII source type, it will be converted and stored internally as a Unicode string. id3lib will handle all necessary conversions when parsing, rendering, and retrieving. If you set a field as an ASCII string, then try to read the string into a <code><a class="el" href="globals_8h.html#a39">unicode_t</a></code> buffer, id3lib will automatically convert the string into Unicode so this will function as expected. The same holds true in reverse. Of course, when converting from Unicode to ASCII, you will experience problems when the Unicode string contains characters that don't map to ISO-8859-1.
<p>
A binary field supports the <a class="el" href="class_i_d3___field.html#a22">Get</a>(uchar*, size_t), <a class="el" href="class_i_d3___field.html#a21">Set</a>(const uchar*, size_t), <a class="el" href="class_i_d3___field.html#a24">FromFile</a>(const char*), and <a class="el" href="class_i_d3___field.html#a25">ToFile</a>(const char*) methods. The binary field holds miscellaneous data that can't easily be described any other way, such as a JPEG image.
<p>
As a general implementation note, you should be prepared to support all fields in an id3lib frame, even if all fields in the id3lib version of the frame aren't present in the id3v2 version. This is because of frames like the picture frame, which changed slightly from one version of the id3v2 standard to the next (the IMAGEFORMAT format in 2.0 changed to a MIMETYPE in 3.0). If you support all id3lib fields in a given frame, id3lib can generate the correct id3v2 frame for the id3v2 version you wish to support. Alternatively, just support the fields you know will be used in, say, 3.0 if you only plan to generate 3.0 tags.
<p>
<dl compact><dt><b>
Author: </b><dd>
Dirk Mahoney </dl><dl compact><dt><b>
Version: </b><dd>
</dl><dl compact><dt><b>
Id: </b><dd>
 field.cpp,v 1.43 2001/09/08 23:53:55 shadrack Exp </dl> <dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_i_d3___tag.html">ID3_Tag</a> , <a class="el" href="class_i_d3___frame.html">ID3_Frame</a> , <a class="el" href="globals_8h.html#a223">ID3_Err</a> </dl>
<p>

<p>
Definition at line <a class="el" href="field_8h-source.html#l00036">36</a> of file <a class="el" href="field_8h-source.html">field.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="b0" doxytag="ID3_Field::~ID3_Field"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual ID3_Field::~ID3_Field </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Definition at line <a class="el" href="field_8h-source.html#l00090">90</a> of file <a class="el" href="field_8h-source.html">field.h</a>.    </td>
  </tr>
</table>
<a name="b1" doxytag="ID3_Field::ID3_Field"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> ID3_Field::ID3_Field </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Definition at line <a class="el" href="field_8h-source.html#l00093">93</a> of file <a class="el" href="field_8h-source.html">field.h</a>.    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a20" doxytag="ID3_Field::Add"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Add </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>data</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a25">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a13" doxytag="ID3_Field::Add"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Add </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>data</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a16">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a2" doxytag="ID3_Field::BinSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::BinSize </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a3">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a0" doxytag="ID3_Field::Clear"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void ID3_Field::Clear </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a1">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a24" doxytag="ID3_Field::FromFile"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void ID3_Field::FromFile </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a32">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a22" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="globals_8h.html#a33">uchar</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buffer</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>max_bytes</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a30">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a17" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buffer</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>maxLength</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>index_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>itemNum</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a24">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a16" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buffer</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>maxLength</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a23">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a10" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>maxLen</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>index_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>index</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a13">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a9" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buffer</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>maxLength</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a12">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a6" doxytag="ID3_Field::Get"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> <a class="el" href="sized__types_8h.html#a4">uint32</a> ID3_Field::Get </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the value of the integer field.
<p>
<div class="fragment"><pre>   <a class="code" href="sized__types_8h.html#a4">uint32</a> picType = myFrame.GetField(ID3FN_PICTURETYPE)-&gt;Get();
</pre></div>
<p>
<dl compact><dt><b>
Returns: </b><dd>
The value of the integer field </dl>
<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a7">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="misc__support_8cpp-source.html#l00044">ID3_GetString</a>(), and <a class="el" href="misc__support_8cpp-source.html#l00852">ID3_GetSyncLyricsInfo</a>().    </td>
  </tr>
</table>
<a name="a31" doxytag="ID3_Field::GetEncoding"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual <a class="el" href="globals_8h.html#a214">ID3_TextEnc</a> ID3_Field::GetEncoding </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a41">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="misc__support_8cpp-source.html#l00044">ID3_GetString</a>().    </td>
  </tr>
</table>
<a name="a28" doxytag="ID3_Field::GetID"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual <a class="el" href="globals_8h.html#a218">ID3_FieldID</a> ID3_Field::GetID </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a38">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="frame__impl_8cpp-source.html#l00097">ID3_FrameImpl::_InitFields</a>().    </td>
  </tr>
</table>
<a name="a3" doxytag="ID3_Field::GetNumTextItems"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::GetNumTextItems </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a4">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a23" doxytag="ID3_Field::GetRawBinary"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const <a class="el" href="globals_8h.html#a33">uchar</a>* ID3_Field::GetRawBinary </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a31">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="misc__support_8cpp-source.html#l00893">ID3_GetSyncLyrics</a>().    </td>
  </tr>
</table>
<a name="a11" doxytag="ID3_Field::GetRawText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const char* ID3_Field::GetRawText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a14">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="tag__find_8cpp-source.html#l00109">ID3_TagImpl::Find</a>().    </td>
  </tr>
</table>
<a name="a12" doxytag="ID3_Field::GetRawTextItem"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const char* ID3_Field::GetRawTextItem </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">index_t&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>index</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a15">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a18" doxytag="ID3_Field::GetRawUnicodeText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const <a class="el" href="globals_8h.html#a39">unicode_t</a>* ID3_Field::GetRawUnicodeText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a26">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="tag__find_8cpp-source.html#l00164">ID3_TagImpl::Find</a>().    </td>
  </tr>
</table>
<a name="a19" doxytag="ID3_Field::GetRawUnicodeTextItem"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const <a class="el" href="globals_8h.html#a39">unicode_t</a>* ID3_Field::GetRawUnicodeTextItem </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">index_t&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>index</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a27">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a29" doxytag="ID3_Field::GetType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual <a class="el" href="globals_8h.html#a222">ID3_FieldType</a> ID3_Field::GetType </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a39">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a35" doxytag="ID3_Field::HasChanged"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool ID3_Field::HasChanged </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a45">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a27" doxytag="ID3_Field::InScope"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool ID3_Field::InScope </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="globals_8h.html#a216">ID3_V2Spec</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>spec</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a37">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a32" doxytag="ID3_Field::IsEncodable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool ID3_Field::IsEncodable </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a42">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a26" doxytag="ID3_Field::operator="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual ID3_Field&amp; ID3_Field::operator= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const ID3_Field &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>rhs</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a36">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a14" doxytag="ID3_Field::operator="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> ID3_Field &amp; ID3_Field::operator= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>s</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Shortcut for the Set operator. Performs similarly as <a class="el" href="class_i_d3___field.html#a7">operator=</a>(const char *), taking a unicode_t string as a parameter rather than an ascii string.
<p>
<dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_i_d3___field.html#a15">Set</a>(const unicode_t*) </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>string</em>&nbsp;</td><td>
The string to assign to the field </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a21">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a7" doxytag="ID3_Field::operator="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> ID3_Field &amp; ID3_Field::operator= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>s</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Shortcut for the Set operator.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>data</em>&nbsp;</td><td>
The string to assign to this field </td></tr>
</table>
</dl><dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_i_d3___field.html#a8">Set</a>(const char*) </dl>
<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a10">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a4" doxytag="ID3_Field::operator="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> ID3_Field &amp; ID3_Field::operator= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="sized__types_8h.html#a4">uint32</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>val</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A shortcut for the Set method.
<p>
<div class="fragment"><pre>   myFrame.GetField(ID3FN_PICTURETYPE)-&gt;= 0x0B;
</pre></div><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>val</em>&nbsp;</td><td>
The data to assign to this field </td></tr>
</table>
</dl><dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_i_d3___field.html#a5">Set</a>(uint32) </dl>
<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a5">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a34" doxytag="ID3_Field::Parse"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool ID3_Field::Parse </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="class_i_d3___reader.html">ID3_Reader</a> &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>reader</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a44">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a33" doxytag="ID3_Field::Render"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void ID3_Field::Render </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="class_i_d3___writer.html">ID3_Writer</a> &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>writer</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a43">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a21" doxytag="ID3_Field::Set"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Set </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="globals_8h.html#a33">uchar</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>data</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>len</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a28">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a15" doxytag="ID3_Field::Set"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Set </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="globals_8h.html#a39">unicode_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>data</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a22">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a8" doxytag="ID3_Field::Set"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual size_t ID3_Field::Set </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>data</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a11">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<a name="a5" doxytag="ID3_Field::Set"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void ID3_Field::Set </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="sized__types_8h.html#a4">uint32</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>val</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a6">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="misc__support_8cpp-source.html#l00178">ID3_AddAlbum</a>(), <a class="el" href="misc__support_8cpp-source.html#l00097">ID3_AddArtist</a>(), <a class="el" href="misc__support_8cpp-source.html#l00379">ID3_AddComment</a>(), <a class="el" href="misc__support_8cpp-source.html#l00606">ID3_AddGenre</a>(), <a class="el" href="misc__support_8cpp-source.html#l00741">ID3_AddLyricist</a>(), <a class="el" href="misc__support_8cpp-source.html#l00679">ID3_AddLyrics</a>(), <a class="el" href="misc__support_8cpp-source.html#l00805">ID3_AddSyncLyrics</a>(), <a class="el" href="misc__support_8cpp-source.html#l00237">ID3_AddTitle</a>(), <a class="el" href="misc__support_8cpp-source.html#l00503">ID3_AddTrack</a>(), and <a class="el" href="misc__support_8cpp-source.html#l00296">ID3_AddYear</a>().    </td>
  </tr>
</table>
<a name="a30" doxytag="ID3_Field::SetEncoding"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool ID3_Field::SetEncoding </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="globals_8h.html#a214">ID3_TextEnc</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>enc</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a40">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="misc__support_8cpp-source.html#l00044">ID3_GetString</a>().    </td>
  </tr>
</table>
<a name="a1" doxytag="ID3_Field::Size"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> size_t ID3_Field::Size </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the size of a field.
<p>
The value returned is dependent on the type of the field. For ASCII strings, this returns the number of characters in the field, not including any NULL-terminator. The same holds true for Unicode---it returns the number of characters in the field, not bytes, and this does not include the Unicode BOM, which isn't put in a Unicode string obtained by the <a class="el" href="class_i_d3___field.html#a17">Get</a>(unicode_t*, size_t, index_t) method anyway. For binary and integer fields, this returns the number of bytes in the field.
<p>
<div class="fragment"><pre>   size_t howBig = myFrame.GetField(ID3FN_DATA)-&gt;Size();
</pre></div>
<p>
<dl compact><dt><b>
Returns: </b><dd>
The size of the field, either in bytes (for binary or integer fields) or characters (for strings). </dl>
<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a2">ID3_FieldImpl</a>.
<p>
Referenced by <a class="el" href="tag__find_8cpp-source.html#l00109">ID3_TagImpl::Find</a>(), <a class="el" href="misc__support_8cpp-source.html#l00044">ID3_GetString</a>(), <a class="el" href="misc__support_8cpp-source.html#l00893">ID3_GetSyncLyrics</a>(), and <a class="el" href="misc__support_8cpp-source.html#l00852">ID3_GetSyncLyricsInfo</a>().    </td>
  </tr>
</table>
<a name="a25" doxytag="ID3_Field::ToFile"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void ID3_Field::ToFile </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Reimplemented in <a class="el" href="class_i_d3___field_impl.html#a33">ID3_FieldImpl</a>.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="field_8cpp-source.html">field.cpp</a><li>include/id3/<a class="el" href="field_8h-source.html">field.h</a><li>src/<a class="el" href="field__integer_8cpp-source.html">field_integer.cpp</a><li>src/<a class="el" href="field__string__ascii_8cpp-source.html">field_string_ascii.cpp</a><li>src/<a class="el" href="field__string__unicode_8cpp-source.html">field_string_unicode.cpp</a></ul>
<hr><address><small>Generated on Thu Jan 3 07:35:56 2002 for id3lib by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.gif" alt="doxygen" align="middle" border=0 
width=110 height=53></a>1.2.12 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2001</small></address>
</body>
</html>