644c8c558ccec7a45481bea0e295c22e0449d9e9
[platform/framework/native/tizen-config-fw.git] / plugin_model / config_header.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet version="1.0"
3 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
4 <xsl:output method="text" version="1.0" encoding="UTF-8" indent="yes"/>
5 <xsl:strip-space elements="*"/>
6 <xsl:template match="/">
7 /*
8  * config-header.h
9  *
10  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
11  *
12  * Contact: MyoungJun Park &lt;email at samsung.com&gt;
13  *
14  * Licensed under the Apache License, Version 2.0 (the "License");
15  * you may not use this file except in compliance with the License.
16  * You may obtain a copy of the License at
17  *
18  * http://www.apache.org/licenses/LICENSE-2.0
19  *
20  * Unless required by applicable law or agreed to in writing, software
21  * distributed under the License is distributed on an "AS IS" BASIS,
22  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23  * See the License for the specific language governing permissions and
24  * limitations under the License.
25  *
26  */
27 #ifndef bool
28 typedef int bool;
29 #ifndef true
30 #define true 1
31 #endif
32 #ifndef false
33 #define false 0
34 #endif
35 #endif
36 <xsl:apply-templates select="configlists/config"></xsl:apply-templates>
37 </xsl:template>
38
39 <xsl:template match="config">
40 char* <xsl:value-of select="./@name"/>_plugin_path();<xsl:text>&#xa;</xsl:text>
41 <xsl:apply-templates select="plugin/function"></xsl:apply-templates>
42 </xsl:template>
43 <xsl:template match="function">
44
45 <xsl:choose>
46         <xsl:when test="../../@type='string'">
47 <!-- begin choose STRING-->
48 <xsl:choose>
49         <xsl:when test="./@type='init'">
50 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
51                 </xsl:when>
52
53         <xsl:when test="./@type='destroy'">
54 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
55                 </xsl:when>
56
57         <xsl:when test="./@type='get'">
58 char* <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key);<xsl:text>&#xa;</xsl:text>
59                 </xsl:when>
60
61         <xsl:when test="./@type='set'">
62 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key, char* value);<xsl:text>&#xa;</xsl:text>
63 <xsl:text>&#xa;</xsl:text><xsl:text>&#xa;</xsl:text>
64                 </xsl:when>
65 </xsl:choose>
66 <!-- end choose STRING-->
67         </xsl:when>
68         <xsl:when test="../../@type='int'">
69 <!-- begin choose INT-->
70 <xsl:choose>
71         <xsl:when test="./@type='init'">
72 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
73                 </xsl:when>
74
75         <xsl:when test="./@type='destroy'">
76 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
77                 </xsl:when>
78
79         <xsl:when test="./@type='get'">
80 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key);<xsl:text>&#xa;</xsl:text>
81                 </xsl:when>
82
83         <xsl:when test="./@type='set'">
84 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key, int value);<xsl:text>&#xa;</xsl:text>
85 <xsl:text>&#xa;</xsl:text><xsl:text>&#xa;</xsl:text>
86                 </xsl:when>
87 </xsl:choose>
88 <!-- end choose INT -->
89         </xsl:when>
90         <xsl:when test="../../@type='bool'">
91 <!-- begin choose BOOL -->
92 <xsl:choose>
93         <xsl:when test="./@type='init'">
94 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
95                 </xsl:when>
96
97         <xsl:when test="./@type='destroy'">
98 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
99                 </xsl:when>
100
101         <xsl:when test="./@type='get'">
102 bool <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key);<xsl:text>&#xa;</xsl:text>
103                 </xsl:when>
104
105         <xsl:when test="./@type='set'">
106 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key, bool value);<xsl:text>&#xa;</xsl:text>
107 <xsl:text>&#xa;</xsl:text><xsl:text>&#xa;</xsl:text>
108                 </xsl:when>
109 </xsl:choose>
110 <!-- end choose BOOL -->
111         </xsl:when>
112
113         <xsl:when test="../../@type='float'">
114 <!-- begin choose FLOAT -->
115 <xsl:choose>
116         <xsl:when test="./@type='init'">
117 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
118                 </xsl:when>
119
120         <xsl:when test="./@type='destroy'">
121 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
122                 </xsl:when>
123
124         <xsl:when test="./@type='get'">
125 float <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key);<xsl:text>&#xa;</xsl:text>
126                 </xsl:when>
127
128         <xsl:when test="./@type='set'">
129 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key, float value);<xsl:text>&#xa;</xsl:text>
130 <xsl:text>&#xa;</xsl:text><xsl:text>&#xa;</xsl:text>
131                 </xsl:when>
132 </xsl:choose>
133 <!-- end choose FLOAT -->
134         </xsl:when>
135
136         <xsl:when test="../../@type='list'">
137 <!-- begin choose LIST -->
138 <xsl:choose>
139         <xsl:when test="./@type='init'">
140 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
141                 </xsl:when>
142
143         <xsl:when test="./@type='destroy'">
144 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>();<xsl:text>&#xa;</xsl:text>
145                 </xsl:when>
146
147         <xsl:when test="./@type='get'">
148 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>_list(char* key, void (*callback)(int,void* , void*), void* data);<xsl:text>&#xa;</xsl:text>
149                 </xsl:when>
150
151                 <!-- <xsl:when test="./@type='set'">
152 int <xsl:value-of select="../../@name"/>_<xsl:value-of select="./@type"/>(char* key, float value);<xsl:text>&#xa;</xsl:text>
153 <xsl:text>&#xa;</xsl:text><xsl:text>&#xa;</xsl:text>
154                 </xsl:when> -->
155 </xsl:choose>
156 <!-- end choose LIST -->
157         </xsl:when>
158
159
160 </xsl:choose>
161
162 </xsl:template>
163 </xsl:stylesheet>
164
165
166