add new api docs.
[lms] / www / api / lightmediascanner__plugin_8h-source.html
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: src/lib/lightmediascanner_plugin.h Source File</title>
4 <link href="tabs.css" rel="stylesheet" type="text/css">
5 <link href="doxygen.css" rel="stylesheet" type="text/css">
6 </head><body>
7 <!-- Generated by Doxygen 1.5.8 -->
8 <div class="navigation" id="top">
9   <div class="tabs">
10     <ul>
11       <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12       <li><a href="modules.html"><span>Modules</span></a></li>
13       <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
14       <li class="current"><a href="files.html"><span>Files</span></a></li>
15     </ul>
16   </div>
17   <div class="tabs">
18     <ul>
19       <li><a href="files.html"><span>File&nbsp;List</span></a></li>
20       <li><a href="globals.html"><span>Globals</span></a></li>
21     </ul>
22   </div>
23 <h1>src/lib/lightmediascanner_plugin.h</h1><a href="lightmediascanner__plugin_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
24 <a name="l00133"></a>00133 <span class="preprocessor">#ifndef _LIGHTMEDIASCANNER_PLUGIN_H_</span>
25 <a name="l00134"></a><a class="code" href="lightmediascanner__plugin_8h.html#25abdf2375defcfc83bf95ef930fc739">00134</a> <span class="preprocessor"></span><span class="preprocessor">#define _LIGHTMEDIASCANNER_PLUGIN_H_ 1</span>
26 <a name="l00135"></a>00135 <span class="preprocessor"></span>
27 <a name="l00136"></a>00136 <span class="preprocessor">#include &lt;<a class="code" href="lightmediascanner_8h.html">lightmediascanner.h</a>&gt;</span>
28 <a name="l00137"></a>00137 <span class="preprocessor">#include &lt;<a class="code" href="lightmediascanner__charset__conv_8h.html">lightmediascanner_charset_conv.h</a>&gt;</span>
29 <a name="l00138"></a>00138 <span class="preprocessor">#include &lt;sqlite3.h&gt;</span>
30 <a name="l00139"></a>00139 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
31 <a name="l00140"></a>00140 
32 <a name="l00141"></a>00141 <span class="preprocessor">#ifdef __cplusplus</span>
33 <a name="l00142"></a>00142 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
34 <a name="l00143"></a>00143 <span class="preprocessor">#endif</span>
35 <a name="l00144"></a>00144 <span class="preprocessor"></span>
36 <a name="l00145"></a><a class="code" href="structlms__file__info.html">00145</a>     <span class="keyword">struct </span><a class="code" href="structlms__file__info.html">lms_file_info</a> {
37 <a name="l00146"></a><a class="code" href="structlms__file__info.html#1fa6966afec95bbb00ee01f345948e44">00146</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__file__info.html#1fa6966afec95bbb00ee01f345948e44">path</a>; 
38 <a name="l00147"></a><a class="code" href="structlms__file__info.html#9d74df2696cfd0f516e61e9db2b35731">00147</a>         <span class="keywordtype">int</span> <a class="code" href="structlms__file__info.html#9d74df2696cfd0f516e61e9db2b35731">path_len</a>; 
39 <a name="l00148"></a><a class="code" href="structlms__file__info.html#ccc82711360714ff6ccd373fb7a42112">00148</a>         <span class="keywordtype">int</span> <a class="code" href="structlms__file__info.html#ccc82711360714ff6ccd373fb7a42112">base</a>; 
40 <a name="l00149"></a><a class="code" href="structlms__file__info.html#d68ded5c64ae28a4976637f8483e9cfe">00149</a>         int64_t <a class="code" href="structlms__file__info.html#d68ded5c64ae28a4976637f8483e9cfe">id</a>; 
41 <a name="l00150"></a><a class="code" href="structlms__file__info.html#4aa878eefdde84541021087192b9dacd">00150</a>         time_t <a class="code" href="structlms__file__info.html#4aa878eefdde84541021087192b9dacd">mtime</a>; 
42 <a name="l00151"></a><a class="code" href="structlms__file__info.html#570ae808983e67ae7b22a2fec892cffd">00151</a>         time_t <a class="code" href="structlms__file__info.html#570ae808983e67ae7b22a2fec892cffd">dtime</a>; 
43 <a name="l00152"></a><a class="code" href="structlms__file__info.html#b318b81fc934636a904f5d84efe8c1ee">00152</a>         <span class="keywordtype">size_t</span> <a class="code" href="structlms__file__info.html#b318b81fc934636a904f5d84efe8c1ee">size</a>; 
44 <a name="l00153"></a>00153     };
45 <a name="l00154"></a>00154 
46 <a name="l00155"></a><a class="code" href="structlms__context.html">00155</a>     <span class="keyword">struct </span><a class="code" href="structlms__context.html">lms_context</a> {
47 <a name="l00156"></a><a class="code" href="structlms__context.html#310d38a2fab9ecea67601d0c6a3d8d81">00156</a>         sqlite3 *<a class="code" href="structlms__context.html#310d38a2fab9ecea67601d0c6a3d8d81">db</a>; 
48 <a name="l00157"></a><a class="code" href="structlms__context.html#a5ce50393bbe62f6357934a1d9ce5a61">00157</a>         <a class="code" href="group__LMS__CHARSET.html#g50e57a19bb3d062fe7eea437a8b8e949">lms_charset_conv_t</a> *<a class="code" href="structlms__context.html#a5ce50393bbe62f6357934a1d9ce5a61">cs_conv</a>; 
49 <a name="l00158"></a>00158     };
50 <a name="l00159"></a>00159 
51 <a name="l00160"></a><a class="code" href="lightmediascanner__plugin_8h.html#558e8f031ecb3e6b8adf7d98f3e4fcd6">00160</a>     <span class="keyword">typedef</span> <span class="keywordtype">void</span> *(*lms_plugin_match_fn_t)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p, <span class="keyword">const</span> <span class="keywordtype">char</span> *path, <span class="keywordtype">int</span> len, <span class="keywordtype">int</span> base);
52 <a name="l00161"></a><a class="code" href="lightmediascanner__plugin_8h.html#649350fd7015fa63ca86c43906c3f175">00161</a>     <span class="keyword">typedef</span> int (*<a class="code" href="lightmediascanner__plugin_8h.html#649350fd7015fa63ca86c43906c3f175">lms_plugin_parse_fn_t</a>)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p, <span class="keyword">struct </span><a class="code" href="structlms__context.html">lms_context</a> *ctxt, <span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="structlms__file__info.html">lms_file_info</a> *finfo, <span class="keywordtype">void</span> *match);
53 <a name="l00162"></a><a class="code" href="lightmediascanner__plugin_8h.html#44576c68c208c78f34f41fcd6c7c2c4b">00162</a>     <span class="keyword">typedef</span> int (*<a class="code" href="lightmediascanner__plugin_8h.html#44576c68c208c78f34f41fcd6c7c2c4b">lms_plugin_close_fn_t</a>)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p);
54 <a name="l00163"></a><a class="code" href="lightmediascanner__plugin_8h.html#6bfa82e6e83e85747048f41dfb334acd">00163</a>     <span class="keyword">typedef</span> int (*<a class="code" href="lightmediascanner__plugin_8h.html#6bfa82e6e83e85747048f41dfb334acd">lms_plugin_setup_fn_t</a>)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p, <span class="keyword">struct </span><a class="code" href="structlms__context.html">lms_context</a> *ctxt);
55 <a name="l00164"></a><a class="code" href="lightmediascanner__plugin_8h.html#875d300da41e72865452c6ae44687b77">00164</a>     <span class="keyword">typedef</span> int (*<a class="code" href="lightmediascanner__plugin_8h.html#875d300da41e72865452c6ae44687b77">lms_plugin_start_fn_t</a>)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p, <span class="keyword">struct </span><a class="code" href="structlms__context.html">lms_context</a> *ctxt);
56 <a name="l00165"></a><a class="code" href="lightmediascanner__plugin_8h.html#c72facc8d4fa98f660fd064c80d5b321">00165</a>     <span class="keyword">typedef</span> int (*<a class="code" href="lightmediascanner__plugin_8h.html#c72facc8d4fa98f660fd064c80d5b321">lms_plugin_finish_fn_t</a>)(<a class="code" href="structlms__plugin.html">lms_plugin_t</a> *p, <span class="keyword">struct </span><a class="code" href="structlms__context.html">lms_context</a> *ctxt);
57 <a name="l00166"></a>00166 
58 <a name="l00167"></a><a class="code" href="structlms__plugin.html">00167</a>     <span class="keyword">struct </span><a class="code" href="structlms__plugin.html">lms_plugin</a> {
59 <a name="l00168"></a><a class="code" href="structlms__plugin.html#2048d92b3d8918a6a2bb2cf39a375e9a">00168</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__plugin.html#2048d92b3d8918a6a2bb2cf39a375e9a">name</a>; 
60 <a name="l00169"></a><a class="code" href="structlms__plugin.html#5b532e6e50911f02fd9e123489c62a0f">00169</a>         <a class="code" href="lightmediascanner__plugin_8h.html#558e8f031ecb3e6b8adf7d98f3e4fcd6">lms_plugin_match_fn_t</a> <a class="code" href="structlms__plugin.html#5b532e6e50911f02fd9e123489c62a0f">match</a>; 
61 <a name="l00170"></a><a class="code" href="structlms__plugin.html#0d3361b489eb7c7c4ecc7917c0390b9e">00170</a>         <a class="code" href="lightmediascanner__plugin_8h.html#649350fd7015fa63ca86c43906c3f175">lms_plugin_parse_fn_t</a> <a class="code" href="structlms__plugin.html#0d3361b489eb7c7c4ecc7917c0390b9e">parse</a>; 
62 <a name="l00171"></a><a class="code" href="structlms__plugin.html#4921b3b79c7ecdddbe9f1a7c9f5019c7">00171</a>         <a class="code" href="lightmediascanner__plugin_8h.html#44576c68c208c78f34f41fcd6c7c2c4b">lms_plugin_close_fn_t</a> <a class="code" href="structlms__plugin.html#4921b3b79c7ecdddbe9f1a7c9f5019c7">close</a>; 
63 <a name="l00172"></a><a class="code" href="structlms__plugin.html#aeff2e030242ffdf3bdc512a5ef6cbec">00172</a>         <a class="code" href="lightmediascanner__plugin_8h.html#6bfa82e6e83e85747048f41dfb334acd">lms_plugin_setup_fn_t</a> <a class="code" href="structlms__plugin.html#aeff2e030242ffdf3bdc512a5ef6cbec">setup</a>; 
64 <a name="l00173"></a><a class="code" href="structlms__plugin.html#b3dffd208749a53ad2eb5ffb6d1b7d07">00173</a>         <a class="code" href="lightmediascanner__plugin_8h.html#875d300da41e72865452c6ae44687b77">lms_plugin_start_fn_t</a> <a class="code" href="structlms__plugin.html#b3dffd208749a53ad2eb5ffb6d1b7d07">start</a>; 
65 <a name="l00174"></a><a class="code" href="structlms__plugin.html#839d286e12caa0711f3987adb4b803f0">00174</a>         <a class="code" href="lightmediascanner__plugin_8h.html#c72facc8d4fa98f660fd064c80d5b321">lms_plugin_finish_fn_t</a> <a class="code" href="structlms__plugin.html#839d286e12caa0711f3987adb4b803f0">finish</a>; 
66 <a name="l00175"></a>00175     };
67 <a name="l00176"></a>00176 
68 <a name="l00177"></a><a class="code" href="structlms__plugin__info.html">00177</a>     <span class="keyword">struct </span><a class="code" href="structlms__plugin__info.html">lms_plugin_info</a> {
69 <a name="l00178"></a><a class="code" href="structlms__plugin__info.html#fad60ec7f8d34b2082b353a03e2cb836">00178</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__plugin__info.html#fad60ec7f8d34b2082b353a03e2cb836">name</a>; 
70 <a name="l00179"></a><a class="code" href="structlms__plugin__info.html#d5fd907e4bcc553eb9474aa132435c9c">00179</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> *<a class="code" href="structlms__plugin__info.html#d5fd907e4bcc553eb9474aa132435c9c">categories</a>; 
71 <a name="l00180"></a><a class="code" href="structlms__plugin__info.html#2e1df9478dd1f9dc62e81e208a2ebd3e">00180</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__plugin__info.html#2e1df9478dd1f9dc62e81e208a2ebd3e">description</a>; 
72 <a name="l00181"></a><a class="code" href="structlms__plugin__info.html#032d3fd2490ad7907e1ea27abad59915">00181</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__plugin__info.html#032d3fd2490ad7907e1ea27abad59915">version</a>; 
73 <a name="l00182"></a><a class="code" href="structlms__plugin__info.html#5dd799fc0e3dd7e798f053ecf773e59a">00182</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> *<a class="code" href="structlms__plugin__info.html#5dd799fc0e3dd7e798f053ecf773e59a">authors</a>; 
74 <a name="l00183"></a><a class="code" href="structlms__plugin__info.html#8f5826185c7cb3a4155fca8683b817e2">00183</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structlms__plugin__info.html#8f5826185c7cb3a4155fca8683b817e2">uri</a>; 
75 <a name="l00184"></a>00184     };
76 <a name="l00185"></a>00185 
77 <a name="l00186"></a>00186 
78 <a name="l00187"></a>00187 <span class="preprocessor">#ifdef __cplusplus</span>
79 <a name="l00188"></a>00188 <span class="preprocessor"></span>}
80 <a name="l00189"></a>00189 <span class="preprocessor">#endif</span>
81 <a name="l00190"></a>00190 <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* _LIGHTMEDIASCANNER_PLUGIN_H_ */</span>
82 </pre></div></div>
83 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Apr 22 23:56:01 2009 for Light Media Scanner by&nbsp;
84 <a href="http://www.doxygen.org/index.html">
85 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
86 </body>
87 </html>