00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MAGICKCORE_DELEGATE_H
00019 #define MAGICKCORE_DELEGATE_H
00020
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024
00025 #include <stdarg.h>
00026 #include "MagickCore/semaphore.h"
00027
00028 typedef struct _DelegateInfo
00029 {
00030 char
00031 *path,
00032 *decode,
00033 *encode,
00034 *commands;
00035
00036 ssize_t
00037 mode;
00038
00039 MagickBooleanType
00040 thread_support,
00041 spawn,
00042 stealth;
00043
00044 SemaphoreInfo
00045 *semaphore;
00046
00047 size_t
00048 signature;
00049 } DelegateInfo;
00050
00051 extern MagickExport char
00052 *GetDelegateCommand(const ImageInfo *,Image *,const char *,const char *,
00053 ExceptionInfo *),
00054 **GetDelegateList(const char *,size_t *,ExceptionInfo *);
00055
00056 extern MagickExport const char
00057 *GetDelegateCommands(const DelegateInfo *);
00058
00059 extern MagickExport const DelegateInfo
00060 *GetDelegateInfo(const char *,const char *,ExceptionInfo *exception),
00061 **GetDelegateInfoList(const char *,size_t *,ExceptionInfo *);
00062
00063 extern MagickExport int
00064 ExternalDelegateCommand(const MagickBooleanType,const MagickBooleanType,
00065 const char *,char *,ExceptionInfo *);
00066
00067 extern MagickExport ssize_t
00068 GetDelegateMode(const DelegateInfo *);
00069
00070 extern MagickExport MagickBooleanType
00071 GetDelegateThreadSupport(const DelegateInfo *),
00072 InvokeDelegate(ImageInfo *,Image *,const char *,const char *,ExceptionInfo *),
00073 ListDelegateInfo(FILE *,ExceptionInfo *);
00074
00075 #if defined(__cplusplus) || defined(c_plusplus)
00076 }
00077 #endif
00078
00079 #endif