00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 #ifndef _MAGICK_WAND_H
00020 #define _MAGICK_WAND_H
00021 
00022 #if defined(__cplusplus) || defined(c_plusplus)
00023 extern "C" {
00024 #endif
00025 
00026 #if !defined(_MAGICKWAND_CONFIG_H)
00027 # define _MAGICKWAND_CONFIG_H
00028 # if !defined(vms) && !defined(macintosh)
00029 #  include "magick/magick-config.h"
00030 # else
00031 #  include "magick-config.h"
00032 # endif
00033 # if defined(__cplusplus) || defined(c_plusplus)
00034 #  undef inline
00035 # endif
00036 #endif
00037 
00038 #include <stdio.h>
00039 #include <stdarg.h>
00040 #include <stdlib.h>
00041 #include <sys/types.h>
00042 
00043 #if defined(__CYGWIN32__)
00044 #  if !defined(__CYGWIN__)
00045 #    define __CYGWIN__ __CYGWIN32__
00046 #  endif
00047 #endif
00048 #if defined(_WIN32) || defined(WIN32)
00049 #  if !defined(__WINDOWS__)
00050 #    if defined(_WIN32)
00051 #      define __WINDOWS__ _WIN32
00052 #    else
00053 #      if defined(WIN32)
00054 #        define __WINDOWS__ WIN32
00055 #      endif
00056 #    endif
00057 #  endif
00058 #endif
00059 
00060 #if defined(_WIN64) || defined(WIN64)
00061 #  if !defined(__WINDOWS__)
00062 #    if defined(_WIN64)
00063 #      define __WINDOWS__ _WIN64
00064 #    else
00065 #      if defined(WIN64)
00066 #        define __WINDOWS__ WIN64
00067 #      endif
00068 #    endif
00069 #  endif
00070 #endif
00071 
00072 #if defined(__WINDOWS__)
00073 # if defined(_MT) && defined(_DLL) && !defined(_MAGICKDLL_) && !defined(_LIB)
00074 #  define _MAGICKDLL_
00075 # endif
00076 # if defined(_MAGICKDLL_)
00077 #  if defined(_VISUALC_)
00078 #   pragma warning( disable: 4273 )  
00079 #  endif
00080 #  if !defined(_MAGICKLIB_)
00081 #   define WandExport  __declspec(dllimport)
00082 #   if defined(_VISUALC_)
00083 #    pragma message( "MagickWand lib DLL import interface" )
00084 #   endif
00085 #  else
00086 #   define WandExport  __declspec(dllexport)
00087 #   if defined(_VISUALC_)
00088 #    pragma message( "MagickWand lib DLL export interface" )
00089 #   endif
00090 #  endif
00091 # else
00092 #  define WandExport
00093 #  if defined(_VISUALC_)
00094 #   pragma message( "MagickWand lib static interface" )
00095 #  endif
00096 # endif
00097 
00098 # if defined(_DLL) && !defined(_LIB)
00099 #  define ModuleExport  __declspec(dllexport)
00100 #  if defined(_VISUALC_)
00101 #   pragma message( "MagickWand module DLL export interface" )
00102 #  endif
00103 # else
00104 #  define ModuleExport
00105 #  if defined(_VISUALC_)
00106 #   pragma message( "MagickWand module static interface" )
00107 #  endif
00108 
00109 # endif
00110 # define WandGlobal __declspec(thread)
00111 # if defined(_VISUALC_)
00112 #  pragma warning(disable : 4018)
00113 #  pragma warning(disable : 4244)
00114 #  pragma warning(disable : 4142)
00115 #  pragma warning(disable : 4800)
00116 #  pragma warning(disable : 4786)
00117 # endif
00118 #else
00119 # define WandExport
00120 # define ModuleExport
00121 # define WandGlobal
00122 #endif
00123 
00124 #if !defined(MaxTextExtent)
00125 # define MaxTextExtent  4096
00126 #endif
00127 #define WandSignature  0xabacadabUL
00128 
00129 #if !defined(wand_attribute)
00130 #  if !defined(__GNUC__)
00131 #    define wand_attribute(x)  
00132 #  else
00133 #    define wand_attribute  __attribute__
00134 #  endif
00135 #endif
00136 
00137 typedef struct _MagickWand
00138   MagickWand;
00139 
00140 #include "magick/MagickCore.h"
00141 #include "wand/animate.h"
00142 #include "wand/compare.h"
00143 #include "wand/composite.h"
00144 #include "wand/conjure.h"
00145 #include "wand/convert.h"
00146 #include "wand/deprecate.h"
00147 #include "wand/display.h"
00148 #include "wand/drawing-wand.h"
00149 #include "wand/identify.h"
00150 #include "wand/import.h"
00151 #include "wand/magick-property.h"
00152 #include "wand/magick-image.h"
00153 #include "wand/mogrify.h"
00154 #include "wand/montage.h"
00155 #include "wand/pixel-iterator.h"
00156 #include "wand/pixel-wand.h"
00157 #include "wand/stream.h"
00158 
00159 extern WandExport char
00160   *MagickGetException(const MagickWand *,ExceptionType *);
00161 
00162 extern WandExport ExceptionType
00163   MagickGetExceptionType(const MagickWand *);
00164 
00165 extern WandExport long
00166   MagickGetIteratorIndex(MagickWand *);
00167 
00168 extern WandExport MagickBooleanType
00169   IsMagickWand(const MagickWand *),
00170   MagickClearException(MagickWand *),
00171   MagickSetIteratorIndex(MagickWand *,const long);
00172 
00173 extern WandExport MagickWand
00174   *CloneMagickWand(const MagickWand *),
00175   *DestroyMagickWand(MagickWand *),
00176   *NewMagickWand(void),
00177         *NewMagickWandFromImage(const Image *);
00178 
00179 extern WandExport void
00180   ClearMagickWand(MagickWand *),
00181   MagickWandGenesis(void),
00182   MagickWandTerminus(void),
00183   *MagickRelinquishMemory(void *),
00184   MagickResetIterator(MagickWand *),
00185   MagickSetFirstIterator(MagickWand *),
00186   MagickSetLastIterator(MagickWand *);
00187 
00188 #if defined(__cplusplus) || defined(c_plusplus)
00189 }
00190 #endif
00191 
00192 #endif