MagickCore  6.9.11-60
Convert, Edit, Or Compose Bitmap Images
module.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2021 ImageMagick Studio LLC, a non-profit organization
3  dedicated to making software imaging solutions freely available.
4 
5  You may not use this file except in compliance with the License. You may
6  obtain a copy of the License at
7 
8  https://imagemagick.org/script/license.php
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  MagickCore module methods.
17 */
18 #ifndef MAGICKCORE_MODULE_H
19 #define MAGICKCORE_MODULE_H
20 
21 #include <time.h>
22 #include "magick/version.h"
23 
24 #if defined(__cplusplus) || defined(c_plusplus)
25 extern "C" {
26 #endif
27 
28 #define MagickImageCoderSignature ((size_t) \
29  (((MagickLibInterface) << 8) | MAGICKCORE_QUANTUM_DEPTH))
30 #define MagickImageFilterSignature ((size_t) \
31  (((MagickLibInterface) << 8) | MAGICKCORE_QUANTUM_DEPTH))
32 
33 typedef enum
34 {
38 
39 typedef struct _ModuleInfo
40 {
41  char
42  *path,
43  *tag;
44 
45  void
47  (*unregister_module)(void);
48 
49  size_t
50  (*register_module)(void);
51 
52  time_t
54 
57 
58  struct _ModuleInfo
60  *next; /* deprecated, use GetModuleInfoList() */
61 
62  size_t
65 
66 typedef size_t
67  ImageFilterHandler(Image **,const int,const char **,ExceptionInfo *);
68 
69 extern MagickExport char
70  **GetModuleList(const char *,const MagickModuleType,size_t *,ExceptionInfo *);
71 
72 extern MagickExport const ModuleInfo
73  **GetModuleInfoList(const char *,size_t *,ExceptionInfo *);
74 
76  InvokeDynamicImageFilter(const char *,Image **,const int,const char **,
77  ExceptionInfo *),
80  OpenModule(const char *,ExceptionInfo *),
82 
84  *GetModuleInfo(const char *,ExceptionInfo *);
85 
86 extern MagickExport void
89 
90 #if defined(__cplusplus) || defined(c_plusplus)
91 }
92 #endif
93 
94 #endif
MagickBooleanType
Definition: magick-type.h:203
#define MagickExport
Definition: method-attribute.h:80
MagickExport MagickBooleanType InvokeDynamicImageFilter(const char *, Image **, const int, const char **, ExceptionInfo *)
MagickExport void DestroyModuleList(void)
MagickExport MagickBooleanType ModuleComponentGenesis(void)
MagickExport MagickBooleanType ListModuleInfo(FILE *, ExceptionInfo *)
MagickExport MagickBooleanType OpenModules(ExceptionInfo *)
MagickExport const ModuleInfo ** GetModuleInfoList(const char *, size_t *, ExceptionInfo *)
size_t ImageFilterHandler(Image **, const int, const char **, ExceptionInfo *)
Definition: module.h:67
MagickExport void ModuleComponentTerminus(void)
MagickExport char ** GetModuleList(const char *, const MagickModuleType, size_t *, ExceptionInfo *)
MagickExport ModuleInfo * GetModuleInfo(const char *, ExceptionInfo *)
MagickExport MagickBooleanType OpenModule(const char *, ExceptionInfo *)
MagickModuleType
Definition: module.h:34
@ MagickImageFilterModule
Definition: module.h:36
@ MagickImageCoderModule
Definition: module.h:35
struct _ModuleInfo ModuleInfo
Definition: exception.h:103
Definition: image.h:153
Definition: module.h:40
char * tag
Definition: module.h:43
struct _ModuleInfo * previous
Definition: module.h:58
size_t signature
Definition: module.h:63
void * handle
Definition: module.h:46
MagickBooleanType stealth
Definition: module.h:56
struct _ModuleInfo * next
Definition: module.h:60
size_t(* register_module)(void)
Definition: module.h:50
time_t timestamp
Definition: module.h:53
char * path
Definition: module.h:42