⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aflibfile_8h-source.html

📁 一个共享源码的音频库5(doc 文档)
💻 HTML
字号:
<!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>aflibFile.h Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.2.15 --><center><a class="qindex" href="index.html">Main Page</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="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center><hr><h1>aflibFile.h</h1><a href="aflibFile_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/*</font>00002 <font class="comment"> * Copyright: (C) 1999-2001 Bruce W. Forsberg</font>00003 <font class="comment"> *</font>00004 <font class="comment"> *   This library is free software; you can redistribute it and/or</font>00005 <font class="comment"> *   modify it under the terms of the GNU Lesser General Public</font>00006 <font class="comment"> *   License as published by the Free Software Foundation; either</font>00007 <font class="comment"> *   version 2.1 of the License, or any later version.</font>00008 <font class="comment"> *</font>00009 <font class="comment"> *   This library is distributed in the hope that it will be useful,</font>00010 <font class="comment"> *   but WITHOUT ANY WARRANTY; without even the implied warranty of</font>00011 <font class="comment"> *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</font>00012 <font class="comment"> *   Lesser General Public License for more details.</font>00013 <font class="comment"> *</font>00014 <font class="comment"> *   You should have received a copy of the GNU Lesser General Public</font>00015 <font class="comment"> *   License along with this library; if not, write to the Free Software</font>00016 <font class="comment"> *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA</font>00017 <font class="comment"> *</font>00018 <font class="comment"> *   Bruce Forsberg  forsberg@tns.net</font>00019 <font class="comment"> *</font>00020 <font class="comment"> */</font>00021 00022 <font class="preprocessor">#ifndef _AFLIBFILE_H</font>00023 <font class="preprocessor"></font><font class="preprocessor">#define _AFLIBFILE_H</font>00024 <font class="preprocessor"></font>00025 <font class="preprocessor">#ifdef HAVE_CONFIG_H</font>00026 <font class="preprocessor"></font><font class="preprocessor">#include "config.h"</font>00027 <font class="preprocessor">#endif</font>00028 <font class="preprocessor"></font>00029 <font class="preprocessor">#include "<a class="code" href="aflib_8h.html">aflib.h</a>"</font>00030 <font class="preprocessor">#include "<a class="code" href="aflibConfig_8h.html">aflibConfig.h</a>"</font>00031 00032 <font class="preprocessor">#include &lt;string&gt;</font>00033 <font class="preprocessor">#include &lt;list&gt;</font>00034 <font class="preprocessor">#include &lt;map&gt;</font>00035 <font class="keyword">using</font> std::string;00036 <font class="keyword">using</font> std::list;00037 <font class="keyword">using</font> std::map;00038 00039 00068 <font class="keyword">class </font><a class="code" href="classaflibData.html">aflibData</a>;00069 <font class="keyword">class </font><a class="code" href="classaflibFileItem.html">aflibFileItem</a>;00070 00071 <font class="keyword">class </font><a class="code" href="classaflibFile.html">aflibFile</a> {00072 00073 <font class="keyword">public</font>:00074 00075    <font class="keyword">virtual</font> <a class="code" href="classaflibFile.html#a0">~aflibFile</a>();00076 00077    <font class="keyword">static</font> <font class="keywordtype">void</font>00078    <a class="code" href="classaflibFile.html#d1">returnSupportedFormats</a>(00079       list &lt;string&gt;&amp; formats,00080       list &lt;string&gt;&amp; descriptions);00081 00082    <font class="keyword">static</font> <font class="keyword">const</font> list&lt;aflibFileItem*&gt;&amp;  00083     <a class="code" href="classaflibFile.html#d1">returnSupportedFormats</a>();00084 00085    <font class="keyword">static</font> <a class="code" href="classaflibFile.html">aflibFile</a> *00086    <a class="code" href="classaflibFile.html#d2">open</a>(00087       <a class="code" href="aflib_8h.html#a34">aflibFileType</a> type_enum,00088       <font class="keyword">const</font> string&amp; file,00089       <a class="code" href="classaflibConfig.html">aflibConfig</a>* cfg = NULL,00090       <a class="code" href="aflib_8h.html#a33">aflibStatus</a>* status = NULL);00091 00092    <font class="keyword">static</font> <a class="code" href="classaflibFile.html">aflibFile</a> *00093    <a class="code" href="classaflibFile.html#d2">open</a>(00094       <font class="keyword">const</font> string&amp; format,00095       <font class="keyword">const</font> string&amp; file,00096       <a class="code" href="classaflibConfig.html">aflibConfig</a>* cfg = NULL,00097       <a class="code" href="aflib_8h.html#a33">aflibStatus</a>* status = NULL);00098 00099    <font class="keyword">static</font> <a class="code" href="classaflibFile.html">aflibFile</a> *00100    <a class="code" href="classaflibFile.html#d4">create</a>(00101       <a class="code" href="aflib_8h.html#a34">aflibFileType</a> type_enum,00102       <font class="keyword">const</font> string&amp; file,00103       <font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp; cfg,00104       <a class="code" href="aflib_8h.html#a33">aflibStatus</a>* status = NULL);00105 00106    <font class="keyword">static</font> <a class="code" href="classaflibFile.html">aflibFile</a> *00107    <a class="code" href="classaflibFile.html#d4">create</a>(00108       <font class="keyword">const</font> string&amp; format,00109       <font class="keyword">const</font> string&amp; file,00110       <font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp; cfg,00111       <a class="code" href="aflib_8h.html#a33">aflibStatus</a>* status = NULL);00112 00113    <font class="keyword">virtual</font> <a class="code" href="aflib_8h.html#a33">aflibStatus</a>00114    <a class="code" href="classaflibFile.html#a1">afopen</a>(00115       <font class="keyword">const</font> <font class="keywordtype">char</font> * file,00116       <a class="code" href="classaflibConfig.html">aflibConfig</a>* cfg);00117 00118    <font class="keyword">virtual</font> <a class="code" href="aflib_8h.html#a33">aflibStatus</a>00119    <a class="code" href="classaflibFile.html#a2">afcreate</a>(00120       <font class="keyword">const</font> <font class="keywordtype">char</font> * file,00121       <font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp; cfg);00122 00123    <font class="keyword">virtual</font> <a class="code" href="aflib_8h.html#a33">aflibStatus</a>00124    <a class="code" href="classaflibFile.html#a3">afread</a>(00125       <a class="code" href="classaflibData.html">aflibData</a>&amp; data,00126       <font class="keywordtype">long</font> <font class="keywordtype">long</font> position = -1);00127 00128    <font class="keyword">virtual</font> <a class="code" href="aflib_8h.html#a33">aflibStatus</a>00129    <a class="code" href="classaflibFile.html#a4">afwrite</a>(00130       <a class="code" href="classaflibData.html">aflibData</a>&amp; data,00131       <font class="keywordtype">long</font> <font class="keywordtype">long</font> position = -1);00132 00133    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00134    <a class="code" href="classaflibFile.html#a5">setItem</a>(00135       <font class="keyword">const</font> <font class="keywordtype">char</font> * item,00136       <font class="keyword">const</font> <font class="keywordtype">void</font> * value);00137 00138    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00139    <a class="code" href="classaflibFile.html#a6">getItem</a>(00140       <font class="keyword">const</font> <font class="keywordtype">char</font> * item,00141       <font class="keywordtype">void</font> * value);00142 00143    <font class="keyword">const</font> string&amp;00144    <a class="code" href="classaflibFile.html#a7">getFormat</a>() <font class="keyword">const</font>;00145 00146    <font class="keyword">virtual</font> <font class="keywordtype">void</font>00147    <a class="code" href="classaflibFile.html#a8">setInputConfig</a>(<font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp; cfg);00148  00149    <font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp;00150    <a class="code" href="classaflibFile.html#a9">getInputConfig</a>() <font class="keyword">const</font>;00151  00152    <font class="keywordtype">void</font>00153    <a class="code" href="classaflibFile.html#a10">setOutputConfig</a>(<font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp; cfg);00154  00155    <font class="keyword">const</font> <a class="code" href="classaflibConfig.html">aflibConfig</a>&amp;00156    <a class="code" href="classaflibFile.html#a11">getOutputConfig</a>() <font class="keyword">const</font>;00157 00158    <font class="keywordtype">void</font>00159    <a class="code" href="classaflibFile.html#a12">setValue1</a>(<font class="keyword">const</font> string&amp; value);00160 00161    <font class="keywordtype">void</font>00162    <a class="code" href="classaflibFile.html#a13">setValue2</a>(<font class="keyword">const</font> string&amp; value);00163 00164    <font class="keywordtype">void</font>00165    <a class="code" href="classaflibFile.html#a14">setValue3</a>(<font class="keyword">const</font> string&amp; value);00166 00167    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00168    <a class="code" href="classaflibFile.html#a15">isDataSizeSupported</a>(<a class="code" href="aflib_8h.html#a30">aflib_data_size</a> size);00169  00170    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00171    <a class="code" href="classaflibFile.html#a16">isEndianSupported</a>(<a class="code" href="aflib_8h.html#a31">aflib_data_endian</a> end);00172  00173    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00174    <a class="code" href="classaflibFile.html#a17">isSampleRateSupported</a>(<font class="keywordtype">int</font>&amp; rate);00175 00176    <font class="keyword">virtual</font> <font class="keywordtype">bool</font>00177    <a class="code" href="classaflibFile.html#a18">isChannelsSupported</a>(<font class="keywordtype">int</font>&amp; channels);00178 00179 <font class="keyword">protected</font>:00180 00181    <a class="code" href="classaflibFile.html#b0">aflibFile</a>();00182 <a name="l00183"></a><a class="code" href="classaflibFile.html#n0">00183</a>    <font class="keywordtype">long</font>       <a class="code" href="classaflibFile.html#n0">_total_size</a>;<a name="l00184"></a><a class="code" href="classaflibFile.html#n1">00184</a>    <font class="keywordtype">long</font>       <a class="code" href="classaflibFile.html#n1">_one_second_size</a>;<a name="l00185"></a><a class="code" href="classaflibFile.html#n2">00185</a>    <font class="keywordtype">long</font>       <a class="code" href="classaflibFile.html#n2">_current_place_size</a>;<a name="l00186"></a><a class="code" href="classaflibFile.html#n3">00186</a>    string     <a class="code" href="classaflibFile.html#n3">_value1</a>;<a name="l00187"></a><a class="code" href="classaflibFile.html#n4">00187</a>    string     <a class="code" href="classaflibFile.html#n4">_value2</a>;<a name="l00188"></a><a class="code" href="classaflibFile.html#n5">00188</a>    string     <a class="code" href="classaflibFile.html#n5">_value3</a>;00189 00190 00191 <font class="keyword">private</font>:00192 00193     <font class="comment">//void (*_isChannelsSupported)(int&amp;);</font>00194    <a class="code" href="classaflibConfig.html">aflibConfig</a> _cfg_input;00195    <a class="code" href="classaflibConfig.html">aflibConfig</a> _cfg_output;00196    <font class="keywordtype">void</font> *     _lib1;00197    <a class="code" href="classaflibFile.html">aflibFile</a> * _file_object;00198    string     _format;00199    <font class="keyword">static</font> list&lt;aflibFileItem *&gt;  _support_list;00200    <font class="keyword">static</font> <font class="keywordtype">bool</font> _list_created;00201 00202 00203    <a class="code" href="classaflibFile.html#b0">aflibFile</a>(<font class="keyword">const</font> <font class="keywordtype">char</font> * module_name);00204 00205    <a class="code" href="classaflibFile.html#b0">aflibFile</a>(<font class="keyword">const</font> <a class="code" href="classaflibFile.html">aflibFile</a>&amp; file);00206 00207    <font class="keyword">const</font> <a class="code" href="classaflibFile.html">aflibFile</a>&amp;00208    operator== (<font class="keyword">const</font> <a class="code" href="classaflibFile.html">aflibFile</a>&amp; file);00209 00210    <font class="keyword">static</font> <a class="code" href="classaflibFile.html">aflibFile</a> *00211    allocateModuleFile(00212       <a class="code" href="aflib_8h.html#a34">aflibFileType</a> type_enum,00213       <font class="keyword">const</font> <font class="keywordtype">char</font> *  module_format);00214 00215    <font class="keyword">static</font> <font class="keyword">const</font> <font class="keywordtype">char</font> *00216    findModuleFile(<font class="keyword">const</font> string&amp; file_name);00217 00218    <font class="keyword">static</font> <font class="keywordtype">void</font>00219    parseModuleFile();00220 00221    <font class="keywordtype">bool</font>00222    initialized();00223 00224 };00225 00226 <font class="preprocessor">#endif</font></pre></div><hr><address align="right"><small>Generated on Wed May 8 20:51:06 2002 for Open Source Audio Library Project by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.15 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -