Sophie

Sophie

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

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>include/id3/tag.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> &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>include/id3/tag.h</h1><a href="tag_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: tag.h,v 1.53 2001/07/30 18:22:53 abscess Exp $</font>
00003 
00004 <font class="comment">// id3lib: a software library for creating and manipulating id3v1/v2 tags</font>
00005 <font class="comment">// Copyright 1999, 2000  Scott Thomas Haug</font>
00006 
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 
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 
00028 <font class="preprocessor">#ifndef _ID3LIB_TAG_H_</font>
00029 <font class="preprocessor"></font><font class="preprocessor">#define _ID3LIB_TAG_H_</font>
00030 <font class="preprocessor"></font>
00031 <font class="preprocessor">#include &lt;<a class="code" href="frame_8h.html">id3/frame.h</a>&gt;</font>
00032 <font class="preprocessor">#include &lt;<a class="code" href="field_8h.html">id3/field.h</a>&gt;</font>
00033 
00034 <font class="keyword">class </font><a class="code" href="class_i_d3___reader.html">ID3_Reader</a>;
00035 <font class="keyword">class </font><a class="code" href="class_i_d3___writer.html">ID3_Writer</a>;
00036 <font class="keyword">class </font><a class="code" href="class_i_d3___tag_impl.html">ID3_TagImpl</a>;
00037 <font class="keyword">class </font><a class="code" href="class_i_d3___tag.html">ID3_Tag</a>;
00038 
<a name="l00039"></a><a class="code" href="class_i_d3___tag.html">00039</a> <font class="keyword">class </font><a class="code" href="globals_8h.html#a1">ID3_CPP_EXPORT</a> <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>
00040 {
00041   <a class="code" href="class_i_d3___tag_impl.html">ID3_TagImpl</a>* _impl;
00042 <font class="keyword">public</font>:
00043 
<a name="l00044"></a><a class="code" href="class_i_d3___tag_1_1_iterator.html">00044</a>   <font class="keyword">class </font>Iterator
00045   {
00046   <font class="keyword">public</font>:
00047     <font class="keyword">virtual</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>*       GetNext()       = 0;
00048   };
00049 
<a name="l00050"></a><a class="code" href="class_i_d3___tag_1_1_const_iterator.html">00050</a>   <font class="keyword">class </font>ConstIterator
00051   {
00052   <font class="keyword">public</font>:
00053     <font class="keyword">virtual</font> <font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* GetNext()       = 0;
00054   };
00055 
00056 <font class="keyword">public</font>:
00057 
00058   <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>(<font class="keyword">const</font> <font class="keywordtype">char</font> *name = <a class="code" href="globals_8h.html#a24">NULL</a>);
00059   <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>(<font class="keyword">const</font> <a class="code" href="class_i_d3___tag.html">ID3_Tag</a> &amp;tag);
00060   <font class="keyword">virtual</font> ~<a class="code" href="class_i_d3___tag.html">ID3_Tag</a>();
00061   
00062   <font class="keywordtype">void</font>       Clear();
00063   <font class="keywordtype">bool</font>       HasChanged() <font class="keyword">const</font>;
00064   size_t     Size() <font class="keyword">const</font>;
00065   
00066   <font class="keywordtype">bool</font>       SetUnsync(<font class="keywordtype">bool</font>);
00067   <font class="keywordtype">bool</font>       SetExtendedHeader(<font class="keywordtype">bool</font>);
00068   <font class="keywordtype">bool</font>       SetExperimental(<font class="keywordtype">bool</font>);
00069   
00070   <font class="keywordtype">bool</font>       GetUnsync() <font class="keyword">const</font>;
00071   <font class="keywordtype">bool</font>       GetExtendedHeader() <font class="keyword">const</font>;
00072   <font class="keywordtype">bool</font>       GetExperimental() <font class="keyword">const</font>;
00073 
00074   <font class="keywordtype">bool</font>       SetPadding(<font class="keywordtype">bool</font>);
00075 
00076   <font class="keywordtype">void</font>       AddFrame(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>&amp;);
00077   <font class="keywordtype">void</font>       AddFrame(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>*);
00078   <font class="keywordtype">void</font>       AttachFrame(<a class="code" href="class_i_d3___frame.html">ID3_Frame</a>*);
00079   <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* RemoveFrame(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a> *);
00080   
00081   size_t     Parse(<font class="keyword">const</font> <a class="code" href="globals_8h.html#a33">uchar</a>*, size_t);
00082   <font class="keywordtype">bool</font>       Parse(<a class="code" href="class_i_d3___reader.html">ID3_Reader</a>&amp; reader);
00083   size_t     Render(<a class="code" href="globals_8h.html#a33">uchar</a>*, <a class="code" href="globals_8h.html#a217">ID3_TagType</a> = <a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a>) <font class="keyword">const</font>;
00084   size_t     Render(<a class="code" href="class_i_d3___writer.html">ID3_Writer</a>&amp;, <a class="code" href="globals_8h.html#a217">ID3_TagType</a> = <a class="code" href="globals_8h.html#a217a61">ID3TT_ID3V2</a>) <font class="keyword">const</font>;
00085   
00086   size_t     Link(<font class="keyword">const</font> <font class="keywordtype">char</font> *fileInfo, <a class="code" href="globals_8h.html#a40">flags_t</a> = (<a class="code" href="globals_8h.html#a40">flags_t</a>) <a class="code" href="globals_8h.html#a217a67">ID3TT_ALL</a>);
00087   <a class="code" href="globals_8h.html#a40">flags_t</a>    Update(<a class="code" href="globals_8h.html#a40">flags_t</a> = (<a class="code" href="globals_8h.html#a40">flags_t</a>) <a class="code" href="globals_8h.html#a217a67">ID3TT_ALL</a>);
00088   <a class="code" href="globals_8h.html#a40">flags_t</a>    Strip(<a class="code" href="globals_8h.html#a40">flags_t</a> = (<a class="code" href="globals_8h.html#a40">flags_t</a>) <a class="code" href="globals_8h.html#a217a67">ID3TT_ALL</a>);
00089   
00090   size_t     GetPrependedBytes() <font class="keyword">const</font>;
00091   size_t     GetAppendedBytes() <font class="keyword">const</font>;
00092   size_t     GetFileSize() <font class="keyword">const</font>;
00093   <font class="keyword">const</font> <font class="keywordtype">char</font>* GetFileName() <font class="keyword">const</font>;
00094   
00095   <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* Find(<a class="code" href="globals_8h.html#a219">ID3_FrameID</a>) <font class="keyword">const</font>;
00096   <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* Find(<a class="code" href="globals_8h.html#a219">ID3_FrameID</a>, <a class="code" href="globals_8h.html#a218">ID3_FieldID</a>, <a class="code" href="sized__types_8h.html#a4">uint32</a>) <font class="keyword">const</font>;
00097   <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* Find(<a class="code" href="globals_8h.html#a219">ID3_FrameID</a>, <a class="code" href="globals_8h.html#a218">ID3_FieldID</a>, <font class="keyword">const</font> <font class="keywordtype">char</font>*) <font class="keyword">const</font>;
00098   <a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* Find(<a class="code" href="globals_8h.html#a219">ID3_FrameID</a>, <a class="code" href="globals_8h.html#a218">ID3_FieldID</a>, <font class="keyword">const</font> <a class="code" href="globals_8h.html#a39">unicode_t</a>*) <font class="keyword">const</font>;
00099   
00100   size_t     NumFrames() <font class="keyword">const</font>;
00101 
00102   Iterator*  CreateIterator();
00103   ConstIterator* CreateIterator() <font class="keyword">const</font>;
00104 
00105   <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>&amp;   operator=( <font class="keyword">const</font> <a class="code" href="class_i_d3___tag.html">ID3_Tag</a> &amp; );
00106   
00107   <font class="keywordtype">bool</font>       HasTagType(<a class="code" href="sized__types_8h.html#a2">uint16</a> tt) <font class="keyword">const</font>;
00108   <a class="code" href="globals_8h.html#a216">ID3_V2Spec</a> GetSpec() <font class="keyword">const</font>;
00109   <font class="keywordtype">bool</font>       SetSpec(<a class="code" href="globals_8h.html#a216">ID3_V2Spec</a>);
00110   
00111   <font class="keyword">static</font> size_t IsV2Tag(<font class="keyword">const</font> <a class="code" href="globals_8h.html#a33">uchar</a>*);
00112   <font class="keyword">static</font> size_t IsV2Tag(<a class="code" href="class_i_d3___reader.html">ID3_Reader</a>&amp;);
00113   
00114   <font class="comment">/* Deprecated! */</font>
00115   <font class="keywordtype">void</font>       AddNewFrame(<a class="code" href="class_i_d3___frame.html">ID3_Frame</a>* f);
00116   size_t     Link(<font class="keyword">const</font> <font class="keywordtype">char</font> *fileInfo, <font class="keywordtype">bool</font> parseID3v1, <font class="keywordtype">bool</font> parseLyrics3);
00117   <font class="keywordtype">void</font>       SetCompression(<font class="keywordtype">bool</font>);
00118   <font class="keywordtype">void</font>       AddFrames(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a> *, size_t);
00119   <font class="keywordtype">bool</font>       HasLyrics() <font class="keyword">const</font>;
00120   <font class="keywordtype">bool</font>       HasV2Tag()  <font class="keyword">const</font>;
00121   <font class="keywordtype">bool</font>       HasV1Tag()  <font class="keyword">const</font>;
00122   size_t     Parse(<font class="keyword">const</font> <a class="code" href="globals_8h.html#a33">uchar</a> header[<a class="code" href="globals_8h.html#a5">ID3_TAGHEADERSIZE</a>], <font class="keyword">const</font> <a class="code" href="globals_8h.html#a33">uchar</a> *buffer);
00123   <font class="comment">//ID3_Frame* operator[](index_t) const;</font>
00124   <font class="comment">//ID3_Frame* GetFrameNum(index_t) const;</font>
00125 
00126   <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>&amp;   operator&lt;&lt;(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a> &amp;);
00127   <a class="code" href="class_i_d3___tag.html">ID3_Tag</a>&amp;   operator&lt;&lt;(<font class="keyword">const</font> <a class="code" href="class_i_d3___frame.html">ID3_Frame</a> *);
00128 };
00129 
00130 <font class="comment">// deprecated!</font>
00131 <a class="code" href="sized__types_8h.html#a5">int32</a> <a class="code" href="globals_8h.html#a0">ID3_C_EXPORT</a> <a class="code" href="tag_8h.html#a0">ID3_IsTagHeader</a>(<font class="keyword">const</font> <a class="code" href="globals_8h.html#a33">uchar</a> header[<a class="code" href="globals_8h.html#a5">ID3_TAGHEADERSIZE</a>]);
00132 
00133 
00134 <font class="preprocessor">#endif </font><font class="comment">/* _ID3LIB_TAG_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>,
 &copy;&nbsp;1997-2001</small></address>
</body>
</html>