1 /*
2  * Copyright (C) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef PLUGIN_METADATA_H
17 #define PLUGIN_METADATA_H
18 
19 namespace OHOS {
20 namespace MultimediaPlugin {
21 const std::vector<std::string> META_DATA = {
22     R"(
23         {
24           "packageName":"LibJpegPlugin",
25           "version":"1.0.0.0",
26           "targetVersion":"1.0.0.0",
27           "libraryPath":"libjpegplugin.z.so",
28           "classes": [
29             {
30               "className":"OHOS::ImagePlugin::JpegDecoder",
31               "services": [
32                 {
33                   "interfaceID":2,
34                   "serviceType":0
35                 }
36               ],
37               "priority":100,
38               "capabilities": [
39                 {
40                   "name":"encodeFormat",
41                   "type":"string",
42                   "value": "image/jpeg"
43                 }
44               ]
45             },
46             {
47               "className":"OHOS::ImagePlugin::JpegEncoder",
48               "services": [
49                 {
50                   "interfaceID":3,
51                   "serviceType":0
52                 }
53               ],
54               "priority":100,
55               "capabilities": [
56                 {
57                   "name":"encodeFormat",
58                   "type":"string",
59                   "value": "image/jpeg"
60                 }
61               ]
62             }
63           ]
64         }
65     )",
66     R"(
67         {
68           "packageName":"LibPngPlugin",
69           "version":"1.0.0.0",
70           "targetVersion":"1.0.0.0",
71           "libraryPath":"libpngplugin.z.so",
72           "classes": [
73             {
74               "className":"OHOS::ImagePlugin::PngDecoder",
75               "services": [
76                 {
77                   "interfaceID":2,
78                   "serviceType":0
79                 }
80               ],
81               "priority":100,
82               "capabilities": [
83                 {
84                   "name":"encodeFormat",
85                   "type":"string",
86                   "value": "image/png"
87                 }
88               ]
89             }
90           ]
91         }
92     )",
93     R"(
94         {
95           "packageName":"LibRawPlugin",
96           "version":"1.0.0.0",
97           "targetVersion":"1.0.0.0",
98           "libraryPath":"librawplugin.z.so",
99           "classes": [
100             {
101               "className":"OHOS::ImagePlugin::RawDecoder",
102               "services": [
103                 {
104                   "interfaceID":2,
105                   "serviceType":0
106                 }
107               ],
108               "priority":100,
109               "capabilities": [
110                 {
111                   "name":"encodeFormat",
112                   "type":"string",
113                   "value": "image/x-raw"
114                 }
115               ]
116             }
117           ]
118         }
119     )",
120     R"(
121         {
122           "packageName":"LibSvgPlugin",
123           "version":"1.0.0.0",
124           "targetVersion":"1.0.0.0",
125           "libraryPath":"libsvgplugin.z.so",
126           "classes": [
127             {
128               "className":"OHOS::ImagePlugin::SvgDecoder",
129               "services": [
130                 {
131                   "interfaceID":2,
132                   "serviceType":0
133                 }
134               ],
135               "priority":100,
136               "capabilities": [
137                 {
138                   "name":"encodeFormat",
139                   "type":"string",
140                   "value": "image/svg+xml"
141                 }
142               ]
143             }
144           ]
145         }
146     )",
147     R"(
148         {
149           "packageName":"LibWebpPlugin",
150           "version":"1.0.0.0",
151           "targetVersion":"1.0.0.0",
152           "libraryPath":"libwebpplugin.z.so",
153           "classes": [
154             {
155               "className":"OHOS::ImagePlugin::WebpDecoder",
156               "services": [
157                 {
158                   "interfaceID":2,
159                   "serviceType":0
160                 }
161               ],
162               "priority":100,
163               "capabilities": [
164                 {
165                   "name":"encodeFormat",
166                   "type":"string",
167                   "value": "image/webp"
168                 }
169               ]
170             },
171             {
172               "className":"OHOS::ImagePlugin::WebpEncoder",
173               "services": [
174                 {
175                   "interfaceID":3,
176                   "serviceType":0
177                 }
178               ],
179               "priority":100,
180               "capabilities": [
181                 {
182                   "name":"encodeFormat",
183                   "type":"string",
184                   "value": "image/webp"
185                 }
186               ]
187             }
188           ]
189         }
190     )",
191     R"(
192         {
193           "packageName":"LibBmpPlugin",
194           "version":"1.0.0.0",
195           "targetVersion":"1.0.0.0",
196           "libraryPath":"libbmpplugin.z.so",
197           "classes": [
198             {
199               "className":"OHOS::ImagePlugin::BmpDecoder",
200               "services": [
201                 {
202                   "interfaceID":2,
203                   "serviceType":0
204                 }
205               ],
206               "priority":100,
207               "capabilities": [
208                 {
209                   "name":"encodeFormat",
210                   "type":"string",
211                   "value": "image/bmp"
212                 }
213               ]
214             }
215           ]
216         }
217     )",
218     R"(
219         {
220           "packageName":"LibGifPlugin",
221           "version":"1.0.0.0",
222           "targetVersion":"1.0.0.0",
223           "libraryPath":"libgifplugin.z.so",
224           "classes": [
225             {
226               "className":"OHOS::ImagePlugin::GifEncoder",
227               "services": [
228                 {
229                   "interfaceID":3,
230                   "serviceType":0
231                 }
232               ],
233               "priority":100,
234               "capabilities": [
235                 {
236                   "name":"encodeFormat",
237                   "type":"string",
238                   "value": "image/gif"
239                 }
240               ]
241             }
242           ]
243         }
244     )",
245     R"(
246         {
247           "packageName":"LibExtPlugin",
248           "version":"1.0.0.0",
249           "targetVersion":"1.0.0.0",
250           "libraryPath":"libextplugin.z.so",
251           "classes": [
252             {
253               "className":"OHOS::ImagePlugin::ExtDecoder",
254               "services": [
255                 {
256                   "interfaceID":2,
257                   "serviceType":0
258                 }
259               ],
260               "priority":100,
261               "capabilities": [
262                 {
263                   "name":"encodeFormat",
264                   "type":"string",
265                   "value": "image/extended"
266                 }
267               ]
268             },
269             {
270               "className":"OHOS::ImagePlugin::ExtEncoder",
271               "services": [
272                 {
273                   "interfaceID":3,
274                   "serviceType":0
275                 }
276               ],
277               "priority":100,
278               "capabilities": [
279                 {
280                   "name":"encodeFormat",
281                   "type":"string",
282                   "value": "image/jpeg,image/png,image/webp"
283                 }
284               ]
285             }
286         ]
287       }
288 
289     )",
290 
291     R"(
292         {
293           "packageName":"LibImageFormatAgent",
294           "version":"1.0.0.0",
295           "targetVersion":"1.0.0.0",
296           "libraryPath":"libimageformatagent.z.so",
297           "classes": [
298             {
299               "className":"OHOS::ImagePlugin::JpegFormatAgent",
300               "services": [
301                 {
302                   "interfaceID":1,
303                   "serviceType":0
304                 }
305               ],
306               "priority":100,
307               "capabilities": [
308                 {
309                   "name":"encodeFormat",
310                   "type":"string",
311                   "value": "image/jpeg"
312                 }
313               ]
314             },
315             {
316               "className":"OHOS::ImagePlugin::PngFormatAgent",
317               "services": [
318                 {
319                   "interfaceID":1,
320                   "serviceType":0
321                 }
322               ],
323               "priority":100,
324               "capabilities": [
325                 {
326                   "name":"encodeFormat",
327                   "type":"string",
328                   "value": "image/png"
329                 }
330               ]
331             },
332             {
333               "className":"OHOS::ImagePlugin::GifFormatAgent",
334               "services": [
335                 {
336                   "interfaceID":1,
337                   "serviceType":0
338                 }
339               ],
340               "priority":100,
341               "capabilities": [
342                 {
343                   "name":"encodeFormat",
344                   "type":"string",
345                   "value": "image/gif"
346                 }
347               ]
348             },
349             {
350               "className":"OHOS::ImagePlugin::HeifFormatAgent",
351               "services": [
352                 {
353                   "interfaceID":1,
354                   "serviceType":0
355                 }
356               ],
357               "priority":100,
358               "capabilities": [
359                 {
360                   "name":"encodeFormat",
361                   "type":"string",
362                   "value": "image/heif"
363                 }
364               ]
365             },
366             {
367               "className":"OHOS::ImagePlugin::WebpFormatAgent",
368               "services": [
369                 {
370                   "interfaceID":1,
371                   "serviceType":0
372                 }
373               ],
374               "priority":100,
375               "capabilities": [
376                 {
377                   "name":"encodeFormat",
378                   "type":"string",
379                   "value": "image/webp"
380                 }
381               ]
382             },
383             {
384               "className":"OHOS::ImagePlugin::BmpFormatAgent",
385               "services": [
386                 {
387                   "interfaceID":1,
388                   "serviceType":0
389                 }
390               ],
391               "priority":100,
392               "capabilities": [
393                 {
394                   "name":"encodeFormat",
395                   "type":"string",
396                   "value": "image/bmp"
397                 }
398               ]
399             },
400             {
401               "className":"OHOS::ImagePlugin::WbmpFormatAgent",
402               "services": [
403                 {
404                   "interfaceID":1,
405                   "serviceType":0
406                 }
407               ],
408               "priority":100,
409               "capabilities": [
410                 {
411                   "name":"encodeFormat",
412                   "type":"string",
413                   "value": "image/vnd.wap.wbmp"
414                 }
415               ]
416             },
417             {
418               "className":"OHOS::ImagePlugin::SvgFormatAgent",
419               "services": [
420                 {
421                   "interfaceID":1,
422                   "serviceType":0
423                 }
424               ],
425               "priority":100,
426               "capabilities": [
427                 {
428                   "name":"encodeFormat",
429                   "type":"string",
430                   "value": "image/svg+xml"
431                 }
432               ]
433             },
434             {
435               "className":"OHOS::ImagePlugin::RawFormatAgent",
436               "services": [
437                 {
438                   "interfaceID":1,
439                   "serviceType":0
440                 }
441               ],
442               "priority":100,
443               "capabilities": [
444                 {
445                   "name":"encodeFormat",
446                   "type":"string",
447                   "value": "image/x-raw"
448                 }
449               ]
450             }
451           ]
452         }
453     )"
454 };
455 } // namespace MultimediaPlugin
456 } // namespace OHOS
457 
458 #endif // PLUGIN_METADATA_H
459