Release and update docs.
[lms] / www / api / lightmediascanner__charset__conv_8c.html
index 6fae642..d28d271 100644 (file)
@@ -4,37 +4,41 @@
 <link href="doxygen.css" rel="stylesheet" type="text/css">
 <link href="tabs.css" rel="stylesheet" type="text/css">
 </head><body>
-<!-- Generated by Doxygen 1.5.2 -->
-<div class="tabs">
-  <ul>
-    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
-    <li><a href="modules.html"><span>Modules</span></a></li>
-    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
-    <li class="current"><a href="files.html"><span>Files</span></a></li>
-  </ul>
-</div>
-<div class="tabs">
-  <ul>
-    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
-    <li><a href="globals.html"><span>Globals</span></a></li>
-  </ul>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
 </div>
+<div class="contents">
 <h1>src/lib/lightmediascanner_charset_conv.c File Reference</h1><code>#include &quot;<a class="el" href="lightmediascanner__charset__conv_8h-source.html">lightmediascanner_charset_conv.h</a>&quot;</code><br>
 <code>#include &lt;iconv.h&gt;</code><br>
 <code>#include &lt;stdio.h&gt;</code><br>
 <code>#include &lt;stdlib.h&gt;</code><br>
 <code>#include &lt;string.h&gt;</code><br>
 <code>#include &lt;errno.h&gt;</code><br>
+<code>#include &lt;ctype.h&gt;</code><br>
 
 <p>
-Include dependency graph for lightmediascanner_charset_conv.c:<p><center><img src="lightmediascanner__charset__conv_8c__incl.png" border="0" usemap="#src/lib/lightmediascanner_charset_conv.c_map" alt=""></center>
+<div class="dynheader">
+Include dependency graph for lightmediascanner_charset_conv.c:</div>
+<div class="dynsection">
+<p><center><img src="lightmediascanner__charset__conv_8c__incl.png" border="0" usemap="#src/lib/lightmediascanner_charset_conv.c_map" alt=""></center>
 <map name="src/lib/lightmediascanner_charset_conv.c_map">
-<area shape="rect" href="lightmediascanner__charset__conv_8h.html" title="lightmediascanner_charset_conv.h" alt="" coords="297,5,503,32"></map>
+<area shape="rect" href="lightmediascanner__charset__conv_8h.html" title="lightmediascanner_charset_conv.h" alt="" coords="5,84,259,110"></map>
+</div>
 
 <p>
 <a href="lightmediascanner__charset__conv_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g893421821eacaa0fd2020c872361af15">lms_charset_conv_new_full</a> (int use_check, int use_fallback)</td></tr>
+
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g0120c222a55e6d7d9bb24300300561ab">lms_charset_conv_new</a> (void)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g960ce31bca428212abdd60c12b878091">lms_charset_conv_free</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc)</td></tr>
@@ -45,6 +49,8 @@ Include dependency graph for lightmediascanner_charset_conv.c:<p><center><img sr
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="lightmediascanner__charset__conv_8c.html#35b728d3c5cb940027ebc47589971b25">lms_charset_conv</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc, char **p_str, unsigned int *p_len)</td></tr>
 
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="lightmediascanner__charset__conv_8c.html#8ea844f16120ba4000b7b142192e91e4">lms_charset_conv_force</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc, char **p_str, unsigned int *p_len)</td></tr>
+
 <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="lightmediascanner__charset__conv_8c.html#f069b89e828896690fdd919e5b042c7d">lms_charset_conv_check</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc, const char *str, unsigned int len)</td></tr>
 
 </table>
@@ -74,7 +80,7 @@ Include dependency graph for lightmediascanner_charset_conv.c:<p><center><img sr
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td width="100%"></td>
+          <td></td><td></td><td></td>
         </tr>
       </table>
 </div>
@@ -89,10 +95,12 @@ If required, do charset conversion to UTF-8.<p>
     <tr><td valign="top"></td><td valign="top"><em>p_len</em>&nbsp;</td><td>string size.</td></tr>
   </table>
 </dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>the check for string being already UTF-8 is not reliable, some cases might show false positives (UTF-16 is considered UTF-8). </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="lightmediascanner__charset__conv_8c.html#f069b89e828896690fdd919e5b042c7d">lms_charset_conv_check()</a></dd></dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>On success 0 is returned. </dd></dl>
 
-<p>
-Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00266">266</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.
+<p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00328">328</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
+
 </div>
 </div><p>
 <a class="anchor" name="0a3006beae6fc8c59eca75468c1bc000"></a><!-- doxytag: member="lightmediascanner_charset_conv.c::lms_charset_conv_add" ref="0a3006beae6fc8c59eca75468c1bc000" args="(lms_charset_conv_t *lcc, const char *charset)" -->
@@ -114,7 +122,7 @@ Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-sourc
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td width="100%"></td>
+          <td></td><td></td><td></td>
         </tr>
       </table>
 </div>
@@ -130,10 +138,10 @@ Register new charset to conversion tool.<p>
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>On success 0 is returned. </dd></dl>
 
-<p>
-Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00098">98</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.
-<p>
-Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00451">lms_charset_add()</a>.
+<p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00145">145</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
+
+<p>Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00480">lms_charset_add()</a>.</p>
+
 </div>
 </div><p>
 <a class="anchor" name="f069b89e828896690fdd919e5b042c7d"></a><!-- doxytag: member="lightmediascanner_charset_conv.c::lms_charset_conv_check" ref="f069b89e828896690fdd919e5b042c7d" args="(lms_charset_conv_t *lcc, const char *str, unsigned int len)" -->
@@ -161,7 +169,7 @@ Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00451">lms_c
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td width="100%"></td>
+          <td></td><td></td><td></td>
         </tr>
       </table>
 </div>
@@ -176,10 +184,11 @@ Check if strings is not UTF-8 and conversion is required.<p>
     <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>string size.</td></tr>
   </table>
 </dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>current implementation is not reliable, it tries to convert from UTF-8 to UTF-8. Some cases, like ISO-8859-1 will work, but some like UTF-16 to UTF-8 will say it's already in the correct charset, even if it's not.</dd></dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if string is already UTF-8. </dd></dl>
 
-<p>
-Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00317">317</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.
+<p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00440">440</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
+
 </div>
 </div><p>
 <a class="anchor" name="ad60dd3a2c2ebcf9ee1100986fc572e4"></a><!-- doxytag: member="lightmediascanner_charset_conv.c::lms_charset_conv_del" ref="ad60dd3a2c2ebcf9ee1100986fc572e4" args="(lms_charset_conv_t *lcc, const char *charset)" -->
@@ -201,7 +210,7 @@ Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-sourc
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td width="100%"></td>
+          <td></td><td></td><td></td>
         </tr>
       </table>
 </div>
@@ -217,14 +226,62 @@ Forget about previously registered charset in conversion tool.<p>
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>On success 0 is returned. </dd></dl>
 
+<p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00211">211</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
+
+<p>Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00503">lms_charset_del()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="8ea844f16120ba4000b7b142192e91e4"></a><!-- doxytag: member="lightmediascanner_charset_conv.c::lms_charset_conv_force" ref="8ea844f16120ba4000b7b142192e91e4" args="(lms_charset_conv_t *lcc, char **p_str, unsigned int *p_len)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int lms_charset_conv_force           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *&nbsp;</td>
+          <td class="paramname"> <em>lcc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&nbsp;</td>
+          <td class="paramname"> <em>p_str</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int *&nbsp;</td>
+          <td class="paramname"> <em>p_len</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
 <p>
-Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00164">164</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.
-<p>
-Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00474">lms_charset_del()</a>.
+Forcefully do charset conversion to UTF-8.<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>lcc</em>&nbsp;</td><td>existing Light Media Scanner charset conversion. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>p_str</em>&nbsp;</td><td>string to be converted. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>p_len</em>&nbsp;</td><td>string size.</td></tr>
+  </table>
+</dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>This function does not check for the string being in UTF-8 before doing the conversion, use it if you are sure about the charset. In this case you'll usually have just one charset added.</dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success 0 is returned. </dd></dl>
+
+<p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00386">386</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
+
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Thu Dec 13 02:04:03 2007 for Light Media Scanner by&nbsp;
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 5 12:24:54 2008 for Light Media Scanner by&nbsp;
 <a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.2 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
 </html>