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