<!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>include/id3/globals.h Source File</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> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="namespacemembers.html">Namespace Members</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center> <hr><h1>include/id3/globals.h</h1><a href="globals_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">// -*- C++ -*-</font> 00002 <font class="comment">/* $Id: globals.h,v 1.44 2001/08/07 11:58:23 shadrack Exp $</font> 00003 <font class="comment"></font> 00004 <font class="comment"> * id3lib: a C++ library for creating and manipulating id3v1/v2 tags Copyright</font> 00005 <font class="comment"> * 1999, 2000 Scott Thomas Haug</font> 00006 <font class="comment"></font> 00007 <font class="comment"> * This library is free software; you can redistribute it and/or modify it</font> 00008 <font class="comment"> * under the terms of the GNU Library General Public License as published by</font> 00009 <font class="comment"> * the Free Software Foundation; either version 2 of the License, or (at your</font> 00010 <font class="comment"> * option) any later version.</font> 00011 <font class="comment"> * </font> 00012 <font class="comment"> * This library is distributed in the hope that it will be useful, but WITHOUT</font> 00013 <font class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</font> 00014 <font class="comment"> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public</font> 00015 <font class="comment"> * License for more details.</font> 00016 <font class="comment"> * </font> 00017 <font class="comment"> * You should have received a copy of the GNU Library General Public License</font> 00018 <font class="comment"> * along with this library; if not, write to the Free Software Foundation,</font> 00019 <font class="comment"> * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.</font> 00020 <font class="comment"></font> 00021 <font class="comment"> * The id3lib authors encourage improvements and optimisations to be sent to</font> 00022 <font class="comment"> * the id3lib coordinator. Please see the README file for details on where to</font> 00023 <font class="comment"> * send such submissions. See the AUTHORS file for a list of people who have</font> 00024 <font class="comment"> * contributed to id3lib. See the ChangeLog file for a list of changes to</font> 00025 <font class="comment"> * id3lib. These files are distributed with id3lib at</font> 00026 <font class="comment"> * http://download.sourceforge.net/id3lib/ </font> 00027 <font class="comment"> */</font> 00028 00033 <font class="preprocessor">#ifndef _ID3LIB_GLOBALS_H_</font> 00034 <font class="preprocessor"></font><font class="preprocessor">#define _ID3LIB_GLOBALS_H_</font> 00035 <font class="preprocessor"></font> 00036 <font class="preprocessor">#include <stdlib.h></font> 00037 <font class="preprocessor">#include <<a class="code" href="sized__types_8h.html">id3/sized_types.h</a>></font> 00038 00039 <font class="comment">/* id3lib version.</font> 00040 <font class="comment"> * we prefix variable declarations so they can</font> 00041 <font class="comment"> * properly get exported in windows dlls.</font> 00042 <font class="comment"> * (borrowed from glib.h http://www.gtk.org)</font> 00043 <font class="comment"> */</font> 00044 <font class="preprocessor">#ifdef WIN32</font> 00045 <font class="preprocessor"></font><font class="preprocessor"># ifdef ID3LIB_COMPILATION</font> 00046 <font class="preprocessor"></font><font class="preprocessor"># define ID3_C_EXPORT extern _declspec(dllexport)</font> 00047 <font class="preprocessor"></font><font class="preprocessor"># define ID3_CPP_EXPORT __declspec(dllexport)</font> 00048 <font class="preprocessor"></font><font class="preprocessor"># else </font><font class="comment">/* !ID3LIB_COMPILATION */</font> 00049 <font class="preprocessor"># define ID3_C_EXPORT extern _declspec(dllimport)</font> 00050 <font class="preprocessor"></font><font class="preprocessor"># define ID3_CPP_EXPORT __declspec(dllimport)</font> 00051 <font class="preprocessor"></font><font class="preprocessor"># endif </font><font class="comment">/* !ID3LIB_COMPILATION */</font> 00052 <font class="preprocessor">#else </font><font class="comment">/* !WIN32 */</font> <a name="l00053"></a><a class="code" href="globals_8h.html#a0">00053</a> <font class="preprocessor"># define ID3_C_EXPORT</font> <a name="l00054"></a><a class="code" href="globals_8h.html#a1">00054</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_CPP_EXPORT</font> 00055 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* !WIN32 */</font> <a name="l00056"></a><a class="code" href="globals_8h.html#a2">00056</a> <font class="preprocessor">#define ID3_C_VAR extern</font> 00057 <font class="preprocessor"></font> 00058 <font class="preprocessor">#ifndef __cplusplus</font> 00059 <font class="preprocessor"></font> 00060 <font class="keyword">typedef</font> <font class="keywordtype">int</font> <font class="keywordtype">bool</font>; 00061 <font class="preprocessor"># define false (0)</font> 00062 <font class="preprocessor"></font><font class="preprocessor"># define true (!false)</font> 00063 <font class="preprocessor"></font> 00064 <font class="preprocessor">#endif </font><font class="comment">/* __cplusplus */</font> 00065 <a name="l00066"></a><a class="code" href="globals_8h.html#a25">00066</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">char</font> * <font class="keyword">const</font> <a class="code" href="globals_8h.html#a25">ID3LIB_NAME</a>; <a name="l00067"></a><a class="code" href="globals_8h.html#a26">00067</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">char</font> * <font class="keyword">const</font> <a class="code" href="globals_8h.html#a26">ID3LIB_RELEASE</a>; <a name="l00068"></a><a class="code" href="globals_8h.html#a27">00068</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">char</font> * <font class="keyword">const</font> <a class="code" href="globals_8h.html#a27">ID3LIB_FULL_NAME</a>; <a name="l00069"></a><a class="code" href="globals_8h.html#a28">00069</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a28">ID3LIB_MAJOR_VERSION</a>; <a name="l00070"></a><a class="code" href="globals_8h.html#a29">00070</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a29">ID3LIB_MINOR_VERSION</a>; <a name="l00071"></a><a class="code" href="globals_8h.html#a30">00071</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a30">ID3LIB_PATCH_VERSION</a>; <a name="l00072"></a><a class="code" href="globals_8h.html#a31">00072</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a31">ID3LIB_INTERFACE_AGE</a>; <a name="l00073"></a><a class="code" href="globals_8h.html#a32">00073</a> <a class="code" href="globals_8h.html#a2">ID3_C_VAR</a> <font class="keyword">const</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a32">ID3LIB_BINARY_AGE</a>; 00074 <a name="l00075"></a><a class="code" href="globals_8h.html#a3">00075</a> <font class="preprocessor">#define ID3_TAGID "ID3"</font> <a name="l00076"></a><a class="code" href="globals_8h.html#a4">00076</a> <font class="preprocessor"></font><font class="preprocessor">#define ID3_TAGIDSIZE (3)</font> <a name="l00077"></a><a class="code" href="globals_8h.html#a5">00077</a> <font class="preprocessor"></font><font class="preprocessor">#define ID3_TAGHEADERSIZE (10)</font> 00078 <font class="preprocessor"></font> <a name="l00084"></a><a class="code" href="globals_8h.html#a6">00084</a> <font class="preprocessor">#define STR_V1_COMMENT_DESC "ID3v1 Comment"</font> 00085 <font class="preprocessor"></font> 00086 <a name="l00087"></a><a class="code" href="globals_8h.html#a33">00087</a> <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">char</font> <a class="code" href="globals_8h.html#a33">uchar</a>; <a name="l00088"></a><a class="code" href="globals_8h.html#a34">00088</a> <font class="keyword">typedef</font> <font class="keywordtype">short</font> <font class="keywordtype">signed</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a34">ssint</a>; <a name="l00089"></a><a class="code" href="globals_8h.html#a35">00089</a> <font class="keyword">typedef</font> <font class="keywordtype">short</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a35">suint</a>; <a name="l00090"></a><a class="code" href="globals_8h.html#a36">00090</a> <font class="keyword">typedef</font> <font class="keywordtype">long</font> <font class="keywordtype">signed</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a36">lsint</a>; <a name="l00091"></a><a class="code" href="globals_8h.html#a37">00091</a> <font class="keyword">typedef</font> <font class="keywordtype">long</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="globals_8h.html#a37">luint</a>; <a name="l00092"></a><a class="code" href="globals_8h.html#a38">00092</a> <font class="keyword">typedef</font> <font class="keywordtype">long</font> <font class="keywordtype">double</font> <a class="code" href="globals_8h.html#a38">ldoub</a>; 00093 <a name="l00094"></a><a class="code" href="globals_8h.html#a39">00094</a> <font class="keyword">typedef</font> <a class="code" href="sized__types_8h.html#a2">uint16</a> <a class="code" href="globals_8h.html#a39">unicode_t</a>; <a name="l00095"></a><a class="code" href="globals_8h.html#a40">00095</a> <font class="keyword">typedef</font> <a class="code" href="sized__types_8h.html#a2">uint16</a> <a class="code" href="globals_8h.html#a40">flags_t</a>; 00096 <font class="comment">/* this needs to be done for compatibility with Sun Solaris */</font> 00097 <font class="preprocessor">#if !defined index_t</font> <a name="l00098"></a><a class="code" href="globals_8h.html#a7">00098</a> <font class="preprocessor"></font><font class="preprocessor"># define index_t size_t</font> 00099 <font class="preprocessor"></font><font class="preprocessor">#endif</font> 00100 <font class="preprocessor"></font> <a name="l00101"></a><a class="code" href="globals_8h.html#a8">00101</a> <font class="preprocessor">#define NULL_UNICODE ((unicode_t) '\0')</font> 00102 <font class="preprocessor"></font> 00103 <font class="comment">/* These macros are used to make the C and C++ declarations for enums and</font> 00104 <font class="comment"> * structs have the same syntax. Basically, it allows C users to refer to an</font> 00105 <font class="comment"> * enum or a struct without prepending enum/struct.</font> 00106 <font class="comment"> */</font> 00107 <font class="preprocessor">#ifdef __cplusplus</font> <a name="l00108"></a><a class="code" href="globals_8h.html#a9">00108</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_ENUM(E) enum E</font> <a name="l00109"></a><a class="code" href="globals_8h.html#a10">00109</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_STRUCT(S) struct S</font> 00110 <font class="preprocessor"></font><font class="preprocessor">#else</font> 00111 <font class="preprocessor"></font><font class="preprocessor"># define ID3_ENUM(E) typedef enum _ ## E E; enum _ ## E</font> 00112 <font class="preprocessor"></font><font class="preprocessor"># define ID3_STRUCT(S) typedef struct _ ## S S; struct _ ## S</font> 00113 <font class="preprocessor"></font><font class="preprocessor">#endif</font> 00114 <font class="preprocessor"></font> <a name="l00118"></a><a class="code" href="globals_8h.html#a214">00118</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a214">ID3_TextEnc</a>) 00119 { 00120 <a class="code" href="globals_8h.html#a214a41">ID3TE_NONE</a> = -1, 00121 <a class="code" href="globals_8h.html#a214a42">ID3TE_ISO8859_1</a>, 00122 <a class="code" href="globals_8h.html#a214a43">ID3TE_UTF16</a>, 00123 <a class="code" href="globals_8h.html#a214a44">ID3TE_UTF16BE</a>, 00124 <a class="code" href="globals_8h.html#a214a45">ID3TE_UTF8</a>, 00125 <a class="code" href="globals_8h.html#a214a46">ID3TE_NUMENCODINGS</a>, 00126 <a class="code" href="globals_8h.html#a214a47">ID3TE_ASCII</a> = <a class="code" href="globals_8h.html#a214a42">ID3TE_ISO8859_1</a>, 00127 <a class="code" href="globals_8h.html#a214a48">ID3TE_UNICODE</a> = <a class="code" href="globals_8h.html#a214a43">ID3TE_UTF16</a> 00128 }; 00129 <a name="l00132"></a><a class="code" href="globals_8h.html#a215">00132</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a215">ID3_V1Spec</a>) 00133 { 00134 <a class="code" href="globals_8h.html#a215a49">ID3V1_0</a> = 0, 00135 <a class="code" href="globals_8h.html#a215a50">ID3V1_1</a>, 00136 <a class="code" href="globals_8h.html#a215a51">ID3V1_NUMSPECS</a> 00137 }; 00138 <a name="l00139"></a><a class="code" href="globals_8h.html#a216">00139</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a216">ID3_V2Spec</a>) 00140 { 00141 <a class="code" href="globals_8h.html#a216a52">ID3V2_UNKNOWN</a> = -1, 00142 <a class="code" href="globals_8h.html#a216a53">ID3V2_2_0</a> = 0, 00143 <a class="code" href="globals_8h.html#a216a54">ID3V2_2_1</a>, 00144 <a class="code" href="globals_8h.html#a216a55">ID3V2_3_0</a>, 00145 <a class="code" href="globals_8h.html#a216a56">ID3V2_4_0</a>, 00146 <a class="code" href="globals_8h.html#a216a57">ID3V2_EARLIEST</a> = <a class="code" href="globals_8h.html#a216a53">ID3V2_2_0</a>, 00147 <a class="code" href="globals_8h.html#a216a58">ID3V2_LATEST</a> = <a class="code" href="globals_8h.html#a216a55">ID3V2_3_0</a> 00148 }; 00149 <a name="l00152"></a><a class="code" href="globals_8h.html#a217">00152</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a217">ID3_TagType</a>) 00153 { 00154 <a class="code" href="globals_8h.html#a217a59">ID3TT_NONE</a> = 0, 00155 <a class="code" href="globals_8h.html#a217a60">ID3TT_ID3V1</a> = 1 << 0, 00156 <a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a> = 1 << 1, 00157 <a class="code" href="globals_8h.html#a217a62">ID3TT_LYRICS3</a> = 1 << 2, 00158 <a class="code" href="globals_8h.html#a217a63">ID3TT_LYRICS3V2</a> = 1 << 3, 00159 <a class="code" href="globals_8h.html#a217a64">ID3TT_MUSICMATCH</a> = 1 << 4, 00161 <a class="code" href="globals_8h.html#a217a65">ID3TT_LYRICS</a> = <a class="code" href="globals_8h.html#a217a62">ID3TT_LYRICS3</a>, 00163 <a class="code" href="globals_8h.html#a217a66">ID3TT_ID3</a> = <a class="code" href="globals_8h.html#a217a60">ID3TT_ID3V1</a> | <a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a>, 00165 <a class="code" href="globals_8h.html#a217a67">ID3TT_ALL</a> = ~<a class="code" href="globals_8h.html#a217a59">ID3TT_NONE</a>, 00167 <a class="code" href="globals_8h.html#a217a68">ID3TT_PREPENDED</a> = <a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a>, 00169 <a class="code" href="globals_8h.html#a217a69">ID3TT_APPENDED</a> = <a class="code" href="globals_8h.html#a217a67">ID3TT_ALL</a> & ~<a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a> 00170 }; 00171 <a name="l00175"></a><a class="code" href="globals_8h.html#a218">00175</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a218">ID3_FieldID</a>) 00176 { 00177 <a class="code" href="globals_8h.html#a218a70">ID3FN_NOFIELD</a> = 0, 00178 <a class="code" href="globals_8h.html#a218a71">ID3FN_TEXTENC</a>, 00179 <a class="code" href="globals_8h.html#a218a72">ID3FN_TEXT</a>, 00180 <a class="code" href="globals_8h.html#a218a73">ID3FN_URL</a>, 00181 <a class="code" href="globals_8h.html#a218a74">ID3FN_DATA</a>, 00182 <a class="code" href="globals_8h.html#a218a75">ID3FN_DESCRIPTION</a>, 00183 <a class="code" href="globals_8h.html#a218a76">ID3FN_OWNER</a>, 00184 <a class="code" href="globals_8h.html#a218a77">ID3FN_EMAIL</a>, 00185 <a class="code" href="globals_8h.html#a218a78">ID3FN_RATING</a>, 00186 <a class="code" href="globals_8h.html#a218a79">ID3FN_FILENAME</a>, 00187 <a class="code" href="globals_8h.html#a218a80">ID3FN_LANGUAGE</a>, 00188 <a class="code" href="globals_8h.html#a218a81">ID3FN_PICTURETYPE</a>, 00189 <a class="code" href="globals_8h.html#a218a82">ID3FN_IMAGEFORMAT</a>, 00190 <a class="code" href="globals_8h.html#a218a83">ID3FN_MIMETYPE</a>, 00191 <a class="code" href="globals_8h.html#a218a84">ID3FN_COUNTER</a>, 00192 <a class="code" href="globals_8h.html#a218a85">ID3FN_ID</a>, 00193 <a class="code" href="globals_8h.html#a218a86">ID3FN_VOLUMEADJ</a>, 00194 <a class="code" href="globals_8h.html#a218a87">ID3FN_NUMBITS</a>, 00195 <a class="code" href="globals_8h.html#a218a88">ID3FN_VOLCHGRIGHT</a>, 00196 <a class="code" href="globals_8h.html#a218a89">ID3FN_VOLCHGLEFT</a>, 00197 <a class="code" href="globals_8h.html#a218a90">ID3FN_PEAKVOLRIGHT</a>, 00198 <a class="code" href="globals_8h.html#a218a91">ID3FN_PEAKVOLLEFT</a>, 00199 <a class="code" href="globals_8h.html#a218a92">ID3FN_TIMESTAMPFORMAT</a>, 00200 <a class="code" href="globals_8h.html#a218a93">ID3FN_CONTENTTYPE</a>, 00201 <a class="code" href="globals_8h.html#a218a94">ID3FN_LASTFIELDID</a> 00202 }; 00203 <a name="l00207"></a><a class="code" href="globals_8h.html#a219">00207</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a219">ID3_FrameID</a>) 00208 { 00209 <font class="comment">/* ???? */</font> <a class="code" href="globals_8h.html#a219a95">ID3FID_NOFRAME</a> = 0, 00210 <font class="comment">/* AENC */</font> <a class="code" href="globals_8h.html#a219a96">ID3FID_AUDIOCRYPTO</a>, 00211 <font class="comment">/* APIC */</font> <a class="code" href="globals_8h.html#a219a97">ID3FID_PICTURE</a>, 00212 <font class="comment">/* COMM */</font> <a class="code" href="globals_8h.html#a219a98">ID3FID_COMMENT</a>, 00213 <font class="comment">/* COMR */</font> <a class="code" href="globals_8h.html#a219a99">ID3FID_COMMERCIAL</a>, 00214 <font class="comment">/* ENCR */</font> <a class="code" href="globals_8h.html#a219a100">ID3FID_CRYPTOREG</a>, 00215 <font class="comment">/* EQUA */</font> <a class="code" href="globals_8h.html#a219a101">ID3FID_EQUALIZATION</a>, 00216 <font class="comment">/* ETCO */</font> <a class="code" href="globals_8h.html#a219a102">ID3FID_EVENTTIMING</a>, 00217 <font class="comment">/* GEOB */</font> <a class="code" href="globals_8h.html#a219a103">ID3FID_GENERALOBJECT</a>, 00218 <font class="comment">/* GRID */</font> <a class="code" href="globals_8h.html#a219a104">ID3FID_GROUPINGREG</a>, 00219 <font class="comment">/* IPLS */</font> <a class="code" href="globals_8h.html#a219a105">ID3FID_INVOLVEDPEOPLE</a>, 00220 <font class="comment">/* LINK */</font> <a class="code" href="globals_8h.html#a219a106">ID3FID_LINKEDINFO</a>, 00221 <font class="comment">/* MCDI */</font> <a class="code" href="globals_8h.html#a219a107">ID3FID_CDID</a>, 00222 <font class="comment">/* MLLT */</font> <a class="code" href="globals_8h.html#a219a108">ID3FID_MPEGLOOKUP</a>, 00223 <font class="comment">/* OWNE */</font> <a class="code" href="globals_8h.html#a219a109">ID3FID_OWNERSHIP</a>, 00224 <font class="comment">/* PRIV */</font> <a class="code" href="globals_8h.html#a219a110">ID3FID_PRIVATE</a>, 00225 <font class="comment">/* PCNT */</font> <a class="code" href="globals_8h.html#a219a111">ID3FID_PLAYCOUNTER</a>, 00226 <font class="comment">/* POPM */</font> <a class="code" href="globals_8h.html#a219a112">ID3FID_POPULARIMETER</a>, 00227 <font class="comment">/* POSS */</font> <a class="code" href="globals_8h.html#a219a113">ID3FID_POSITIONSYNC</a>, 00228 <font class="comment">/* RBUF */</font> <a class="code" href="globals_8h.html#a219a114">ID3FID_BUFFERSIZE</a>, 00229 <font class="comment">/* RVAD */</font> <a class="code" href="globals_8h.html#a219a115">ID3FID_VOLUMEADJ</a>, 00230 <font class="comment">/* RVRB */</font> <a class="code" href="globals_8h.html#a219a116">ID3FID_REVERB</a>, 00231 <font class="comment">/* SYLT */</font> <a class="code" href="globals_8h.html#a219a117">ID3FID_SYNCEDLYRICS</a>, 00232 <font class="comment">/* SYTC */</font> <a class="code" href="globals_8h.html#a219a118">ID3FID_SYNCEDTEMPO</a>, 00233 <font class="comment">/* TALB */</font> <a class="code" href="globals_8h.html#a219a119">ID3FID_ALBUM</a>, 00234 <font class="comment">/* TBPM */</font> <a class="code" href="globals_8h.html#a219a120">ID3FID_BPM</a>, 00235 <font class="comment">/* TCOM */</font> <a class="code" href="globals_8h.html#a219a121">ID3FID_COMPOSER</a>, 00236 <font class="comment">/* TCON */</font> <a class="code" href="globals_8h.html#a219a122">ID3FID_CONTENTTYPE</a>, 00237 <font class="comment">/* TCOP */</font> <a class="code" href="globals_8h.html#a219a123">ID3FID_COPYRIGHT</a>, 00238 <font class="comment">/* TDAT */</font> <a class="code" href="globals_8h.html#a219a124">ID3FID_DATE</a>, 00239 <font class="comment">/* TDLY */</font> <a class="code" href="globals_8h.html#a219a125">ID3FID_PLAYLISTDELAY</a>, 00240 <font class="comment">/* TENC */</font> <a class="code" href="globals_8h.html#a219a126">ID3FID_ENCODEDBY</a>, 00241 <font class="comment">/* TEXT */</font> <a class="code" href="globals_8h.html#a219a127">ID3FID_LYRICIST</a>, 00242 <font class="comment">/* TFLT */</font> <a class="code" href="globals_8h.html#a219a128">ID3FID_FILETYPE</a>, 00243 <font class="comment">/* TIME */</font> <a class="code" href="globals_8h.html#a219a129">ID3FID_TIME</a>, 00244 <font class="comment">/* TIT1 */</font> <a class="code" href="globals_8h.html#a219a130">ID3FID_CONTENTGROUP</a>, 00245 <font class="comment">/* TIT2 */</font> <a class="code" href="globals_8h.html#a219a131">ID3FID_TITLE</a>, 00246 <font class="comment">/* TIT3 */</font> <a class="code" href="globals_8h.html#a219a132">ID3FID_SUBTITLE</a>, 00247 <font class="comment">/* TKEY */</font> <a class="code" href="globals_8h.html#a219a133">ID3FID_INITIALKEY</a>, 00248 <font class="comment">/* TLAN */</font> <a class="code" href="globals_8h.html#a219a134">ID3FID_LANGUAGE</a>, 00249 <font class="comment">/* TLEN */</font> <a class="code" href="globals_8h.html#a219a135">ID3FID_SONGLEN</a>, 00250 <font class="comment">/* TMED */</font> <a class="code" href="globals_8h.html#a219a136">ID3FID_MEDIATYPE</a>, 00251 <font class="comment">/* TOAL */</font> <a class="code" href="globals_8h.html#a219a137">ID3FID_ORIGALBUM</a>, 00252 <font class="comment">/* TOFN */</font> <a class="code" href="globals_8h.html#a219a138">ID3FID_ORIGFILENAME</a>, 00253 <font class="comment">/* TOLY */</font> <a class="code" href="globals_8h.html#a219a139">ID3FID_ORIGLYRICIST</a>, 00254 <font class="comment">/* TOPE */</font> <a class="code" href="globals_8h.html#a219a140">ID3FID_ORIGARTIST</a>, 00255 <font class="comment">/* TORY */</font> <a class="code" href="globals_8h.html#a219a141">ID3FID_ORIGYEAR</a>, 00256 <font class="comment">/* TOWN */</font> <a class="code" href="globals_8h.html#a219a142">ID3FID_FILEOWNER</a>, 00257 <font class="comment">/* TPE1 */</font> <a class="code" href="globals_8h.html#a219a143">ID3FID_LEADARTIST</a>, 00258 <font class="comment">/* TPE2 */</font> <a class="code" href="globals_8h.html#a219a144">ID3FID_BAND</a>, 00259 <font class="comment">/* TPE3 */</font> <a class="code" href="globals_8h.html#a219a145">ID3FID_CONDUCTOR</a>, 00260 <font class="comment">/* TPE4 */</font> <a class="code" href="globals_8h.html#a219a146">ID3FID_MIXARTIST</a>, 00261 <font class="comment">/* TPOS */</font> <a class="code" href="globals_8h.html#a219a147">ID3FID_PARTINSET</a>, 00262 <font class="comment">/* TPUB */</font> <a class="code" href="globals_8h.html#a219a148">ID3FID_PUBLISHER</a>, 00263 <font class="comment">/* TRCK */</font> <a class="code" href="globals_8h.html#a219a149">ID3FID_TRACKNUM</a>, 00264 <font class="comment">/* TRDA */</font> <a class="code" href="globals_8h.html#a219a150">ID3FID_RECORDINGDATES</a>, 00265 <font class="comment">/* TRSN */</font> <a class="code" href="globals_8h.html#a219a151">ID3FID_NETRADIOSTATION</a>, 00266 <font class="comment">/* TRSO */</font> <a class="code" href="globals_8h.html#a219a152">ID3FID_NETRADIOOWNER</a>, 00267 <font class="comment">/* TSIZ */</font> <a class="code" href="globals_8h.html#a219a153">ID3FID_SIZE</a>, 00268 <font class="comment">/* TSRC */</font> <a class="code" href="globals_8h.html#a219a154">ID3FID_ISRC</a>, 00269 <font class="comment">/* TSSE */</font> <a class="code" href="globals_8h.html#a219a155">ID3FID_ENCODERSETTINGS</a>, 00270 <font class="comment">/* TXXX */</font> <a class="code" href="globals_8h.html#a219a156">ID3FID_USERTEXT</a>, 00271 <font class="comment">/* TYER */</font> <a class="code" href="globals_8h.html#a219a157">ID3FID_YEAR</a>, 00272 <font class="comment">/* UFID */</font> <a class="code" href="globals_8h.html#a219a158">ID3FID_UNIQUEFILEID</a>, 00273 <font class="comment">/* USER */</font> <a class="code" href="globals_8h.html#a219a159">ID3FID_TERMSOFUSE</a>, 00274 <font class="comment">/* USLT */</font> <a class="code" href="globals_8h.html#a219a160">ID3FID_UNSYNCEDLYRICS</a>, 00275 <font class="comment">/* WCOM */</font> <a class="code" href="globals_8h.html#a219a161">ID3FID_WWWCOMMERCIALINFO</a>, 00276 <font class="comment">/* WCOP */</font> <a class="code" href="globals_8h.html#a219a162">ID3FID_WWWCOPYRIGHT</a>, 00277 <font class="comment">/* WOAF */</font> <a class="code" href="globals_8h.html#a219a163">ID3FID_WWWAUDIOFILE</a>, 00278 <font class="comment">/* WOAR */</font> <a class="code" href="globals_8h.html#a219a164">ID3FID_WWWARTIST</a>, 00279 <font class="comment">/* WOAS */</font> <a class="code" href="globals_8h.html#a219a165">ID3FID_WWWAUDIOSOURCE</a>, 00280 <font class="comment">/* WORS */</font> <a class="code" href="globals_8h.html#a219a166">ID3FID_WWWRADIOPAGE</a>, 00281 <font class="comment">/* WPAY */</font> <a class="code" href="globals_8h.html#a219a167">ID3FID_WWWPAYMENT</a>, 00282 <font class="comment">/* WPUB */</font> <a class="code" href="globals_8h.html#a219a168">ID3FID_WWWPUBLISHER</a>, 00283 <font class="comment">/* WXXX */</font> <a class="code" href="globals_8h.html#a219a169">ID3FID_WWWUSER</a>, 00284 <font class="comment">/* */</font> <a class="code" href="globals_8h.html#a219a170">ID3FID_METACRYPTO</a>, 00285 <font class="comment">/* */</font> <a class="code" href="globals_8h.html#a219a171">ID3FID_METACOMPRESSION</a>, 00286 <font class="comment">/* >>>> */</font> <a class="code" href="globals_8h.html#a219a172">ID3FID_LASTFRAMEID</a> 00287 }; 00288 <a name="l00289"></a><a class="code" href="globals_8h.html#a220">00289</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a220">ID3_V1Lengths</a>) 00290 { 00291 <a class="code" href="globals_8h.html#a220a173">ID3_V1_LEN</a> = 128, 00292 <a class="code" href="globals_8h.html#a220a174">ID3_V1_LEN_ID</a> = 3, 00293 <a class="code" href="globals_8h.html#a220a175">ID3_V1_LEN_TITLE</a> = 30, 00294 <a class="code" href="globals_8h.html#a220a176">ID3_V1_LEN_ARTIST</a> = 30, 00295 <a class="code" href="globals_8h.html#a220a177">ID3_V1_LEN_ALBUM</a> = 30, 00296 <a class="code" href="globals_8h.html#a220a178">ID3_V1_LEN_YEAR</a> = 4, 00297 <a class="code" href="globals_8h.html#a220a179">ID3_V1_LEN_COMMENT</a> = 30, 00298 <a class="code" href="globals_8h.html#a220a180">ID3_V1_LEN_GENRE</a> = 1 00299 }; 00300 <a name="l00301"></a><a class="code" href="globals_8h.html#a221">00301</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a221">ID3_FieldFlags</a>) 00302 { 00303 <a class="code" href="globals_8h.html#a221a181">ID3FF_NONE</a> = 0, 00304 <a class="code" href="globals_8h.html#a221a182">ID3FF_CSTR</a> = 1 << 0, 00305 <a class="code" href="globals_8h.html#a221a183">ID3FF_LIST</a> = 1 << 1, 00306 <a class="code" href="globals_8h.html#a221a184">ID3FF_ENCODABLE</a> = 1 << 2, 00307 <a class="code" href="globals_8h.html#a221a185">ID3FF_TEXTLIST</a> = <a class="code" href="globals_8h.html#a221a182">ID3FF_CSTR</a> | <a class="code" href="globals_8h.html#a221a183">ID3FF_LIST</a> | <a class="code" href="globals_8h.html#a221a184">ID3FF_ENCODABLE</a> 00308 }; 00309 <a name="l00311"></a><a class="code" href="globals_8h.html#a222">00311</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a222">ID3_FieldType</a>) 00312 { 00313 <a class="code" href="globals_8h.html#a222a186">ID3FTY_NONE</a> = -1, 00314 <a class="code" href="globals_8h.html#a222a187">ID3FTY_INTEGER</a> = 0, 00315 <a class="code" href="globals_8h.html#a222a188">ID3FTY_BINARY</a>, 00316 <a class="code" href="globals_8h.html#a222a189">ID3FTY_TEXTSTRING</a>, 00317 <a class="code" href="globals_8h.html#a222a190">ID3FTY_NUMTYPES</a> 00318 }; 00319 <a name="l00323"></a><a class="code" href="globals_8h.html#a223">00323</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a223">ID3_Err</a>) 00324 { 00325 <a class="code" href="globals_8h.html#a223a191">ID3E_NoError</a> = 0, 00326 <a class="code" href="globals_8h.html#a223a192">ID3E_NoMemory</a>, 00327 <a class="code" href="globals_8h.html#a223a193">ID3E_NoData</a>, 00328 <a class="code" href="globals_8h.html#a223a194">ID3E_BadData</a>, 00329 <a class="code" href="globals_8h.html#a223a195">ID3E_NoBuffer</a>, 00330 <a class="code" href="globals_8h.html#a223a196">ID3E_SmallBuffer</a>, 00331 <a class="code" href="globals_8h.html#a223a197">ID3E_InvalidFrameID</a>, 00332 <a class="code" href="globals_8h.html#a223a198">ID3E_FieldNotFound</a>, 00333 <a class="code" href="globals_8h.html#a223a199">ID3E_UnknownFieldType</a>, 00334 <a class="code" href="globals_8h.html#a223a200">ID3E_TagAlreadyAttached</a>, 00335 <a class="code" href="globals_8h.html#a223a201">ID3E_InvalidTagVersion</a>, 00336 <a class="code" href="globals_8h.html#a223a202">ID3E_NoFile</a>, 00337 <a class="code" href="globals_8h.html#a223a203">ID3E_ReadOnly</a>, 00338 <a class="code" href="globals_8h.html#a223a204">ID3E_zlibError</a> 00339 }; 00340 <a name="l00341"></a><a class="code" href="globals_8h.html#a224">00341</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a224">ID3_ContentType</a>) 00342 { 00343 <a class="code" href="globals_8h.html#a224a205">ID3CT_OTHER</a> = 0, 00344 <a class="code" href="globals_8h.html#a224a206">ID3CT_LYRICS</a>, 00345 <a class="code" href="globals_8h.html#a224a207">ID3CT_TEXTTRANSCRIPTION</a>, 00346 <a class="code" href="globals_8h.html#a224a208">ID3CT_MOVEMENT</a>, 00347 <a class="code" href="globals_8h.html#a224a209">ID3CT_EVENTS</a>, 00348 <a class="code" href="globals_8h.html#a224a210">ID3CT_CHORD</a>, 00349 <a class="code" href="globals_8h.html#a224a211">ID3CT_TRIVIA</a> 00350 }; 00351 <a name="l00352"></a><a class="code" href="globals_8h.html#a225">00352</a> <a class="code" href="globals_8h.html#a9">ID3_ENUM</a>(<a class="code" href="globals_8h.html#a225">ID3_TimeStampFormat</a>) 00353 { 00354 <a class="code" href="globals_8h.html#a225a212">ID3TSF_FRAME</a> = 1, 00355 <a class="code" href="globals_8h.html#a225a213">ID3TSF_MS</a> 00356 }; 00357 <a name="l00358"></a><a class="code" href="globals_8h.html#a11">00358</a> <font class="preprocessor">#define MASK(bits) ((1 << (bits)) - 1)</font> <a name="l00359"></a><a class="code" href="globals_8h.html#a12">00359</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK1 MASK(1)</font> <a name="l00360"></a><a class="code" href="globals_8h.html#a13">00360</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK2 MASK(2)</font> <a name="l00361"></a><a class="code" href="globals_8h.html#a14">00361</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK3 MASK(3)</font> <a name="l00362"></a><a class="code" href="globals_8h.html#a15">00362</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK4 MASK(4)</font> <a name="l00363"></a><a class="code" href="globals_8h.html#a16">00363</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK5 MASK(5)</font> <a name="l00364"></a><a class="code" href="globals_8h.html#a17">00364</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK6 MASK(6)</font> <a name="l00365"></a><a class="code" href="globals_8h.html#a18">00365</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK7 MASK(7)</font> <a name="l00366"></a><a class="code" href="globals_8h.html#a19">00366</a> <font class="preprocessor"></font><font class="preprocessor">#define MASK8 MASK(8)</font> 00367 <font class="preprocessor"></font> 00368 <font class="comment">/*</font> 00369 <font class="comment"> * The following is borrowed from glib.h (http://www.gtk.org)</font> 00370 <font class="comment"> */</font> 00371 <font class="preprocessor">#ifdef WIN32</font> 00372 <font class="preprocessor"></font> 00373 <font class="comment">/* On native Win32, directory separator is the backslash, and search path</font> 00374 <font class="comment"> * separator is the semicolon.</font> 00375 <font class="comment"> */</font> 00376 <font class="preprocessor"># define ID3_DIR_SEPARATOR '\\'</font> 00377 <font class="preprocessor"></font><font class="preprocessor"># define ID3_DIR_SEPARATOR_S "\\"</font> 00378 <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR ';'</font> 00379 <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR_S ";"</font> 00380 <font class="preprocessor"></font> 00381 <font class="preprocessor">#else </font><font class="comment">/* !WIN32 */</font> 00382 00383 <font class="preprocessor"># ifndef _EMX_</font> 00384 <font class="preprocessor"></font><font class="comment">/* Unix */</font> 00385 <a name="l00386"></a><a class="code" href="globals_8h.html#a20">00386</a> <font class="preprocessor"># define ID3_DIR_SEPARATOR '/'</font> <a name="l00387"></a><a class="code" href="globals_8h.html#a21">00387</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_DIR_SEPARATOR_S "/"</font> <a name="l00388"></a><a class="code" href="globals_8h.html#a22">00388</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR ':'</font> <a name="l00389"></a><a class="code" href="globals_8h.html#a23">00389</a> <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR_S ":"</font> 00390 <font class="preprocessor"></font> 00391 <font class="preprocessor"># else</font> 00392 <font class="preprocessor"></font><font class="comment">/* EMX/OS2 */</font> 00393 00394 <font class="preprocessor"># define ID3_DIR_SEPARATOR '/'</font> 00395 <font class="preprocessor"></font><font class="preprocessor"># define ID3_DIR_SEPARATOR_S "/"</font> 00396 <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR ';'</font> 00397 <font class="preprocessor"></font><font class="preprocessor"># define ID3_SEARCHPATH_SEPARATOR_S ";"</font> 00398 <font class="preprocessor"></font> 00399 <font class="preprocessor"># endif</font> 00400 <font class="preprocessor"></font> 00401 <font class="preprocessor">#endif </font><font class="comment">/* !WIN32 */</font> 00402 00403 <font class="preprocessor">#ifndef NULL</font> <a name="l00404"></a><a class="code" href="globals_8h.html#a24">00404</a> <font class="preprocessor"></font><font class="preprocessor"># define NULL ((void*) 0)</font> 00405 <font class="preprocessor"></font><font class="preprocessor">#endif</font> 00406 <font class="preprocessor"></font> 00407 <font class="preprocessor">#endif </font><font class="comment">/* _ID3LIB_GLOBALS_H_ */</font> </pre></div><hr><address><small>Generated on Thu Jan 3 07:35:55 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>, © 1997-2001</small></address> </body> </html>