<!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/sized_types.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/sized_types.h</h1><a href="sized__types_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: sized_types.h,v 1.6 2000/10/23 04:32:33 eldamitri 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 00034 <font class="preprocessor">#ifndef _SIZED_TYPES_H_</font> 00035 <font class="preprocessor"></font><font class="preprocessor">#define _SIZED_TYPES_H_ </font> 00036 <font class="preprocessor"></font> 00037 <font class="preprocessor">#include <limits.h></font> 00038 00039 <font class="comment">/* define our datatypes */</font> 00040 00041 <font class="comment">/* Define 8-bit types */</font> 00042 <font class="preprocessor">#if UCHAR_MAX == 0xff</font> 00043 <font class="preprocessor"></font> <a name="l00044"></a><a class="code" href="sized__types_8h.html#a0">00044</a> <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">char</font> <a class="code" href="sized__types_8h.html#a0">uint8</a>; <a name="l00045"></a><a class="code" href="sized__types_8h.html#a1">00045</a> <font class="keyword">typedef</font> <font class="keywordtype">signed</font> <font class="keywordtype">char</font> <a class="code" href="sized__types_8h.html#a1">int8</a>; 00046 00047 <font class="preprocessor">#else</font> 00048 <font class="preprocessor"></font><font class="preprocessor">#error This machine has no 8-bit type</font> 00049 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* UCHAR_MAX == 0xff */</font> 00050 00051 <font class="comment">/* Define 16-bit types */</font> 00052 <font class="preprocessor">#if UINT_MAX == 0xffff</font> 00053 <font class="preprocessor"></font> <a name="l00054"></a><a class="code" href="sized__types_8h.html#a2">00054</a> <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="sized__types_8h.html#a2">uint16</a>; <a name="l00055"></a><a class="code" href="sized__types_8h.html#a3">00055</a> <font class="keyword">typedef</font> <font class="keywordtype">int</font> <a class="code" href="sized__types_8h.html#a3">int16</a>; 00056 00057 <font class="preprocessor">#elif USHRT_MAX == 0xffff</font> 00058 <font class="preprocessor"></font> 00059 <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> <a class="code" href="sized__types_8h.html#a2">uint16</a>; 00060 <font class="keyword">typedef</font> <font class="keywordtype">short</font> <a class="code" href="sized__types_8h.html#a3">int16</a>; 00061 00062 <font class="preprocessor">#else</font> 00063 <font class="preprocessor"></font><font class="preprocessor">#error This machine has no 16-bit type</font> 00064 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* UINT_MAX == 0xffff */</font> 00065 00066 <font class="comment">/* Define 32-bit types */</font> 00067 <font class="preprocessor">#if UINT_MAX == 0xfffffffful</font> 00068 <font class="preprocessor"></font> <a name="l00069"></a><a class="code" href="sized__types_8h.html#a4">00069</a> <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="sized__types_8h.html#a4">uint32</a>; <a name="l00070"></a><a class="code" href="sized__types_8h.html#a5">00070</a> <font class="keyword">typedef</font> <font class="keywordtype">int</font> <a class="code" href="sized__types_8h.html#a5">int32</a>; 00071 00072 <font class="preprocessor">#elif ULONG_MAX == 0xfffffffful</font> 00073 <font class="preprocessor"></font> 00074 <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="sized__types_8h.html#a4">uint32</a>; 00075 <font class="keyword">typedef</font> <font class="keywordtype">long</font> <a class="code" href="sized__types_8h.html#a5">int32</a>; 00076 00077 <font class="preprocessor">#elif USHRT_MAX == 0xfffffffful</font> 00078 <font class="preprocessor"></font> 00079 <font class="keyword">typedef</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> <a class="code" href="sized__types_8h.html#a4">uint32</a>; 00080 <font class="keyword">typedef</font> <font class="keywordtype">short</font> <a class="code" href="sized__types_8h.html#a5">int32</a>; 00081 00082 <font class="preprocessor">#else</font> 00083 <font class="preprocessor"></font><font class="preprocessor">#error This machine has no 32-bit type</font> 00084 <font class="preprocessor"></font><font class="preprocessor">#endif </font><font class="comment">/* UINT_MAX == 0xfffffffful */</font> 00085 00086 <font class="preprocessor">#endif </font><font class="comment">/* _SIZED_TYPES_H_ */</font> 00087 </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>