• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2
3
4
5<!DOCTYPE html>
6<html lang="en">
7<head>
8  <meta charset="utf-8"  />
9  <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no"  />
10  <title>MagickCore, C API: Loadable Modules @ ImageMagick</title>
11  <meta name="application-name" content="ImageMagick" />
12  <meta name="description" content="Use ImageMagick® to create, edit, compose, or convert bitmap images. You can resize your image, crop it, change its shades and colors, add captions, among other operations." />
13  <meta name="application-url" content="https://imagemagick.org" />
14  <meta name="generator" content="PHP" />
15  <meta name="keywords" content="magickcore, c, api:, loadable, modules, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert" />
16  <meta name="rating" content="GENERAL" />
17  <meta name="robots" content="INDEX, FOLLOW" />
18  <meta name="generator" content="ImageMagick Studio LLC" />
19  <meta name="author" content="ImageMagick Studio LLC" />
20  <meta name="revisit-after" content="2 DAYS" />
21  <meta name="resource-type" content="document" />
22  <meta name="copyright" content="Copyright (c) 1999-2017 ImageMagick Studio LLC" />
23  <meta name="distribution" content="Global" />
24  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
25  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
26  <link href="module.html" rel="canonical" />
27  <link href="../../images/wand.png" rel="icon" />
28  <link href="../../images/wand.ico" rel="shortcut icon" />
29  <link href="../assets/magick.css" rel="stylesheet" />
30</head>
31<body>
32  <header>
33  <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
34    <a class="navbar-brand" href="../../"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../../images/wand.ico"/></a>
35    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsMagick" aria-controls="navbarsMagick" aria-expanded="false" aria-label="Toggle navigation">
36      <span class="navbar-toggler-icon"></span>
37    </button>
38
39    <div class="navbar-collapse collapse" id="navbarsMagick" style="">
40    <ul class="navbar-nav mr-auto">
41      <li class="nav-item ">
42        <a class="nav-link" href="quantize.html">Home <span class="sr-only">(current)</span></a>
43      </li>
44      <li class="nav-item ">
45        <a class="nav-link" href="../../www/download.html">Download</a>
46      </li>
47      <li class="nav-item ">
48        <a class="nav-link" href="../../www/command-line-tools.html">Tools</a>
49      </li>
50      <li class="nav-item ">
51        <a class="nav-link" href="../../www/command-line-processing.html">Command-line</a>
52      </li>
53      <li class="nav-item ">
54        <a class="nav-link" href="../../www/resources.html">Resources</a>
55      </li>
56      <li class="nav-item ">
57        <a class="nav-link" href="../../www/develop.html">Develop</a>
58      </li>
59      <li class="nav-item">
60        <a class="nav-link" target="_blank" href="https://imagemagick.org/discourse-server/">Community</a>
61      </li>
62    </ul>
63    <form class="form-inline my-2 my-lg-0" action="https://imagemagick.org/script/search.php">
64      <input class="form-control mr-sm-2" type="text" name="q" placeholder="Search" aria-label="Search">
65      <button class="btn btn-outline-success my-2 my-sm-0" type="submit" name="sa">Search</button>
66    </form>
67    </div>
68  </nav>
69  <div class="container">
70   <script async="async" src="https://localhost/pagead/js/adsbygoogle.js"></script>    <ins class="adsbygoogle"
71         style="display:block"
72         data-ad-client="ca-pub-3129977114552745"
73         data-ad-slot="6345125851"
74         data-ad-format="auto"></ins>
75    <script>
76      (adsbygoogle = window.adsbygoogle || []).push({});
77    </script>
78
79  </div>
80  </header>
81  <main class="container">
82    <div class="magick-template">
83<div class="magick-header">
84<p class="text-center"><a href="module.html#AcquireModuleInfo">AcquireModuleInfo</a> &#8226; <a href="module.html#DestroyModuleList">DestroyModuleList</a> &#8226; <a href="module.html#GetModuleInfo">GetModuleInfo</a> &#8226; <a href="module.html#GetModuleInfoList">GetModuleInfoList</a> &#8226; <a href="module.html#GetModuleList">GetModuleList</a> &#8226; <a href="module.html#GetMagickModulePath">GetMagickModulePath</a> &#8226; <a href="module.html#IsModuleTreeInstantiated">IsModuleTreeInstantiated</a> &#8226; <a href="module.html#InvokeDynamicImageFilter">InvokeDynamicImageFilter</a> &#8226; <a href="module.html#ListModuleInfo">ListModuleInfo</a> &#8226; <a href="module.html#OpenModule">OpenModule</a> &#8226; <a href="module.html#OpenModules">OpenModules</a> &#8226; <a href="module.html#RegisterModule">RegisterModule</a> &#8226; <a href="module.html#TagToCoderModuleName">TagToCoderModuleName</a> &#8226; <a href="module.html#TagToFilterModuleName">TagToFilterModuleName</a> &#8226; <a href="module.html#TagToModuleName">TagToModuleName</a> &#8226; <a href="module.html#UnregisterModule">UnregisterModule</a></p>
85
86<h2><a href="../../api/MagickCore/module_8c.html" id="AcquireModuleInfo">AcquireModuleInfo</a></h2>
87
88<p>AcquireModuleInfo() allocates the ModuleInfo structure.</p>
89
90<p>The format of the AcquireModuleInfo method is:</p>
91
92<pre class="text">
93ModuleInfo *AcquireModuleInfo(const char *path,const char *tag)
94</pre>
95
96<p>A description of each parameter follows:</p>
97
98<dd>
99</dd>
100
101<dd> </dd>
102<dl class="dl-horizontal">
103<dt>path</dt>
104<dd>the path associated with the tag. </dd>
105
106<dd> </dd>
107<dt>tag</dt>
108<dd>a character string that represents the image format we are looking for. </dd>
109
110<dd>  </dd>
111</dl>
112<h2><a href="../../api/MagickCore/module_8c.html" id="DestroyModuleList">DestroyModuleList</a></h2>
113
114<p>DestroyModuleList() unregisters any previously loaded modules and exits the module loaded environment.</p>
115
116<p>The format of the DestroyModuleList module is:</p>
117
118<pre class="text">
119void DestroyModuleList(void)
120</pre>
121
122<h2><a href="../../api/MagickCore/module_8c.html" id="GetModuleInfo">GetModuleInfo</a></h2>
123
124<p>GetModuleInfo() returns a pointer to a ModuleInfo structure that matches the specified tag.  If tag is NULL, the head of the module list is returned. If no modules are loaded, or the requested module is not found, NULL is returned.</p>
125
126<p>The format of the GetModuleInfo module is:</p>
127
128<pre class="text">
129ModuleInfo *GetModuleInfo(const char *tag,ExceptionInfo *exception)
130</pre>
131
132<p>A description of each parameter follows:</p>
133
134<dd>
135</dd>
136
137<dd> </dd>
138<dl class="dl-horizontal">
139<dt>tag</dt>
140<dd>a character string that represents the image format we are looking for. </dd>
141
142<dd> </dd>
143<dt>exception</dt>
144<dd>return any errors or warnings in this structure. </dd>
145
146<dd>  </dd>
147</dl>
148<h2><a href="../../api/MagickCore/module_8c.html" id="GetModuleInfoList">GetModuleInfoList</a></h2>
149
150<p>GetModuleInfoList() returns any modules that match the specified pattern.</p>
151
152<p>The format of the GetModuleInfoList function is:</p>
153
154<pre class="text">
155const ModuleInfo **GetModuleInfoList(const char *pattern,
156  size_t *number_modules,ExceptionInfo *exception)
157</pre>
158
159<p>A description of each parameter follows:</p>
160
161<dd>
162</dd>
163
164<dd> </dd>
165<dl class="dl-horizontal">
166<dt>pattern</dt>
167<dd>Specifies a pointer to a text string containing a pattern. </dd>
168
169<dd> </dd>
170<dt>number_modules</dt>
171<dd> This integer returns the number of modules in the list. </dd>
172
173<dd> </dd>
174<dt>exception</dt>
175<dd>return any errors or warnings in this structure. </dd>
176
177<dd>  </dd>
178</dl>
179<h2><a href="../../api/MagickCore/module_8c.html" id="GetModuleList">GetModuleList</a></h2>
180
181<p>GetModuleList() returns any image format modules that match the specified pattern.</p>
182
183<p>The format of the GetModuleList function is:</p>
184
185<pre class="text">
186char **GetModuleList(const char *pattern,const MagickModuleType type,
187  size_t *number_modules,ExceptionInfo *exception)
188</pre>
189
190<p>A description of each parameter follows:</p>
191
192<dd>
193</dd>
194
195<dd> </dd>
196<dl class="dl-horizontal">
197<dt>pattern</dt>
198<dd>Specifies a pointer to a text string containing a pattern. </dd>
199
200<dd> </dd>
201<dt>type</dt>
202<dd>choose from MagickImageCoderModule or MagickImageFilterModule. </dd>
203
204<dd> </dd>
205<dt>number_modules</dt>
206<dd> This integer returns the number of modules in the list. </dd>
207
208<dd> </dd>
209<dt>exception</dt>
210<dd>return any errors or warnings in this structure. </dd>
211
212<dd>  </dd>
213</dl>
214<h2><a href="../../api/MagickCore/module_8c.html" id="GetMagickModulePath">GetMagickModulePath</a></h2>
215
216<p>GetMagickModulePath() finds a module with the specified module type and filename.</p>
217
218<p>The format of the GetMagickModulePath module is:</p>
219
220<pre class="text">
221MagickBooleanType GetMagickModulePath(const char *filename,
222  MagickModuleType module_type,char *path,ExceptionInfo *exception)
223</pre>
224
225<p>A description of each parameter follows:</p>
226
227<dd>
228</dd>
229
230<dd> </dd>
231<dl class="dl-horizontal">
232<dt>filename</dt>
233<dd>the module file name. </dd>
234
235<dd> </dd>
236<dt>module_type</dt>
237<dd>the module type: MagickImageCoderModule or MagickImageFilterModule. </dd>
238
239<dd> </dd>
240<dt>path</dt>
241<dd>the path associated with the filename. </dd>
242
243<dd> </dd>
244<dt>exception</dt>
245<dd>return any errors or warnings in this structure. </dd>
246
247<dd>  </dd>
248</dl>
249<h2><a href="../../api/MagickCore/module_8c.html" id="IsModuleTreeInstantiated">IsModuleTreeInstantiated</a></h2>
250
251<p>IsModuleTreeInstantiated() determines if the module tree is instantiated. If not, it instantiates the tree and returns it.</p>
252
253<p>The format of the IsModuleTreeInstantiated() method is:</p>
254
255<pre class="text">
256IsModuleTreeInstantiated()
257</pre>
258
259<h2><a href="../../api/MagickCore/module_8c.html" id="InvokeDynamicImageFilter">InvokeDynamicImageFilter</a></h2>
260
261<p>InvokeDynamicImageFilter() invokes a dynamic image filter.</p>
262
263<p>The format of the InvokeDynamicImageFilter module is:</p>
264
265<pre class="text">
266MagickBooleanType InvokeDynamicImageFilter(const char *tag,Image **image,
267  const int argc,const char **argv,ExceptionInfo *exception)
268</pre>
269
270<p>A description of each parameter follows:</p>
271
272<dd>
273</dd>
274
275<dd> </dd>
276<dl class="dl-horizontal">
277<dt>tag</dt>
278<dd>a character string that represents the name of the particular module. </dd>
279
280<dd> </dd>
281<dt>image</dt>
282<dd>the image. </dd>
283
284<dd> </dd>
285<dt>argc</dt>
286<dd>a pointer to an integer describing the number of elements in the argument vector. </dd>
287
288<dd> </dd>
289<dt>argv</dt>
290<dd>a pointer to a text array containing the command line arguments. </dd>
291
292<dd> </dd>
293<dt>exception</dt>
294<dd>return any errors or warnings in this structure. </dd>
295
296<dd>  </dd>
297</dl>
298<h2><a href="../../api/MagickCore/module_8c.html" id="ListModuleInfo">ListModuleInfo</a></h2>
299
300<p>ListModuleInfo() lists the module info to a file.</p>
301
302<p>The format of the ListModuleInfo module is:</p>
303
304<pre class="text">
305MagickBooleanType ListModuleInfo(FILE *file,ExceptionInfo *exception)
306</pre>
307
308<p>A description of each parameter follows.</p>
309
310<dt>file</dt>
311<p>An pointer to a FILE.</p>
312
313<dt>exception</dt>
314<p>return any errors or warnings in this structure.</p>
315
316<h2><a href="../../api/MagickCore/module_8c.html" id="OpenModule">OpenModule</a></h2>
317
318<p>OpenModule() loads a module, and invokes its registration module.  It returns MagickTrue on success, and MagickFalse if there is an error.</p>
319
320<p>The format of the OpenModule module is:</p>
321
322<pre class="text">
323MagickBooleanType OpenModule(const char *module,ExceptionInfo *exception)
324</pre>
325
326<p>A description of each parameter follows:</p>
327
328<dd>
329</dd>
330
331<dd> </dd>
332<dl class="dl-horizontal">
333<dt>module</dt>
334<dd>a character string that indicates the module to load. </dd>
335
336<dd> </dd>
337<dt>exception</dt>
338<dd>return any errors or warnings in this structure. </dd>
339
340<dd>  </dd>
341</dl>
342<h2><a href="../../api/MagickCore/module_8c.html" id="OpenModules">OpenModules</a></h2>
343
344<p>OpenModules() loads all available modules.</p>
345
346<p>The format of the OpenModules module is:</p>
347
348<pre class="text">
349MagickBooleanType OpenModules(ExceptionInfo *exception)
350</pre>
351
352<p>A description of each parameter follows:</p>
353
354<dd>
355</dd>
356
357<dd> </dd>
358<dl class="dl-horizontal">
359<dt>exception</dt>
360<dd>return any errors or warnings in this structure. </dd>
361
362<dd>  </dd>
363</dl>
364<h2><a href="../../api/MagickCore/module_8c.html" id="RegisterModule">RegisterModule</a></h2>
365
366<p>RegisterModule() adds an entry to the module list.  It returns a pointer to the registered entry on success.</p>
367
368<p>The format of the RegisterModule module is:</p>
369
370<pre class="text">
371ModuleInfo *RegisterModule(const ModuleInfo *module_info,
372  ExceptionInfo *exception)
373</pre>
374
375<p>A description of each parameter follows:</p>
376
377<dd>
378</dd>
379
380<dd> </dd>
381<dl class="dl-horizontal">
382<dt>info</dt>
383<dd>a pointer to the registered entry is returned. </dd>
384
385<dd> </dd>
386<dt>module_info</dt>
387<dd>a pointer to the ModuleInfo structure to register. </dd>
388
389<dd> </dd>
390<dt>exception</dt>
391<dd>return any errors or warnings in this structure. </dd>
392
393<dd>  </dd>
394</dl>
395<h2><a href="../../api/MagickCore/module_8c.html" id="TagToCoderModuleName">TagToCoderModuleName</a></h2>
396
397<p>TagToCoderModuleName() munges a module tag and obtains the filename of the corresponding module.</p>
398
399<p>The format of the TagToCoderModuleName module is:</p>
400
401<pre class="text">
402char *TagToCoderModuleName(const char *tag,char *name)
403</pre>
404
405<p>A description of each parameter follows:</p>
406
407<dd>
408</dd>
409
410<dd> </dd>
411<dl class="dl-horizontal">
412<dt>tag</dt>
413<dd>a character string representing the module tag. </dd>
414
415<dd> </dd>
416<dt>name</dt>
417<dd>return the module name here. </dd>
418
419<dd>  </dd>
420</dl>
421<h2><a href="../../api/MagickCore/module_8c.html" id="TagToFilterModuleName">TagToFilterModuleName</a></h2>
422
423<p>TagToFilterModuleName() munges a module tag and returns the filename of the corresponding filter module.</p>
424
425<p>The format of the TagToFilterModuleName module is:</p>
426
427<pre class="text">
428void TagToFilterModuleName(const char *tag,char name)
429</pre>
430
431<p>A description of each parameter follows:</p>
432
433<dd>
434</dd>
435
436<dd> </dd>
437<dl class="dl-horizontal">
438<dt>tag</dt>
439<dd>a character string representing the module tag. </dd>
440
441<dd> </dd>
442<dt>name</dt>
443<dd>return the filter name here. </dd>
444
445<dd>  </dd>
446</dl>
447<h2><a href="../../api/MagickCore/module_8c.html" id="TagToModuleName">TagToModuleName</a></h2>
448
449<p>TagToModuleName() munges the module tag name and returns an upper-case tag name as the input string, and a user-provided format.</p>
450
451<p>The format of the TagToModuleName module is:</p>
452
453<pre class="text">
454TagToModuleName(const char *tag,const char *format,char *module)
455</pre>
456
457<p>A description of each parameter follows:</p>
458
459<dd>
460</dd>
461
462<dd> </dd>
463<dl class="dl-horizontal">
464<dt>tag</dt>
465<dd>the module tag. </dd>
466
467<dd> </dd>
468<dt>format</dt>
469<dd>a sprintf-compatible format string containing s where the upper-case tag name is to be inserted. </dd>
470
471<dd> </dd>
472<dt>module</dt>
473<dd>pointer to a destination buffer for the formatted result. </dd>
474
475<dd>  </dd>
476</dl>
477<h2><a href="../../api/MagickCore/module_8c.html" id="UnregisterModule">UnregisterModule</a></h2>
478
479<p>UnregisterModule() unloads a module, and invokes its de-registration module. Returns MagickTrue on success, and MagickFalse if there is an error.</p>
480
481<p>The format of the UnregisterModule module is:</p>
482
483<pre class="text">
484MagickBooleanType UnregisterModule(const ModuleInfo *module_info,
485  ExceptionInfo *exception)
486</pre>
487
488<p>A description of each parameter follows:</p>
489
490<dd>
491</dd>
492
493<dd> </dd>
494<dl class="dl-horizontal">
495<dt>module_info</dt>
496<dd>the module info. </dd>
497
498<dd> </dd>
499<dt>exception</dt>
500<dd>return any errors or warnings in this structure. </dd>
501
502<dd>  </dd>
503</dl>
504</div>
505    </div>
506  </main><!-- /.container -->
507  <footer class="magick-footer">
508    <p><a href="../../www/security-policy.html">Security</a> •
509    <a href="../../www/architecture.html">Architecture</a> •
510    <a href="../../www/links.html">Related</a> •
511     <a href="../../www/sitemap.html">Sitemap</a>
512
513    <a href="module.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../../images/wand.ico"/></a>
514
515    <a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
516    <a href="../../www/support.html">Donate</a> •
517    <a href="../../www/contact.html">Contact Us</a>
518    <br/>
519    <small>© 1999-2019 ImageMagick Studio LLC</small></p>
520  </footer>
521
522  <!-- Javascript assets -->
523  <script src="../assets/magick.js" crossorigin="anonymous"></script>
524  <script>window.jQuery || document.write('<script src="https://localhost/ajax/libs/jquery/3.3.1/jquery.min.js"><\/script>')</script>
525</body>
526</html>
527<!-- Magick Cache 29th December 2018 16:44 -->