Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-11-15 09:43:30

0001 /*
0002   Copyright @ 2000 ImageMagick Studio LLC, a non-profit organization
0003   dedicated to making software imaging solutions freely available.
0004   
0005   You may not use this file except in compliance with the License.  You may
0006   obtain a copy of the License at
0007   
0008     https://imagemagick.org/script/license.php
0009   
0010   Unless required by applicable law or agreed to in writing, software
0011   distributed under the License is distributed on an "AS IS" BASIS,
0012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0013   See the License for the specific language governing permissions and
0014   limitations under the License.
0015 
0016   MagickCore module methods.
0017 */
0018 #ifndef MAGICKCORE_MODULE_H
0019 #define MAGICKCORE_MODULE_H
0020 
0021 #include "MagickCore/version.h"
0022 
0023 #if defined(__cplusplus) || defined(c_plusplus)
0024 extern "C" {
0025 #endif
0026 
0027 #define MagickImageCoderSignature  ((size_t) \
0028   (((MagickLibInterface) << 8) | MAGICKCORE_QUANTUM_DEPTH))
0029 #define MagickImageFilterSignature  ((size_t) \
0030   (((MagickLibInterface) << 8) | MAGICKCORE_QUANTUM_DEPTH))
0031 
0032 typedef enum
0033 {
0034   MagickImageCoderModule,
0035   MagickImageFilterModule
0036 } MagickModuleType;
0037 
0038 typedef struct _ModuleInfo
0039 {
0040   char
0041     *path,
0042     *tag;
0043 
0044   void
0045     *handle,
0046     (*unregister_module)(void);
0047 
0048   size_t
0049     (*register_module)(void);
0050 
0051   time_t
0052     timestamp;
0053 
0054   MagickBooleanType
0055     stealth;
0056 
0057   size_t
0058     signature;
0059 } ModuleInfo;
0060 
0061 typedef size_t
0062   ImageFilterHandler(Image **,const int,const char **,ExceptionInfo *);
0063 
0064 extern MagickExport char
0065   **GetModuleList(const char *,const MagickModuleType,size_t *,ExceptionInfo *);
0066 
0067 extern MagickExport const ModuleInfo
0068   **GetModuleInfoList(const char *,size_t *,ExceptionInfo *);
0069 
0070 extern MagickExport MagickBooleanType
0071   InvokeDynamicImageFilter(const char *,Image **,const int,const char **,
0072     ExceptionInfo *),
0073   ListModuleInfo(FILE *,ExceptionInfo *);
0074 
0075 extern MagickExport ModuleInfo
0076   *GetModuleInfo(const char *,ExceptionInfo *);
0077 
0078 extern MagickExport void
0079   DestroyModuleList(void);
0080 
0081 #if defined(__cplusplus) || defined(c_plusplus)
0082 }
0083 #endif
0084 
0085 #endif