1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3 <title>Light Media Scanner: Charset Conversion</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css">
7 <!-- Generated by Doxygen 1.5.6 -->
8 <div class="navigation" id="top">
11 <li><a href="index.html"><span>Main Page</span></a></li>
12 <li><a href="modules.html"><span>Modules</span></a></li>
13 <li><a href="classes.html"><span>Data Structures</span></a></li>
14 <li><a href="files.html"><span>Files</span></a></li>
18 <div class="contents">
19 <h1>Charset Conversion</h1><table border="0" cellpadding="0" cellspacing="0">
21 <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
22 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct lms_charset_conv </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a></td></tr>
24 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
25 <tr><td class="memItemLeft" nowrap align="right" valign="top">API <a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </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) GNUC_MALLOC GNUC_WARN_UNUSED_RESULT</td></tr>
27 <tr><td class="memItemLeft" nowrap align="right" valign="top">API <a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g0120c222a55e6d7d9bb24300300561ab">lms_charset_conv_new</a> (void) GNUC_MALLOC GNUC_WARN_UNUSED_RESULT</td></tr>
29 <tr><td class="memItemLeft" nowrap align="right" valign="top">API void </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) GNUC_NON_NULL(1)</td></tr>
31 <tr><td class="memItemLeft" nowrap align="right" valign="top">API int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#gfc1aad4c212b5fa1ce7280d2b7df3ef7">lms_charset_conv_add</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc, const char *charset) GNUC_NON_NULL(1</td></tr>
33 <tr><td class="memItemLeft" nowrap align="right" valign="top">API int API int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#gc364c502a4a4a64ea9f092a61074a90a">lms_charset_conv_del</a> (<a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *lcc, const char *charset) GNUC_NON_NULL(1</td></tr>
35 <tr><td class="memItemLeft" nowrap align="right" valign="top">API int API int API int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#gd843f59abac208048f13437534d589fc">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) GNUC_NON_NULL(1</td></tr>
37 <tr><td class="memItemLeft" nowrap align="right" valign="top">API int API int API int API int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#g9a610040a6380c745277effc5c4c9112">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) GNUC_NON_NULL(1</td></tr>
39 <tr><td class="memItemLeft" nowrap align="right" valign="top">API int API int API int API <br>
40 int API int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__LMS__CHARSET.html#gbc8903e67c3c7eefa902cbb2bd5e3338">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) GNUC_NON_NULL(1</td></tr>
43 <hr><a name="_details"></a><h2>Detailed Description</h2>
44 Utilities to convert strings to UTF-8, the charset used in database. <hr><h2>Typedef Documentation</h2>
45 <a class="anchor" name="g50e57a19bb3d062fe7eea437a8b8e949"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_t" ref="g50e57a19bb3d062fe7eea437a8b8e949" args="" -->
47 <div class="memproto">
48 <table class="memname">
50 <td class="memname">typedef struct lms_charset_conv <a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> </td>
58 <p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8h-source.html#l00072">72</a> of file <a class="el" href="lightmediascanner__charset__conv_8h-source.html">lightmediascanner_charset_conv.h</a>.</p>
62 <hr><h2>Function Documentation</h2>
63 <a class="anchor" name="gd843f59abac208048f13437534d589fc"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv" ref="gd843f59abac208048f13437534d589fc" args="(lms_charset_conv_t *lcc, char **p_str, unsigned int *p_len) GNUC_NON_NULL(1" -->
65 <div class="memproto">
66 <table class="memname">
68 <td class="memname">API int API int API int lms_charset_conv </td>
70 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
71 <td class="paramname"> <em>lcc</em>, </td>
74 <td class="paramkey"></td>
76 <td class="paramtype">char ** </td>
77 <td class="paramname"> <em>p_str</em>, </td>
80 <td class="paramkey"></td>
82 <td class="paramtype">unsigned int * </td>
83 <td class="paramname"> <em>p_len</em></td><td> </td>
88 <td></td><td></td><td></td>
98 <a class="anchor" name="gfc1aad4c212b5fa1ce7280d2b7df3ef7"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_add" ref="gfc1aad4c212b5fa1ce7280d2b7df3ef7" args="(lms_charset_conv_t *lcc, const char *charset) GNUC_NON_NULL(1" -->
100 <div class="memproto">
101 <table class="memname">
103 <td class="memname">API int lms_charset_conv_add </td>
105 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
106 <td class="paramname"> <em>lcc</em>, </td>
109 <td class="paramkey"></td>
111 <td class="paramtype">const char * </td>
112 <td class="paramname"> <em>charset</em></td><td> </td>
117 <td></td><td></td><td></td>
127 <a class="anchor" name="gbc8903e67c3c7eefa902cbb2bd5e3338"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_check" ref="gbc8903e67c3c7eefa902cbb2bd5e3338" args="(lms_charset_conv_t *lcc, const char *str, unsigned int len) GNUC_NON_NULL(1" -->
128 <div class="memitem">
129 <div class="memproto">
130 <table class="memname">
132 <td class="memname">API int API int API int API int API int lms_charset_conv_check </td>
134 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
135 <td class="paramname"> <em>lcc</em>, </td>
138 <td class="paramkey"></td>
140 <td class="paramtype">const char * </td>
141 <td class="paramname"> <em>str</em>, </td>
144 <td class="paramkey"></td>
146 <td class="paramtype">unsigned int </td>
147 <td class="paramname"> <em>len</em></td><td> </td>
152 <td></td><td></td><td></td>
162 <a class="anchor" name="gc364c502a4a4a64ea9f092a61074a90a"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_del" ref="gc364c502a4a4a64ea9f092a61074a90a" args="(lms_charset_conv_t *lcc, const char *charset) GNUC_NON_NULL(1" -->
163 <div class="memitem">
164 <div class="memproto">
165 <table class="memname">
167 <td class="memname">API int API int lms_charset_conv_del </td>
169 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
170 <td class="paramname"> <em>lcc</em>, </td>
173 <td class="paramkey"></td>
175 <td class="paramtype">const char * </td>
176 <td class="paramname"> <em>charset</em></td><td> </td>
181 <td></td><td></td><td></td>
191 <a class="anchor" name="g9a610040a6380c745277effc5c4c9112"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_force" ref="g9a610040a6380c745277effc5c4c9112" args="(lms_charset_conv_t *lcc, char **p_str, unsigned int *p_len) GNUC_NON_NULL(1" -->
192 <div class="memitem">
193 <div class="memproto">
194 <table class="memname">
196 <td class="memname">API int API int API int API int lms_charset_conv_force </td>
198 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
199 <td class="paramname"> <em>lcc</em>, </td>
202 <td class="paramkey"></td>
204 <td class="paramtype">char ** </td>
205 <td class="paramname"> <em>p_str</em>, </td>
208 <td class="paramkey"></td>
210 <td class="paramtype">unsigned int * </td>
211 <td class="paramname"> <em>p_len</em></td><td> </td>
216 <td></td><td></td><td></td>
226 <a class="anchor" name="g960ce31bca428212abdd60c12b878091"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_free" ref="g960ce31bca428212abdd60c12b878091" args="(lms_charset_conv_t *lcc) GNUC_NON_NULL(1)" -->
227 <div class="memitem">
228 <div class="memproto">
229 <table class="memname">
231 <td class="memname">API void lms_charset_conv_free </td>
233 <td class="paramtype"><a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> * </td>
234 <td class="paramname"> <em>lcc</em> </td>
235 <td> ) </td>
243 Free existing charset conversion tool.<p>
244 <dl compact><dt><b>Parameters:</b></dt><dd>
245 <table border="0" cellspacing="2" cellpadding="0">
246 <tr><td valign="top"></td><td valign="top"><em>lcc</em> </td><td>existing Light Media Scanner charset conversion. </td></tr>
250 <p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00112">112</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
252 <p>Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00157">lms_free()</a>, and <a class="el" href="lightmediascanner_8c-source.html#l00119">lms_new()</a>.</p>
256 <a class="anchor" name="g0120c222a55e6d7d9bb24300300561ab"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_new" ref="g0120c222a55e6d7d9bb24300300561ab" args="(void) GNUC_MALLOC GNUC_WARN_UNUSED_RESULT" -->
257 <div class="memitem">
258 <div class="memproto">
259 <table class="memname">
261 <td class="memname">API <a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a>* lms_charset_conv_new </td>
263 <td class="paramtype">void </td>
264 <td class="paramname"> </td>
265 <td> ) </td>
273 Create a new charset conversion tool.<p>
274 Conversion tool will try to convert provided strings to UTF-8, just need to register known charsets with <a class="el" href="lightmediascanner__charset__conv_8c.html#0a3006beae6fc8c59eca75468c1bc000">lms_charset_conv_add()</a> and then call <a class="el" href="lightmediascanner__charset__conv_8c.html#35b728d3c5cb940027ebc47589971b25">lms_charset_conv()</a>.<p>
275 <dl class="return" compact><dt><b>Returns:</b></dt><dd>newly allocated conversion tool or NULL on error. </dd></dl>
277 <p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00101">101</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
279 <p>References <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00047">lms_charset_conv_new_full()</a>.</p>
281 <p>Referenced by <a class="el" href="lightmediascanner_8c-source.html#l00119">lms_new()</a>.</p>
284 <div class="dynheader">
285 Here is the call graph for this function:</div>
286 <div class="dynsection">
287 <p><center><img src="group__LMS__CHARSET_g0120c222a55e6d7d9bb24300300561ab_cgraph.png" border="0" usemap="#group__LMS__CHARSET_g0120c222a55e6d7d9bb24300300561ab_cgraph_map" alt=""></center>
288 <map name="group__LMS__CHARSET_g0120c222a55e6d7d9bb24300300561ab_cgraph_map">
289 <area shape="rect" href="group__LMS__CHARSET.html#g893421821eacaa0fd2020c872361af15" title="lms_charset_conv_new_full" alt="" coords="233,5,436,32"></map>
294 <a class="anchor" name="g893421821eacaa0fd2020c872361af15"></a><!-- doxytag: member="lightmediascanner_charset_conv.h::lms_charset_conv_new_full" ref="g893421821eacaa0fd2020c872361af15" args="(int use_check, int use_fallback) GNUC_MALLOC GNUC_WARN_UNUSED_RESULT" -->
295 <div class="memitem">
296 <div class="memproto">
297 <table class="memname">
299 <td class="memname">API <a class="el" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a>* lms_charset_conv_new_full </td>
301 <td class="paramtype">int </td>
302 <td class="paramname"> <em>use_check</em>, </td>
305 <td class="paramkey"></td>
307 <td class="paramtype">int </td>
308 <td class="paramname"> <em>use_fallback</em></td><td> </td>
313 <td></td><td></td><td></td>
320 Create a new charset conversion tool controlling its behavior.<p>
321 Conversion tool will try to convert provided strings to UTF-8, just need to register known charsets with <a class="el" href="lightmediascanner__charset__conv_8c.html#0a3006beae6fc8c59eca75468c1bc000">lms_charset_conv_add()</a> and then call <a class="el" href="lightmediascanner__charset__conv_8c.html#35b728d3c5cb940027ebc47589971b25">lms_charset_conv()</a>.<p>
322 <dl class="return" compact><dt><b>Returns:</b></dt><dd>newly allocated conversion tool or NULL on error. </dd></dl>
324 <p>Definition at line <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00047">47</a> of file <a class="el" href="lightmediascanner__charset__conv_8c-source.html">lightmediascanner_charset_conv.c</a>.</p>
326 <p>Referenced by <a class="el" href="lightmediascanner__charset__conv_8c-source.html#l00101">lms_charset_conv_new()</a>.</p>
331 <hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 5 12:24:58 2008 for Light Media Scanner by
332 <a href="http://www.doxygen.org/index.html">
333 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>