|
MagickWand
6.7.5
|
00001 /* 00002 Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization 00003 dedicated to making software imaging solutions freely available. 00004 00005 You may not use this file except in compliance with the License. 00006 obtain a copy of the License at 00007 00008 http://www.imagemagick.org/script/license.php 00009 00010 Unless required by applicable law or agreed to in writing, software 00011 distributed under the License is distributed on an "AS IS" BASIS, 00012 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 See the License for the specific language governing permissions and 00014 limitations under the License. 00015 00016 MagickWand Application Programming Interface declarations. 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 "MagickCore/magick-config.h" 00030 # else 00031 # include "magick-config.h" 00032 # endif 00033 #if defined(_magickcore_const) && !defined(const) 00034 # define const _magickcore_const 00035 #endif 00036 #if defined(_magickcore_inline) && !defined(inline) 00037 # define inline _magickcore_inline 00038 #endif 00039 #if defined(_magickcore_restrict) && !defined(restrict) 00040 # define restrict _magickcore_restrict 00041 #endif 00042 # if defined(__cplusplus) || defined(c_plusplus) 00043 # undef inline 00044 # endif 00045 #endif 00046 00047 #include <stdio.h> 00048 #include <stdarg.h> 00049 #include <stdlib.h> 00050 #include <sys/types.h> 00051 00052 #if defined(WIN32) || defined(WIN64) 00053 # define MAGICKCORE_WINDOWS_SUPPORT 00054 #else 00055 # define MAGICKCORE_POSIX_SUPPORT 00056 #endif 00057 00058 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__CYGWIN__) 00059 # define WandPrivate 00060 # if defined(_MT) && defined(_DLL) && !defined(_MAGICKDLL_) && !defined(_LIB) 00061 # define _MAGICKDLL_ 00062 # endif 00063 # if defined(_MAGICKDLL_) 00064 # if defined(_VISUALC_) 00065 # pragma warning( disable: 4273 ) /* Disable the dll linkage warnings */ 00066 # endif 00067 # if !defined(_MAGICKLIB_) 00068 # if defined(__GNUC__) 00069 # define WandExport __attribute__ ((dllimport)) 00070 # else 00071 # define WandExport __declspec(dllimport) 00072 # endif 00073 # if defined(_VISUALC_) 00074 # pragma message( "MagickWand lib DLL import interface" ) 00075 # endif 00076 # else 00077 # if defined(__GNUC__) 00078 # define WandExport __attribute__ ((dllexport)) 00079 # else 00080 # define WandExport __declspec(dllexport) 00081 # endif 00082 # if defined(_VISUALC_) 00083 # pragma message( "MagickWand lib DLL export interface" ) 00084 # endif 00085 # endif 00086 # else 00087 # define WandExport 00088 # if defined(_VISUALC_) 00089 # pragma message( "MagickWand lib static interface" ) 00090 # endif 00091 # endif 00092 00093 # if defined(_DLL) && !defined(_LIB) 00094 # define ModuleExport __declspec(dllexport) 00095 # if defined(_VISUALC_) 00096 # pragma message( "MagickWand module DLL export interface" ) 00097 # endif 00098 # else 00099 # define ModuleExport 00100 # if defined(_VISUALC_) 00101 # pragma message( "MagickWand module static interface" ) 00102 # endif 00103 00104 # endif 00105 # define WandGlobal __declspec(thread) 00106 # if defined(_VISUALC_) 00107 # pragma warning(disable : 4018) 00108 # pragma warning(disable : 4244) 00109 # pragma warning(disable : 4142) 00110 # pragma warning(disable : 4800) 00111 # pragma warning(disable : 4786) 00112 # pragma warning(disable : 4996) 00113 # endif 00114 #else 00115 # if __GNUC__ >= 4 00116 # define WandExport __attribute__ ((visibility ("default"))) 00117 # define WandPrivate __attribute__ ((visibility ("hidden"))) 00118 # else 00119 # define WandExport 00120 # define WandPrivate 00121 # endif 00122 # define WandGlobal 00123 #endif 00124 00125 #if !defined(MaxTextExtent) 00126 # define MaxTextExtent 4096 00127 #endif 00128 #define WandSignature 0xabacadabUL 00129 00130 #if !defined(wand_attribute) 00131 # if !defined(__GNUC__) 00132 # define wand_attribute(x) /* nothing */ 00133 # else 00134 # define wand_attribute __attribute__ 00135 # endif 00136 #endif 00137 00138 typedef struct _MagickWand 00139 MagickWand; 00140 00141 #include "MagickCore/MagickCore.h" 00142 #include "MagickWand/animate.h" 00143 #include "MagickWand/compare.h" 00144 #include "MagickWand/composite.h" 00145 #include "MagickWand/conjure.h" 00146 #include "MagickWand/convert.h" 00147 #include "MagickWand/deprecate.h" 00148 #include "MagickWand/display.h" 00149 #include "MagickWand/drawing-wand.h" 00150 #include "MagickWand/identify.h" 00151 #include "MagickWand/import.h" 00152 #include "MagickWand/magick-property.h" 00153 #include "MagickWand/magick-image.h" 00154 #include "MagickWand/mogrify.h" 00155 #include "MagickWand/montage.h" 00156 #include "MagickWand/pixel-iterator.h" 00157 #include "MagickWand/pixel-wand.h" 00158 #include "MagickWand/stream.h" 00159 #include "MagickWand/wand-view.h" 00160 00161 extern WandExport char 00162 *MagickGetException(const MagickWand *,ExceptionType *); 00163 00164 extern WandExport ExceptionType 00165 MagickGetExceptionType(const MagickWand *); 00166 00167 extern WandExport MagickBooleanType 00168 IsMagickWand(const MagickWand *), 00169 MagickClearException(MagickWand *), 00170 MagickSetIteratorIndex(MagickWand *,const ssize_t); 00171 00172 extern WandExport MagickWand 00173 *CloneMagickWand(const MagickWand *), 00174 *DestroyMagickWand(MagickWand *), 00175 *NewMagickWand(void), 00176 *NewMagickWandFromImage(const Image *); 00177 00178 extern WandExport ssize_t 00179 MagickGetIteratorIndex(MagickWand *); 00180 00181 extern WandExport void 00182 ClearMagickWand(MagickWand *), 00183 MagickWandGenesis(void), 00184 MagickWandTerminus(void), 00185 *MagickRelinquishMemory(void *), 00186 MagickResetIterator(MagickWand *), 00187 MagickSetFirstIterator(MagickWand *), 00188 MagickSetLastIterator(MagickWand *); 00189 00190 #if defined(__cplusplus) || defined(c_plusplus) 00191 } 00192 #endif 00193 00194 #endif