iotivity 0.9.0
[platform/upstream/iotivity.git] / service / protocol-plugin / lib / cpluff / doc / reference / c-api / cpluff_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=iso-8859-1">
3 <title>C-Pluff C API: cpluff.h Source File</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css">
6 </head><body>
7 <!-- Generated by Doxygen 1.5.1 -->
8 <div class="tabs">
9   <ul>
10     <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11     <li><a href="modules.html"><span>Modules</span></a></li>
12     <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13     <li id="current"><a href="files.html"><span>Files</span></a></li>
14     <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
15   </ul></div>
16 <div class="tabs">
17   <ul>
18     <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19     <li><a href="globals.html"><span>Globals</span></a></li>
20   </ul></div>
21 <h1>cpluff.h</h1><a href="cpluff_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*-------------------------------------------------------------------------</span>
22 <a name="l00002"></a>00002 <span class="comment"> * C-Pluff, a plug-in framework for C</span>
23 <a name="l00003"></a>00003 <span class="comment"> * Copyright 2007 Johannes Lehtinen</span>
24 <a name="l00004"></a>00004 <span class="comment"> * </span>
25 <a name="l00005"></a>00005 <span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a</span>
26 <a name="l00006"></a>00006 <span class="comment"> * copy of this software and associated documentation files (the "Software"),</span>
27 <a name="l00007"></a>00007 <span class="comment"> * to deal in the Software without restriction, including without limitation</span>
28 <a name="l00008"></a>00008 <span class="comment"> * the rights to use, copy, modify, merge, publish, distribute, sublicense,</span>
29 <a name="l00009"></a>00009 <span class="comment"> * and/or sell copies of the Software, and to permit persons to whom the</span>
30 <a name="l00010"></a>00010 <span class="comment"> * Software is furnished to do so, subject to the following conditions:</span>
31 <a name="l00011"></a>00011 <span class="comment"> *</span>
32 <a name="l00012"></a>00012 <span class="comment"> * The above copyright notice and this permission notice shall be included</span>
33 <a name="l00013"></a>00013 <span class="comment"> * in all copies or substantial portions of the Software.</span>
34 <a name="l00014"></a>00014 <span class="comment"> *</span>
35 <a name="l00015"></a>00015 <span class="comment"> * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS</span>
36 <a name="l00016"></a>00016 <span class="comment"> * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF</span>
37 <a name="l00017"></a>00017 <span class="comment"> * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.</span>
38 <a name="l00018"></a>00018 <span class="comment"> * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY</span>
39 <a name="l00019"></a>00019 <span class="comment"> * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,</span>
40 <a name="l00020"></a>00020 <span class="comment"> * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE</span>
41 <a name="l00021"></a>00021 <span class="comment"> * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</span>
42 <a name="l00022"></a>00022 <span class="comment"> *-----------------------------------------------------------------------*/</span>
43 <a name="l00023"></a>00023 
44 <a name="l00033"></a>00033 <span class="preprocessor">#ifndef CPLUFF_H_</span>
45 <a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define CPLUFF_H_</span>
46 <a name="l00035"></a>00035 <span class="preprocessor"></span>
47 <a name="l00041"></a>00041 <span class="preprocessor">#include &lt;<a class="code" href="cpluffdef_8h.html">cpluffdef.h</a>&gt;</span>
48 <a name="l00042"></a>00042 
49 <a name="l00043"></a>00043 <span class="preprocessor">#ifdef __cplusplus</span>
50 <a name="l00044"></a>00044 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
51 <a name="l00045"></a>00045 <span class="preprocessor">#endif </span><span class="comment">/*__cplusplus*/</span>
52 <a name="l00046"></a>00046 
53 <a name="l00047"></a>00047 
54 <a name="l00048"></a>00048 <span class="comment">/* ------------------------------------------------------------------------</span>
55 <a name="l00049"></a>00049 <span class="comment"> * Defines</span>
56 <a name="l00050"></a>00050 <span class="comment"> * ----------------------------------------------------------------------*/</span>
57 <a name="l00051"></a>00051 
58 <a name="l00060"></a>00060 <span class="preprocessor">#ifndef CP_C_API</span>
59 <a name="l00061"></a><a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">00061</a> <span class="preprocessor"></span><span class="preprocessor">#define CP_C_API CP_IMPORT</span>
60 <a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
61 <a name="l00063"></a>00063 <span class="preprocessor"></span>
62 <a name="l00064"></a>00064 
63 <a name="l00073"></a>00073 
64 <a name="l00078"></a><a class="code" href="group__cScanFlags.html#g1d4b72334d60f1401e6616da54e4d6f1">00078</a> <span class="preprocessor">#define CP_SP_UPGRADE 0x01</span>
65 <a name="l00079"></a>00079 <span class="preprocessor"></span>
66 <a name="l00084"></a><a class="code" href="group__cScanFlags.html#g72cdcd1181d60fd3caf5d0e0dd59c33c">00084</a> <span class="preprocessor">#define CP_SP_STOP_ALL_ON_UPGRADE 0x02</span>
67 <a name="l00085"></a>00085 <span class="preprocessor"></span>
68 <a name="l00091"></a><a class="code" href="group__cScanFlags.html#gb5996fbc57c7ec3bb538bc80a3ebfc40">00091</a> <span class="preprocessor">#define CP_SP_STOP_ALL_ON_INSTALL 0x04</span>
69 <a name="l00092"></a>00092 <span class="preprocessor"></span>
70 <a name="l00097"></a><a class="code" href="group__cScanFlags.html#g7ca04507561932ae293e81c3636768b7">00097</a> <span class="preprocessor">#define CP_SP_RESTART_ACTIVE 0x08</span>
71 <a name="l00098"></a>00098 <span class="preprocessor"></span>
72 <a name="l00102"></a>00102 <span class="comment">/* ------------------------------------------------------------------------</span>
73 <a name="l00103"></a>00103 <span class="comment"> * Data types</span>
74 <a name="l00104"></a>00104 <span class="comment"> * ----------------------------------------------------------------------*/</span>
75 <a name="l00105"></a>00105 
76 <a name="l00122"></a>00122 <span class="comment">/* Enumerations */</span>
77 <a name="l00123"></a>00123 
78 <a name="l00133"></a><a class="code" href="group__cEnums.html#gd6a8106d281ffa4b1f43fe8e3effc7da">00133</a> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#gd6a8106d281ffa4b1f43fe8e3effc7da">cp_status_t</a> {
79 <a name="l00134"></a>00134 
80 <a name="l00139"></a>00139         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7da5ffbe0fe80af75e699e4b04909912f7a">CP_OK</a> = 0,
81 <a name="l00140"></a>00140 
82 <a name="l00142"></a>00142         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7dac4e31e28c38ba325fa7169da1a233950">CP_ERR_RESOURCE</a>,
83 <a name="l00143"></a>00143 
84 <a name="l00145"></a>00145         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7da6418acb9f17c3a00ea350684bff9782e">CP_ERR_UNKNOWN</a>,
85 <a name="l00146"></a>00146 
86 <a name="l00148"></a>00148         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7da2993572d373d8cc61f9655c10fbeefa5">CP_ERR_IO</a>,
87 <a name="l00149"></a>00149 
88 <a name="l00151"></a>00151         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7dadc486f602f89493e882cde6a364de0b7">CP_ERR_MALFORMED</a>,
89 <a name="l00152"></a>00152 
90 <a name="l00154"></a>00154         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7dab07cfdc96a5dbc3a3e359bae2534c9d2">CP_ERR_CONFLICT</a>,
91 <a name="l00155"></a>00155 
92 <a name="l00157"></a>00157         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7da068a07ac79fdc33dc0c47d14c37005f6">CP_ERR_DEPENDENCY</a>,
93 <a name="l00158"></a>00158 
94 <a name="l00160"></a>00160         <a class="code" href="group__cEnums.html#ggd6a8106d281ffa4b1f43fe8e3effc7dae9eb8fc6b508a70eae974760d8be07aa">CP_ERR_RUNTIME</a>
95 <a name="l00161"></a>00161         
96 <a name="l00162"></a>00162 };
97 <a name="l00163"></a>00163 
98 <a name="l00175"></a><a class="code" href="group__cEnums.html#gd517a8088e2ed89fda71251d9c7b3252">00175</a> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#gd517a8088e2ed89fda71251d9c7b3252">cp_plugin_state_t</a> {
99 <a name="l00176"></a>00176 
100 <a name="l00181"></a>00181         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b325290eacd4f02fb7d65eaf68f7251a99689">CP_PLUGIN_UNINSTALLED</a>,
101 <a name="l00182"></a>00182         
102 <a name="l00190"></a>00190         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b32521c91e4bef84a1d924456fb268a1d848b">CP_PLUGIN_INSTALLED</a>,
103 <a name="l00191"></a>00191         
104 <a name="l00202"></a>00202         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b325275596c790e344583d117d3c6bb4252bd">CP_PLUGIN_RESOLVED</a>,
105 <a name="l00203"></a>00203         
106 <a name="l00213"></a>00213         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b32522c6ca0c8d90c3acb01e336ce1711540c">CP_PLUGIN_STARTING</a>,
107 <a name="l00214"></a>00214         
108 <a name="l00224"></a>00224         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b32525aafd09bec81bb2bedfd7bfc8643051c">CP_PLUGIN_STOPPING</a>,
109 <a name="l00225"></a>00225         
110 <a name="l00230"></a>00230         <a class="code" href="group__cEnums.html#ggd517a8088e2ed89fda71251d9c7b3252953ad85aee24006f4a5079bfca73eb9f">CP_PLUGIN_ACTIVE</a>
111 <a name="l00231"></a>00231         
112 <a name="l00232"></a>00232 };
113 <a name="l00233"></a>00233 
114 <a name="l00241"></a><a class="code" href="group__cEnums.html#g952725f83949f4eb486c390c4ff72aeb">00241</a> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#g952725f83949f4eb486c390c4ff72aeb">cp_log_severity_t</a> {
115 <a name="l00242"></a>00242 
116 <a name="l00244"></a>00244         <a class="code" href="group__cEnums.html#gg952725f83949f4eb486c390c4ff72aeb22e3ccb1789e1f0ea3b35e1682fe8af8">CP_LOG_DEBUG</a>,
117 <a name="l00245"></a>00245         
118 <a name="l00247"></a>00247         <a class="code" href="group__cEnums.html#gg952725f83949f4eb486c390c4ff72aebcdb069d62e546b005ae6a81e6cdb0333">CP_LOG_INFO</a>,
119 <a name="l00248"></a>00248         
120 <a name="l00250"></a>00250         <a class="code" href="group__cEnums.html#gg952725f83949f4eb486c390c4ff72aeb26a8a8c987042689e5018e481d235ee0">CP_LOG_WARNING</a>,
121 <a name="l00251"></a>00251         
122 <a name="l00253"></a>00253         <a class="code" href="group__cEnums.html#gg952725f83949f4eb486c390c4ff72aebd99d2bd1dbae181f9a41e90e6bf8d14e">CP_LOG_ERROR</a>
123 <a name="l00254"></a>00254         
124 <a name="l00255"></a>00255 };
125 <a name="l00256"></a>00256 
126 <a name="l00260"></a>00260 <span class="comment">/* Typedefs */</span>
127 <a name="l00261"></a>00261 
128 <a name="l00268"></a>00268  
129 <a name="l00281"></a><a class="code" href="group__cTypedefsOpaque.html#gcb1aa0619dcefa746383c5e0833b62e7">00281</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="group__cTypedefsOpaque.html#gcb1aa0619dcefa746383c5e0833b62e7">cp_context_t</a> cp_context_t;
130 <a name="l00282"></a>00282 
131 <a name="l00291"></a>00291 
132 <a name="l00293"></a><a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">00293</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__plugin__info__t.html">cp_plugin_info_t</a> <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a>;
133 <a name="l00294"></a>00294 
134 <a name="l00296"></a><a class="code" href="group__cTypedefsShorthand.html#g1da07ec69dd85c103a4dd8d8e8bc9018">00296</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__plugin__import__t.html">cp_plugin_import_t</a> <a class="code" href="group__cTypedefsShorthand.html#g1da07ec69dd85c103a4dd8d8e8bc9018">cp_plugin_import_t</a>;
135 <a name="l00297"></a>00297 
136 <a name="l00299"></a><a class="code" href="group__cTypedefsShorthand.html#g4a19f7af87165d59dd82866006a96424">00299</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__ext__point__t.html">cp_ext_point_t</a> <a class="code" href="group__cTypedefsShorthand.html#g4a19f7af87165d59dd82866006a96424">cp_ext_point_t</a>;
137 <a name="l00300"></a>00300 
138 <a name="l00302"></a><a class="code" href="group__cTypedefsShorthand.html#gea86d23c48f7335c3b710b9a3af2bf89">00302</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__extension__t.html">cp_extension_t</a> <a class="code" href="group__cTypedefsShorthand.html#gea86d23c48f7335c3b710b9a3af2bf89">cp_extension_t</a>;
139 <a name="l00303"></a>00303 
140 <a name="l00305"></a><a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">00305</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__cfg__element__t.html">cp_cfg_element_t</a> <a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a>;
141 <a name="l00306"></a>00306 
142 <a name="l00308"></a><a class="code" href="group__cTypedefsShorthand.html#gca5d98d242f7c005f04b00bf77d1882e">00308</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcp__plugin__runtime__t.html">cp_plugin_runtime_t</a> <a class="code" href="group__cTypedefsShorthand.html#gca5d98d242f7c005f04b00bf77d1882e">cp_plugin_runtime_t</a>;
143 <a name="l00309"></a>00309 
144 <a name="l00311"></a><a class="code" href="group__cTypedefsShorthand.html#g53b128f964c24169c758a0c60248d602">00311</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#gd6a8106d281ffa4b1f43fe8e3effc7da">cp_status_t</a> <a class="code" href="group__cEnums.html#gd6a8106d281ffa4b1f43fe8e3effc7da">cp_status_t</a>;
145 <a name="l00312"></a>00312 
146 <a name="l00314"></a><a class="code" href="group__cTypedefsShorthand.html#g026780097ccf13e9896f2d4759aa642e">00314</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#gd517a8088e2ed89fda71251d9c7b3252">cp_plugin_state_t</a> <a class="code" href="group__cEnums.html#gd517a8088e2ed89fda71251d9c7b3252">cp_plugin_state_t</a>;
147 <a name="l00315"></a>00315 
148 <a name="l00317"></a><a class="code" href="group__cTypedefsShorthand.html#gfa3a21d1af3332cab04867d6f1b0b076">00317</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__cEnums.html#g952725f83949f4eb486c390c4ff72aeb">cp_log_severity_t</a> <a class="code" href="group__cEnums.html#g952725f83949f4eb486c390c4ff72aeb">cp_log_severity_t</a>;
149 <a name="l00318"></a>00318 
150 <a name="l00327"></a>00327 
151 <a name="l00344"></a><a class="code" href="group__cTypedefsFuncs.html#g24fde3d7324169d8448700123aa97c7a">00344</a> <span class="keyword">typedef</span> void (*<a class="code" href="group__cTypedefsFuncs.html#g24fde3d7324169d8448700123aa97c7a">cp_plugin_listener_func_t</a>)(<span class="keyword">const</span> <span class="keywordtype">char</span> *plugin_id, cp_plugin_state_t old_state, cp_plugin_state_t new_state, <span class="keywordtype">void</span> *user_data);
152 <a name="l00345"></a>00345 
153 <a name="l00358"></a><a class="code" href="group__cTypedefsFuncs.html#ga53e481fd552856aff67d8584f7e5614">00358</a> <span class="keyword">typedef</span> void (*<a class="code" href="group__cTypedefsFuncs.html#ga53e481fd552856aff67d8584f7e5614">cp_logger_func_t</a>)(cp_log_severity_t severity, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg, <span class="keyword">const</span> <span class="keywordtype">char</span> *apid, <span class="keywordtype">void</span> *user_data);
154 <a name="l00359"></a>00359 
155 <a name="l00369"></a><a class="code" href="group__cTypedefsFuncs.html#g91b11fd391854d0854cfde0779f8d707">00369</a> <span class="keyword">typedef</span> void (*<a class="code" href="group__cTypedefsFuncs.html#g91b11fd391854d0854cfde0779f8d707">cp_fatal_error_func_t</a>)(<span class="keyword">const</span> <span class="keywordtype">char</span> *msg);
156 <a name="l00370"></a>00370 
157 <a name="l00381"></a><a class="code" href="group__cTypedefsFuncs.html#gf55fb990664aaa069e72a8fa4da20034">00381</a> <span class="keyword">typedef</span> int (*<a class="code" href="group__cTypedefsFuncs.html#gf55fb990664aaa069e72a8fa4da20034">cp_run_func_t</a>)(<span class="keywordtype">void</span> *plugin_data);
158 <a name="l00382"></a>00382 
159 <a name="l00386"></a>00386 <span class="comment">/* Data structures */</span>
160 <a name="l00387"></a>00387 
161 <a name="l00396"></a><a class="code" href="structcp__plugin__info__t.html">00396</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> {
162 <a name="l00397"></a>00397         
163 <a name="l00405"></a><a class="code" href="structcp__plugin__info__t.html#f5351a0143adaf16c64b881aee01d893">00405</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#f5351a0143adaf16c64b881aee01d893">identifier</a>;
164 <a name="l00406"></a>00406         
165 <a name="l00413"></a><a class="code" href="structcp__plugin__info__t.html#5ac083a645d964373f022d03df4849c8">00413</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#5ac083a645d964373f022d03df4849c8">name</a>;
166 <a name="l00414"></a>00414         
167 <a name="l00420"></a><a class="code" href="structcp__plugin__info__t.html#56abfaab87c46691c1ef3ad0df23e864">00420</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#56abfaab87c46691c1ef3ad0df23e864">version</a>;
168 <a name="l00421"></a>00421         
169 <a name="l00429"></a><a class="code" href="structcp__plugin__info__t.html#8bf76789248b4737d6a9a1175ceadca5">00429</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#8bf76789248b4737d6a9a1175ceadca5">provider_name</a>;
170 <a name="l00430"></a>00430         
171 <a name="l00438"></a><a class="code" href="structcp__plugin__info__t.html#bfb5abdafe1c5db02dcd2922b32be4e6">00438</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#bfb5abdafe1c5db02dcd2922b32be4e6">plugin_path</a>;
172 <a name="l00439"></a>00439         
173 <a name="l00451"></a><a class="code" href="structcp__plugin__info__t.html#80147b4cbaeac68ad7a02dfe9c732e43">00451</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#80147b4cbaeac68ad7a02dfe9c732e43">abi_bw_compatibility</a>;
174 <a name="l00452"></a>00452         
175 <a name="l00465"></a><a class="code" href="structcp__plugin__info__t.html#a0db42bb2a075c5804c0aeecfab567d8">00465</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#a0db42bb2a075c5804c0aeecfab567d8">api_bw_compatibility</a>;
176 <a name="l00466"></a>00466         
177 <a name="l00475"></a><a class="code" href="structcp__plugin__info__t.html#8b1942a723f6a68c9afad9e52b7e78d1">00475</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#8b1942a723f6a68c9afad9e52b7e78d1">req_cpluff_version</a>;
178 <a name="l00476"></a>00476         
179 <a name="l00478"></a><a class="code" href="structcp__plugin__info__t.html#bca19d2e4af3752ceb056d638321b894">00478</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__plugin__info__t.html#bca19d2e4af3752ceb056d638321b894">num_imports</a>;
180 <a name="l00479"></a>00479         
181 <a name="l00484"></a><a class="code" href="structcp__plugin__info__t.html#e03a6d473f95a77ad6de9d43610f8d39">00484</a>         <a class="code" href="group__cTypedefsShorthand.html#g1da07ec69dd85c103a4dd8d8e8bc9018">cp_plugin_import_t</a> *<a class="code" href="structcp__plugin__info__t.html#e03a6d473f95a77ad6de9d43610f8d39">imports</a>;
182 <a name="l00485"></a>00485 
183 <a name="l00493"></a><a class="code" href="structcp__plugin__info__t.html#e466145debd47625f99bbc780e8950ed">00493</a>     <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#e466145debd47625f99bbc780e8950ed">runtime_lib_name</a>;
184 <a name="l00494"></a>00494     
185 <a name="l00501"></a><a class="code" href="structcp__plugin__info__t.html#3291d0de7ca4bbe510950be556641856">00501</a>     <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__info__t.html#3291d0de7ca4bbe510950be556641856">runtime_funcs_symbol</a>;
186 <a name="l00502"></a>00502     
187 <a name="l00504"></a><a class="code" href="structcp__plugin__info__t.html#845440eb771d52a4b271bfbd48fcb7ec">00504</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__plugin__info__t.html#845440eb771d52a4b271bfbd48fcb7ec">num_ext_points</a>;
188 <a name="l00505"></a>00505         
189 <a name="l00511"></a><a class="code" href="structcp__plugin__info__t.html#8299ae4ef53289492911a1334494e405">00511</a>         <a class="code" href="group__cTypedefsShorthand.html#g4a19f7af87165d59dd82866006a96424">cp_ext_point_t</a> *<a class="code" href="structcp__plugin__info__t.html#8299ae4ef53289492911a1334494e405">ext_points</a>;
190 <a name="l00512"></a>00512         
191 <a name="l00514"></a><a class="code" href="structcp__plugin__info__t.html#5774f2b85864891690291909ecbbf819">00514</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__plugin__info__t.html#5774f2b85864891690291909ecbbf819">num_extensions</a>;
192 <a name="l00515"></a>00515         
193 <a name="l00521"></a><a class="code" href="structcp__plugin__info__t.html#2288d4af96da6699b7a2c8b747bd42dc">00521</a>         <a class="code" href="group__cTypedefsShorthand.html#gea86d23c48f7335c3b710b9a3af2bf89">cp_extension_t</a> *<a class="code" href="structcp__plugin__info__t.html#2288d4af96da6699b7a2c8b747bd42dc">extensions</a>;
194 <a name="l00522"></a>00522 
195 <a name="l00523"></a>00523 };
196 <a name="l00524"></a>00524 
197 <a name="l00530"></a><a class="code" href="structcp__plugin__import__t.html">00530</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#g1da07ec69dd85c103a4dd8d8e8bc9018">cp_plugin_import_t</a> {
198 <a name="l00531"></a>00531         
199 <a name="l00536"></a><a class="code" href="structcp__plugin__import__t.html#29da905aeb4da90dae48b2aa19f5cc62">00536</a>         <span class="keywordtype">char</span> *plugin_id;
200 <a name="l00537"></a>00537         
201 <a name="l00546"></a><a class="code" href="structcp__plugin__import__t.html#56abfaab87c46691c1ef3ad0df23e864">00546</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__plugin__import__t.html#56abfaab87c46691c1ef3ad0df23e864">version</a>;
202 <a name="l00547"></a>00547         
203 <a name="l00557"></a><a class="code" href="structcp__plugin__import__t.html#69b1249c974e922ecdd066c43dc91f88">00557</a>         <span class="keywordtype">int</span> <a class="code" href="structcp__plugin__import__t.html#69b1249c974e922ecdd066c43dc91f88">optional</a>;
204 <a name="l00558"></a>00558 };
205 <a name="l00559"></a>00559 
206 <a name="l00566"></a><a class="code" href="structcp__ext__point__t.html">00566</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#g4a19f7af87165d59dd82866006a96424">cp_ext_point_t</a> {
207 <a name="l00567"></a>00567 
208 <a name="l00573"></a><a class="code" href="structcp__ext__point__t.html#e498b24942e6fdd73ce6c22505549680">00573</a>         <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> *<a class="code" href="structcp__ext__point__t.html#e498b24942e6fdd73ce6c22505549680">plugin</a>;
209 <a name="l00574"></a>00574         
210 <a name="l00580"></a>00580         <span class="keywordtype">char</span> *local_id;
211 <a name="l00581"></a>00581         
212 <a name="l00587"></a><a class="code" href="structcp__ext__point__t.html#f5351a0143adaf16c64b881aee01d893">00587</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__ext__point__t.html#f5351a0143adaf16c64b881aee01d893">identifier</a>;
213 <a name="l00588"></a>00588 
214 <a name="l00595"></a><a class="code" href="structcp__ext__point__t.html#5ac083a645d964373f022d03df4849c8">00595</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__ext__point__t.html#5ac083a645d964373f022d03df4849c8">name</a>;
215 <a name="l00596"></a>00596         
216 <a name="l00603"></a><a class="code" href="structcp__ext__point__t.html#2370171ff78694fa0871fd845ab3ad6f">00603</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__ext__point__t.html#2370171ff78694fa0871fd845ab3ad6f">schema_path</a>;
217 <a name="l00604"></a>00604 };
218 <a name="l00605"></a>00605 
219 <a name="l00611"></a><a class="code" href="structcp__extension__t.html">00611</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#gea86d23c48f7335c3b710b9a3af2bf89">cp_extension_t</a> {
220 <a name="l00612"></a>00612 
221 <a name="l00618"></a><a class="code" href="structcp__extension__t.html#e498b24942e6fdd73ce6c22505549680">00618</a>         <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> *<a class="code" href="structcp__extension__t.html#e498b24942e6fdd73ce6c22505549680">plugin</a>;
222 <a name="l00619"></a>00619         
223 <a name="l00625"></a><a class="code" href="structcp__extension__t.html#9fe304775bea17eeba3c3fd734d1e4bc">00625</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__extension__t.html#9fe304775bea17eeba3c3fd734d1e4bc">ext_point_id</a>;
224 <a name="l00626"></a>00626         
225 <a name="l00632"></a><a class="code" href="structcp__extension__t.html#eb234b64f623fd6c2bcbbc98bacb99ce">00632</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__extension__t.html#eb234b64f623fd6c2bcbbc98bacb99ce">local_id</a>;
226 <a name="l00633"></a>00633 
227 <a name="l00639"></a><a class="code" href="structcp__extension__t.html#f5351a0143adaf16c64b881aee01d893">00639</a>     <span class="keywordtype">char</span> *<a class="code" href="structcp__extension__t.html#f5351a0143adaf16c64b881aee01d893">identifier</a>;
228 <a name="l00640"></a>00640          
229 <a name="l00647"></a><a class="code" href="structcp__extension__t.html#5ac083a645d964373f022d03df4849c8">00647</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__extension__t.html#5ac083a645d964373f022d03df4849c8">name</a>;
230 <a name="l00648"></a>00648         
231 <a name="l00655"></a><a class="code" href="structcp__extension__t.html#a745fad14a2300fd48e55c33f580f91b">00655</a>         <a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> *<a class="code" href="structcp__extension__t.html#a745fad14a2300fd48e55c33f580f91b">configuration</a>;
232 <a name="l00656"></a>00656 };
233 <a name="l00657"></a>00657 
234 <a name="l00667"></a><a class="code" href="structcp__cfg__element__t.html">00667</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> {
235 <a name="l00668"></a>00668         
236 <a name="l00673"></a><a class="code" href="structcp__cfg__element__t.html#5ac083a645d964373f022d03df4849c8">00673</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__cfg__element__t.html#5ac083a645d964373f022d03df4849c8">name</a>;
237 <a name="l00674"></a>00674 
238 <a name="l00676"></a><a class="code" href="structcp__cfg__element__t.html#b6eced8675261543cd28efea6c7a0fa4">00676</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__cfg__element__t.html#b6eced8675261543cd28efea6c7a0fa4">num_atts</a>;
239 <a name="l00677"></a>00677         
240 <a name="l00682"></a><a class="code" href="structcp__cfg__element__t.html#719b3d0c1369478044ce59dc2f207c21">00682</a>         <span class="keywordtype">char</span> **<a class="code" href="structcp__cfg__element__t.html#719b3d0c1369478044ce59dc2f207c21">atts</a>;
241 <a name="l00683"></a>00683         
242 <a name="l00689"></a><a class="code" href="structcp__cfg__element__t.html#4e9aec275e566b978a3ccb4e043d8c61">00689</a>         <span class="keywordtype">char</span> *<a class="code" href="structcp__cfg__element__t.html#4e9aec275e566b978a3ccb4e043d8c61">value</a>;
243 <a name="l00690"></a>00690         
244 <a name="l00692"></a><a class="code" href="structcp__cfg__element__t.html#8c99879f94f30ed01e0b76847ab11237">00692</a>         <a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> *<a class="code" href="structcp__cfg__element__t.html#8c99879f94f30ed01e0b76847ab11237">parent</a>;
245 <a name="l00693"></a>00693         
246 <a name="l00695"></a><a class="code" href="structcp__cfg__element__t.html#589d64202487f78e3cc30dd2e04c5201">00695</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__cfg__element__t.html#589d64202487f78e3cc30dd2e04c5201">index</a>;
247 <a name="l00696"></a>00696         
248 <a name="l00698"></a><a class="code" href="structcp__cfg__element__t.html#b7c9e81d106b95f54ff71b9096ba5dc6">00698</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structcp__cfg__element__t.html#b7c9e81d106b95f54ff71b9096ba5dc6">num_children</a>;
249 <a name="l00699"></a>00699 
250 <a name="l00704"></a><a class="code" href="structcp__cfg__element__t.html#3c4e4c4df68a11f898566c3f90bcd534">00704</a>         <a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> *<a class="code" href="structcp__cfg__element__t.html#3c4e4c4df68a11f898566c3f90bcd534">children</a>;
251 <a name="l00705"></a>00705 };
252 <a name="l00706"></a>00706 
253 <a name="l00734"></a><a class="code" href="structcp__plugin__runtime__t.html">00734</a> <span class="keyword">struct </span><a class="code" href="group__cTypedefsShorthand.html#gca5d98d242f7c005f04b00bf77d1882e">cp_plugin_runtime_t</a> {
254 <a name="l00735"></a>00735 
255 <a name="l00753"></a>00753         <span class="keywordtype">void</span> *(*create)(cp_context_t *ctx);
256 <a name="l00754"></a>00754 
257 <a name="l00775"></a>00775         int (*<a class="code" href="structcp__plugin__runtime__t.html#5a6c64e5d2467d67cf4dd2498639b490">start</a>)(<span class="keywordtype">void</span> *data);
258 <a name="l00776"></a>00776         
259 <a name="l00800"></a>00800         void (*<a class="code" href="structcp__plugin__runtime__t.html#ede7dc51a6d9f47d0e21445dc952d5d4">stop</a>)(<span class="keywordtype">void</span> *data);
260 <a name="l00801"></a>00801 
261 <a name="l00814"></a>00814         void (*<a class="code" href="structcp__plugin__runtime__t.html#cc37619ea5a3ff4e39e53b9ce0e7ed4f">destroy</a>)(<span class="keywordtype">void</span> *data);
262 <a name="l00815"></a>00815 
263 <a name="l00816"></a>00816 };
264 <a name="l00817"></a>00817 
265 <a name="l00821"></a>00821 <span class="comment">/* ------------------------------------------------------------------------</span>
266 <a name="l00822"></a>00822 <span class="comment"> * Function declarations</span>
267 <a name="l00823"></a>00823 <span class="comment"> * ----------------------------------------------------------------------*/</span>
268 <a name="l00824"></a>00824 
269 <a name="l00844"></a>00844 
270 <a name="l00851"></a>00851 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__cFuncsFrameworkInfo.html#g5783cc2485fb87c487b524c2d0fcd702">cp_get_version</a>(<span class="keywordtype">void</span>) <a class="code" href="group__cDefinesGCCAttributes.html#g97e63f6bd1007545853c6ab4d0271e43">CP_GCC_PURE</a>;
271 <a name="l00852"></a>00852 
272 <a name="l00860"></a>00860 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> const <span class="keywordtype">char</span> *<a class="code" href="group__cFuncsFrameworkInfo.html#gd44dbf4f97f511f9f4df3f9fdbe6e865">cp_get_host_type</a>(<span class="keywordtype">void</span>) CP_GCC_PURE;
273 <a name="l00861"></a>00861 
274 <a name="l00874"></a>00874 
275 <a name="l00885"></a>00885 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsInit.html#gc794f61edbd896327fabddad2b3d2fd5">cp_set_fatal_error_handler</a>(<a class="code" href="group__cTypedefsFuncs.html#g91b11fd391854d0854cfde0779f8d707">cp_fatal_error_func_t</a> error_handler);
276 <a name="l00886"></a>00886 
277 <a name="l00902"></a>00902 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsInit.html#gc72ffd50777c3e898dae661c67b04ba9">cp_init</a>(<span class="keywordtype">void</span>);
278 <a name="l00903"></a>00903 
279 <a name="l00914"></a>00914 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsInit.html#g8dfbe51a3b7f23368a4ddf0d9987180e">cp_destroy</a>(<span class="keywordtype">void</span>);
280 <a name="l00915"></a>00915 
281 <a name="l00933"></a>00933 
282 <a name="l00947"></a>00947 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_context_t * <a class="code" href="group__cFuncsContext.html#g7d239c4fc07cf7d3095a20900444ad62">cp_create_context</a>(cp_status_t *status);
283 <a name="l00948"></a>00948 
284 <a name="l00956"></a>00956 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsContext.html#g754ff895992fab0aae81a09c727e5868">cp_destroy_context</a>(cp_context_t *ctx) <a class="code" href="group__cDefinesGCCAttributes.html#gca94f5f75abdc0d1c78572d95305c800">CP_GCC_NONNULL</a>(1);
285 <a name="l00957"></a>00957 
286 <a name="l00970"></a>00970 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsContext.html#g998d8350e64a129101f9da687ff5713b">cp_register_pcollection</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *dir) CP_GCC_NONNULL(1, 2);
287 <a name="l00971"></a>00971 
288 <a name="l00981"></a>00981 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsContext.html#g59817fdae1aeb28dbc7d3dcfc5568c15">cp_unregister_pcollection</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *dir) CP_GCC_NONNULL(1, 2);
289 <a name="l00982"></a>00982 
290 <a name="l00990"></a>00990 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsContext.html#g0473208ccfde69e0c57ec1f2b4789781">cp_unregister_pcollections</a>(cp_context_t *ctx) CP_GCC_NONNULL(1);
291 <a name="l00991"></a>00991 
292 <a name="l01004"></a>01004 
293 <a name="l01020"></a>01020 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsLogging.html#g5f6962ee1b09d60d9b98d25adfd55cff">cp_register_logger</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsFuncs.html#ga53e481fd552856aff67d8584f7e5614">cp_logger_func_t</a> logger, <span class="keywordtype">void</span> *user_data, cp_log_severity_t min_severity) CP_GCC_NONNULL(1, 2);
294 <a name="l01021"></a>01021 
295 <a name="l01028"></a>01028 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsLogging.html#g206e88cf84739ff2a0ee6e6925ca5ed8">cp_unregister_logger</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsFuncs.html#ga53e481fd552856aff67d8584f7e5614">cp_logger_func_t</a> logger) CP_GCC_NONNULL(1, 2);
296 <a name="l01029"></a>01029 
297 <a name="l01037"></a>01037 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsLogging.html#g6227362eb74ed67ad53ec20e40b9b7bf">cp_log</a>(cp_context_t *ctx, cp_log_severity_t severity, const <span class="keywordtype">char</span> *msg) CP_GCC_NONNULL(1, 3);
298 <a name="l01038"></a>01038 
299 <a name="l01046"></a>01046 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">int</span> <a class="code" href="group__cFuncsLogging.html#g16486c754d76d388e0f4c205668c7187">cp_is_logged</a>(cp_context_t *ctx, cp_log_severity_t severity) CP_GCC_NONNULL(1);
300 <a name="l01047"></a>01047 
301 <a name="l01059"></a>01059 
302 <a name="l01076"></a>01076 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> * <a class="code" href="group__cFuncsPlugin.html#gcb92588ad3b48dab5e9487698f6ef437">cp_load_plugin_descriptor</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *path, cp_status_t *status) CP_GCC_NONNULL(1, 2);
303 <a name="l01077"></a>01077 
304 <a name="l01094"></a>01094 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPlugin.html#gc862fd9be2bad2e0dfaafa6216ad34d4">cp_install_plugin</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> *pi) CP_GCC_NONNULL(1, 2);
305 <a name="l01095"></a>01095 
306 <a name="l01119"></a>01119 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPlugin.html#ga9603cd8d153b0ce192ac7b6e56779af">cp_scan_plugins</a>(cp_context_t *ctx, <span class="keywordtype">int</span> flags) CP_GCC_NONNULL(1);
307 <a name="l01120"></a>01120 
308 <a name="l01133"></a>01133 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPlugin.html#g2456b7740351c2530376ffb3a5ab7d92">cp_start_plugin</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>) CP_GCC_NONNULL(1, 2);
309 <a name="l01134"></a>01134 
310 <a name="l01147"></a>01147 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPlugin.html#g7bdc861d480c6c9addafbb0f481323fa">cp_stop_plugin</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>) CP_GCC_NONNULL(1, 2);
311 <a name="l01148"></a>01148 
312 <a name="l01154"></a>01154 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPlugin.html#g4dec7d61518adfa01da3f2892eaea20a">cp_stop_plugins</a>(cp_context_t *ctx) CP_GCC_NONNULL(1);
313 <a name="l01155"></a>01155 
314 <a name="l01164"></a>01164 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPlugin.html#g2249552dc67bb7893f81babee4a27454">cp_uninstall_plugin</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>) CP_GCC_NONNULL(1, 2);
315 <a name="l01165"></a>01165 
316 <a name="l01172"></a>01172 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPlugin.html#g01a607d9ae7f9fdb7e91a1845b0e5e99">cp_uninstall_plugins</a>(cp_context_t *ctx) CP_GCC_NONNULL(1);
317 <a name="l01173"></a>01173 
318 <a name="l01186"></a>01186 
319 <a name="l01200"></a>01200 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> * <a class="code" href="group__cFuncsPluginInfo.html#g4aba19886c68b2a3c1508c3b66110c12">cp_get_plugin_info</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>, cp_status_t *status) CP_GCC_NONNULL(1);
320 <a name="l01201"></a>01201 
321 <a name="l01214"></a>01214 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#gc552cbab3bf4b5a2b62a1420521383ad">cp_plugin_info_t</a> ** <a class="code" href="group__cFuncsPluginInfo.html#g015373cf40c08ea4a346a1bac5656fb1">cp_get_plugins_info</a>(cp_context_t *ctx, cp_status_t *status, <span class="keywordtype">int</span> *num) CP_GCC_NONNULL(1);
322 <a name="l01215"></a>01215 
323 <a name="l01228"></a>01228 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#g4a19f7af87165d59dd82866006a96424">cp_ext_point_t</a> ** <a class="code" href="group__cFuncsPluginInfo.html#g5fb5797d8d84e03275070666dc60a02d">cp_get_ext_points_info</a>(cp_context_t *ctx, cp_status_t *status, <span class="keywordtype">int</span> *num) CP_GCC_NONNULL(1);
324 <a name="l01229"></a>01229 
325 <a name="l01243"></a>01243 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#gea86d23c48f7335c3b710b9a3af2bf89">cp_extension_t</a> ** <a class="code" href="group__cFuncsPluginInfo.html#gc4321531959bb053be7698139b0ae168">cp_get_extensions_info</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *extpt_id, cp_status_t *status, <span class="keywordtype">int</span> *num) CP_GCC_NONNULL(1);
326 <a name="l01244"></a>01244 
327 <a name="l01255"></a>01255 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPluginInfo.html#gbac266df43a4850cf43224aa7b863942">cp_release_info</a>(cp_context_t *ctx, <span class="keywordtype">void</span> *info) CP_GCC_NONNULL(1, 2);
328 <a name="l01256"></a>01256 
329 <a name="l01265"></a>01265 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_plugin_state_t <a class="code" href="group__cFuncsPluginInfo.html#g926489fc366d412cd272ec4bfefe22e5">cp_get_plugin_state</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>) CP_GCC_NONNULL(1, 2);
330 <a name="l01266"></a>01266 
331 <a name="l01280"></a>01280 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPluginInfo.html#ge9930a241e859e9eb07e36981ef7077a">cp_register_plistener</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsFuncs.html#g24fde3d7324169d8448700123aa97c7a">cp_plugin_listener_func_t</a> listener, <span class="keywordtype">void</span> *user_data) CP_GCC_NONNULL(1, 2);
332 <a name="l01281"></a>01281 
333 <a name="l01289"></a>01289 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPluginInfo.html#g2cd49b8752e8971b569ae3e39b41723e">cp_unregister_plistener</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsFuncs.html#g24fde3d7324169d8448700123aa97c7a">cp_plugin_listener_func_t</a> listener) CP_GCC_NONNULL(1, 2);
334 <a name="l01290"></a>01290 
335 <a name="l01304"></a>01304 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> * <a class="code" href="group__cFuncsPluginInfo.html#g9868077c72df950607e2698153d593d1">cp_lookup_cfg_element</a>(<a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> *base, const <span class="keywordtype">char</span> *path) CP_GCC_PURE CP_GCC_NONNULL(1, 2);
336 <a name="l01305"></a>01305 
337 <a name="l01322"></a>01322 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">char</span> * <a class="code" href="group__cFuncsPluginInfo.html#g13f5121ab21951d59d3c6b985ed6adcd">cp_lookup_cfg_value</a>(<a class="code" href="group__cTypedefsShorthand.html#ge8a837c613935f505e66734c567ed700">cp_cfg_element_t</a> *base, const <span class="keywordtype">char</span> *path) CP_GCC_PURE CP_GCC_NONNULL(1, 2);
338 <a name="l01323"></a>01323 
339 <a name="l01351"></a>01351 
340 <a name="l01365"></a>01365 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsPluginExec.html#g357c45e87ff896e8541fe3758b19a035">cp_run_function</a>(cp_context_t *ctx, <a class="code" href="group__cTypedefsFuncs.html#gf55fb990664aaa069e72a8fa4da20034">cp_run_func_t</a> runfunc) CP_GCC_NONNULL(1, 2);
341 <a name="l01366"></a>01366 
342 <a name="l01376"></a>01376 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPluginExec.html#g4668727a5b1c9f0531f6d5dc77fa9f9f">cp_run_plugins</a>(cp_context_t *ctx) CP_GCC_NONNULL(1);
343 <a name="l01377"></a>01377 
344 <a name="l01389"></a>01389 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">int</span> <a class="code" href="group__cFuncsPluginExec.html#g7e212bc93d6588fc09995f310548c929">cp_run_plugins_step</a>(cp_context_t *ctx) CP_GCC_NONNULL(1);
345 <a name="l01390"></a>01390 
346 <a name="l01405"></a>01405 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsPluginExec.html#g9233fa8a46e408044030d2d767f1fda4">cp_set_context_args</a>(cp_context_t *ctx, <span class="keywordtype">char</span> **argv) CP_GCC_NONNULL(1, 2);
347 <a name="l01406"></a>01406 
348 <a name="l01418"></a>01418 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">char</span> **<a class="code" href="group__cFuncsPluginExec.html#g08929433446b28f8fce8b8beae0e742a">cp_get_context_args</a>(cp_context_t *ctx, <span class="keywordtype">int</span> *argc) CP_GCC_NONNULL(1);
349 <a name="l01419"></a>01419 
350 <a name="l01432"></a>01432 
351 <a name="l01445"></a>01445 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> cp_status_t <a class="code" href="group__cFuncsSymbols.html#g9d128b52c0ffe2d4215026fe59f9abeb">cp_define_symbol</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *name, <span class="keywordtype">void</span> *ptr) CP_GCC_NONNULL(1, 2, 3);
352 <a name="l01446"></a>01446 
353 <a name="l01477"></a>01477 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> *<a class="code" href="group__cFuncsSymbols.html#g8bc3b7fcf4f4ed414837f5a3998d46b7">cp_resolve_symbol</a>(cp_context_t *ctx, const <span class="keywordtype">char</span> *<span class="keywordtype">id</span>, const <span class="keywordtype">char</span> *name, cp_status_t *status) CP_GCC_NONNULL(1, 2, 3);
354 <a name="l01478"></a>01478 
355 <a name="l01488"></a>01488 <a class="code" href="group__cDefines.html#g4a0b99de58335624b91476b9cf1c4404">CP_C_API</a> <span class="keywordtype">void</span> <a class="code" href="group__cFuncsSymbols.html#g150629125a61ac9fa4e2095b0d9c7e57">cp_release_symbol</a>(cp_context_t *ctx, const <span class="keywordtype">void</span> *ptr) CP_GCC_NONNULL(1, 2);
356 <a name="l01489"></a>01489 
357 <a name="l01493"></a>01493 <span class="preprocessor">#ifdef __cplusplus</span>
358 <a name="l01494"></a>01494 <span class="preprocessor"></span>}
359 <a name="l01495"></a>01495 <span class="preprocessor">#endif </span><span class="comment">/*__cplusplus*/</span>
360 <a name="l01496"></a>01496 
361 <a name="l01497"></a>01497 <span class="preprocessor">#endif </span><span class="comment">/*CPLUFF_H_*/</span>
362 </pre></div><hr size="1">
363 <p class="footer">
364 <a href="http://www.c-pluff.org/">C-Pluff</a>, a plug-in framework for C<br>
365 Copyright 2007 <a href="http://www.jlehtinen.net/">Johannes Lehtinen</a>
366 </p>
367 <p class="generated-by">
368 Generated on Fri Apr 6 15:40:55 2007 for C-Pluff C API by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1
369 </p>
370 </body>
371 </html>