00001 /* 00002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00003 % % 00004 % % 00005 % % 00006 % V V EEEEE RRRR SSSSS IIIII OOO N N % 00007 % V V E R R SS I O O NN N % 00008 % V V EEE RRRR SSS I O O N N N % 00009 % V V E R R SS I O O N NN % 00010 % V EEEEE R R SSSSS IIIII OOO N N % 00011 % % 00012 % % 00013 % MagickCore Version and Copyright Methods % 00014 % % 00015 % Software Design % 00016 % John Cristy % 00017 % September 2002 % 00018 % % 00019 % % 00020 % Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization % 00021 % dedicated to making software imaging solutions freely available. % 00022 % % 00023 % You may not use this file except in compliance with the License. You may % 00024 % obtain a copy of the License at % 00025 % % 00026 % http://www.imagemagick.org/script/license.php % 00027 % % 00028 % Unless required by applicable law or agreed to in writing, software % 00029 % distributed under the License is distributed on an "AS IS" BASIS, % 00030 % WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. % 00031 % See the License for the specific language governing permissions and % 00032 % limitations under the License. % 00033 % % 00034 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00035 % 00036 % 00037 */ 00038 00039 #include "magick/studio.h" 00040 #include "magick/configure.h" 00041 #include "magick/exception.h" 00042 #include "magick/exception-private.h" 00043 #include "magick/hashmap.h" 00044 #include "magick/option.h" 00045 #include "magick/string_.h" 00046 #include "magick/utility.h" 00047 #include "magick/version.h" 00048 00049 /* 00050 Define declarations. 00051 */ 00052 #define MagickURLFilename "index.html" 00053 00054 /* 00055 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00056 % % 00057 % % 00058 % % 00059 % G e t M a g i c k C o p y r i g h t % 00060 % % 00061 % % 00062 % % 00063 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00064 % 00065 % GetMagickCopyright() returns the ImageMagick API copyright as a string. 00066 % 00067 % The format of the GetMagickCopyright method is: 00068 % 00069 % const char *GetMagickCopyright(void) 00070 % 00071 */ 00072 MagickExport const char *GetMagickCopyright(void) 00073 { 00074 return(MagickCopyright); 00075 } 00076 00077 /* 00078 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00079 % % 00080 % % 00081 % % 00082 % G e t M a g i c k H o m e U R L % 00083 % % 00084 % % 00085 % % 00086 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00087 % 00088 % GetMagickHomeURL() returns the ImageMagick home URL. 00089 % 00090 % The format of the GetMagickHomeURL method is: 00091 % 00092 % char *GetMagickHomeURL(void) 00093 % 00094 */ 00095 MagickExport char *GetMagickHomeURL(void) 00096 { 00097 char 00098 path[MaxTextExtent]; 00099 00100 const char 00101 *element; 00102 00103 ExceptionInfo 00104 *exception; 00105 00106 LinkedListInfo 00107 *paths; 00108 00109 exception=AcquireExceptionInfo(); 00110 paths=GetConfigurePaths(MagickURLFilename,exception); 00111 exception=DestroyExceptionInfo(exception); 00112 if (paths == (LinkedListInfo *) NULL) 00113 return(ConstantString(MagickHomeURL)); 00114 element=(const char *) GetNextValueInLinkedList(paths); 00115 while (element != (const char *) NULL) 00116 { 00117 (void) FormatMagickString(path,MaxTextExtent,"%s%s%s",element, 00118 DirectorySeparator,MagickURLFilename); 00119 if (IsPathAccessible(path) != MagickFalse) 00120 return(ConstantString(path)); 00121 element=(const char *) GetNextValueInLinkedList(paths); 00122 } 00123 return(ConstantString(MagickHomeURL)); 00124 } 00125 00126 /* 00127 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00128 % % 00129 % % 00130 % % 00131 % G e t M a g i c k P a c k a g e N a m e % 00132 % % 00133 % % 00134 % % 00135 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00136 % 00137 % GetMagickPackageName() returns the ImageMagick package name. 00138 % 00139 % The format of the GetMagickName method is: 00140 % 00141 % const char *GetMagickName(void) 00142 % 00143 % No parameters are required. 00144 % 00145 */ 00146 MagickExport const char *GetMagickPackageName(void) 00147 { 00148 return(MagickPackageName); 00149 } 00150 00151 /* 00152 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00153 % % 00154 % % 00155 % % 00156 % G e t M a g i c k Q u a n t u m D e p t h % 00157 % % 00158 % % 00159 % % 00160 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00161 % 00162 % GetMagickQuantumDepth() returns the ImageMagick quantum depth. 00163 % 00164 % The format of the GetMagickQuantumDepth method is: 00165 % 00166 % const char *GetMagickQuantumDepth(unsigned long *depth) 00167 % 00168 % A description of each parameter follows: 00169 % 00170 % o depth: the quantum depth is returned as a number. 00171 % 00172 */ 00173 MagickExport const char *GetMagickQuantumDepth(unsigned long *depth) 00174 { 00175 if (depth != (unsigned long *) NULL) 00176 *depth=(unsigned long) MAGICKCORE_QUANTUM_DEPTH; 00177 return(MagickQuantumDepth); 00178 } 00179 00180 /* 00181 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00182 % % 00183 % % 00184 % % 00185 % G e t M a g i c k Q u a n t u m R a n g e % 00186 % % 00187 % % 00188 % % 00189 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00190 % 00191 % GetMagickQuantumRange() returns the ImageMagick quantum range. 00192 % 00193 % The format of the GetMagickQuantumRange method is: 00194 % 00195 % const char *GetMagickQuantumRange(unsigned long *range) 00196 % 00197 % A description of each parameter follows: 00198 % 00199 % o range: the quantum range is returned as a number. 00200 % 00201 */ 00202 MagickExport const char *GetMagickQuantumRange(unsigned long *range) 00203 { 00204 if (range != (unsigned long *) NULL) 00205 *range=(unsigned long) QuantumRange; 00206 return(MagickQuantumRange); 00207 } 00208 00209 /* 00210 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00211 % % 00212 % % 00213 % % 00214 % G e t M a g i c k R e l e a s e D a t e % 00215 % % 00216 % % 00217 % % 00218 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00219 % 00220 % GetMagickReleaseDate() returns the ImageMagick release date. 00221 % 00222 % The format of the GetMagickReleaseDate method is: 00223 % 00224 % const char *GetMagickReleaseDate(void) 00225 % 00226 % No parameters are required. 00227 % 00228 */ 00229 MagickExport const char *GetMagickReleaseDate(void) 00230 { 00231 return(MagickReleaseDate); 00232 } 00233 00234 /* 00235 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00236 % % 00237 % % 00238 % % 00239 % G e t M a g i c k V e r s i o n % 00240 % % 00241 % % 00242 % % 00243 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 00244 % 00245 % GetMagickVersion() returns the ImageMagick API version as a string and 00246 % as a number. 00247 % 00248 % The format of the GetMagickVersion method is: 00249 % 00250 % const char *GetMagickVersion(unsigned long *version) 00251 % 00252 % A description of each parameter follows: 00253 % 00254 % o version: the ImageMagick version is returned as a number. 00255 % 00256 */ 00257 MagickExport const char *GetMagickVersion(unsigned long *version) 00258 { 00259 if (version != (unsigned long *) NULL) 00260 *version=MagickLibVersion; 00261 return(MagickVersion); 00262 }