| 67 | | Declare coder map. |
| 68 | | */ |
| 69 | | static const char |
| 70 | | *CoderMap = (const char *) |
| 71 | | "<?xml version=\"1.0\"?>" |
| 72 | | "<codermap>" |
| 73 | | " <coder magick=\"3FR\" name=\"DNG\" />" |
| 74 | | " <coder magick=\"8BIM\" name=\"META\" />" |
| 75 | | " <coder magick=\"8BIMTEXT\" name=\"META\" />" |
| 76 | | " <coder magick=\"8BIMWTEXT\" name=\"META\" />" |
| 77 | | " <coder magick=\"A\" name=\"RAW\" />" |
| 78 | | " <coder magick=\"AI\" name=\"PDF\" />" |
| 79 | | " <coder magick=\"AFM\" name=\"TTF\" />" |
| 80 | | " <coder magick=\"APP1JPEG\" name=\"META\" />" |
| 81 | | " <coder magick=\"APP1\" name=\"META\" />" |
| 82 | | " <coder magick=\"ARW\" name=\"DNG\" />" |
| 83 | | " <coder magick=\"BIE\" name=\"JBIG\" />" |
| 84 | | " <coder magick=\"BMP2\" name=\"BMP\" />" |
| 85 | | " <coder magick=\"BMP3\" name=\"BMP\" />" |
| 86 | | " <coder magick=\"B\" name=\"GRAY\" />" |
| 87 | | " <coder magick=\"BRF\" name=\"BRAILLE\" />" |
| 88 | | " <coder magick=\"CMYKA\" name=\"CMYK\" />" |
| 89 | | " <coder magick=\"C\" name=\"GRAY\" />" |
| 90 | | " <coder magick=\"CAL\" name=\"CALS\" />" |
| 91 | | " <coder magick=\"CR2\" name=\"DNG\" />" |
| 92 | | " <coder magick=\"CRW\" name=\"DNG\" />" |
| 93 | | " <coder magick=\"CUR\" name=\"ICON\" />" |
| 94 | | " <coder magick=\"DCR\" name=\"DNG\" />" |
| 95 | | " <coder magick=\"DCX\" name=\"PCX\" />" |
| 96 | | " <coder magick=\"DFONT\" name=\"TTF\" />" |
| 97 | | " <coder magick=\"EMF\" name=\"EMF\" />" |
| 98 | | " <coder magick=\"EPDF\" name=\"PDF\" />" |
| 99 | | " <coder magick=\"EPI\" name=\"PS\" />" |
| 100 | | " <coder magick=\"EPS2\" name=\"PS2\" />" |
| 101 | | " <coder magick=\"EPS3\" name=\"PS3\" />" |
| 102 | | " <coder magick=\"EPSF\" name=\"PS\" />" |
| 103 | | " <coder magick=\"EPSI\" name=\"PS\" />" |
| 104 | | " <coder magick=\"EPS\" name=\"PS\" />" |
| 105 | | " <coder magick=\"EPT2\" name=\"EPT\" />" |
| 106 | | " <coder magick=\"EPT3\" name=\"EPT\" />" |
| 107 | | " <coder magick=\"ERF\" name=\"DNG\" />" |
| 108 | | " <coder magick=\"EXIF\" name=\"META\" />" |
| 109 | | " <coder magick=\"FILE\" name=\"URL\" />" |
| 110 | | " <coder magick=\"FRACTAL\" name=\"PLASMA\" />" |
| 111 | | " <coder magick=\"FTP\" name=\"URL\" />" |
| 112 | | " <coder magick=\"FTS\" name=\"FITS\" />" |
| 113 | | " <coder magick=\"G3\" name=\"FAX\" />" |
| 114 | | " <coder magick=\"GIF87\" name=\"GIF\" />" |
| 115 | | " <coder magick=\"G\" name=\"GRAY\" />" |
| 116 | | " <coder magick=\"GRANITE\" name=\"MAGICK\" />" |
| 117 | | " <coder magick=\"GROUP4\" name=\"TIFF\" />" |
| 118 | | " <coder magick=\"H\" name=\"MAGICK\" />" |
| 119 | | " <coder magick=\"HTM\" name=\"HTML\" />" |
| 120 | | " <coder magick=\"HTTP\" name=\"URL\" />" |
| 121 | | " <coder magick=\"ICB\" name=\"TGA\" />" |
| 122 | | " <coder magick=\"ICC\" name=\"META\" />" |
| 123 | | " <coder magick=\"ICM\" name=\"META\" />" |
| 124 | | " <coder magick=\"ICO\" name=\"ICON\" />" |
| 125 | | " <coder magick=\"IMPLICIT\" name=\"***\" />" |
| 126 | | " <coder magick=\"IPTC\" name=\"META\" />" |
| 127 | | " <coder magick=\"IPTCTEXT\" name=\"META\" />" |
| 128 | | " <coder magick=\"IPTCWTEXT\" name=\"META\" />" |
| 129 | | " <coder magick=\"ISOBRL\" name=\"BRAILLE\" />" |
| 130 | | " <coder magick=\"JBG\" name=\"JBIG\" />" |
| 131 | | " <coder magick=\"JNG\" name=\"PNG\" />" |
| 132 | | " <coder magick=\"JPC\" name=\"JP2\" />" |
| 133 | | " <coder magick=\"JPG\" name=\"JPEG\" />" |
| 134 | | " <coder magick=\"JPX\" name=\"JP2\" />" |
| 135 | | " <coder magick=\"K\" name=\"GRAY\" />" |
| 136 | | " <coder magick=\"K25\" name=\"DNG\" />" |
| 137 | | " <coder magick=\"KDC\" name=\"DNG\" />" |
| 138 | | " <coder magick=\"LOGO\" name=\"MAGICK\" />" |
| 139 | | " <coder magick=\"M2V\" name=\"MPEG\" />" |
| 140 | | " <coder magick=\"M4V\" name=\"MPEG\" />" |
| 141 | | " <coder magick=\"M\" name=\"GRAY\" />" |
| 142 | | " <coder magick=\"MNG\" name=\"PNG\" />" |
| 143 | | " <coder magick=\"MOV\" name=\"MPEG\" />" |
| 144 | | " <coder magick=\"MPG\" name=\"MPEG\" />" |
| 145 | | " <coder magick=\"MP4\" name=\"MPEG\" />" |
| 146 | | " <coder magick=\"MPRI\" name=\"MPR\" />" |
| 147 | | " <coder magick=\"MRW\" name=\"DNG\" />" |
| 148 | | " <coder magick=\"MSVG\" name=\"SVG\" />" |
| 149 | | " <coder magick=\"NEF\" name=\"DNG\" />" |
| 150 | | " <coder magick=\"NETSCAPE\" name=\"MAGICK\" />" |
| 151 | | " <coder magick=\"O\" name=\"GRAY\" />" |
| 152 | | " <coder magick=\"ORF\" name=\"DNG\" />" |
| 153 | | " <coder magick=\"OTF\" name=\"TTF\" />" |
| 154 | | " <coder magick=\"P7\" name=\"PNM\" />" |
| 155 | | " <coder magick=\"PAL\" name=\"UYVY\" />" |
| 156 | | " <coder magick=\"PAM\" name=\"PNM\" />" |
| 157 | | " <coder magick=\"PBM\" name=\"PNM\" />" |
| 158 | | " <coder magick=\"PCDS\" name=\"PCD\" />" |
| 159 | | " <coder magick=\"PCT\" name=\"PICT\" />" |
| 160 | | " <coder magick=\"PDFA\" name=\"PDF\" />" |
| 161 | | " <coder magick=\"PEF\" name=\"DNG\" />" |
| 162 | | " <coder magick=\"PFA\" name=\"TTF\" />" |
| 163 | | " <coder magick=\"PFB\" name=\"TTF\" />" |
| 164 | | " <coder magick=\"PFM\" name=\"PNM\" />" |
| 165 | | " <coder magick=\"PGM\" name=\"PNM\" />" |
| 166 | | " <coder magick=\"PGX\" name=\"JP2\" />" |
| 167 | | " <coder magick=\"PICON\" name=\"XPM\" />" |
| 168 | | " <coder magick=\"PJPEG\" name=\"JPEG\" />" |
| 169 | | " <coder magick=\"PM\" name=\"XPM\" />" |
| 170 | | " <coder magick=\"PNG24\" name=\"PNG\" />" |
| 171 | | " <coder magick=\"PNG32\" name=\"PNG\" />" |
| 172 | | " <coder magick=\"PNG8\" name=\"PNG\" />" |
| 173 | | " <coder magick=\"PPM\" name=\"PNM\" />" |
| 174 | | " <coder magick=\"PTIF\" name=\"TIFF\" />" |
| 175 | | " <coder magick=\"RADIAL-GRADIENT\" name=\"GRADIENT\" />" |
| 176 | | " <coder magick=\"RAF\" name=\"DNG\" />" |
| 177 | | " <coder magick=\"RAS\" name=\"SUN\" />" |
| 178 | | " <coder magick=\"RGBA\" name=\"RGB\" />" |
| 179 | | " <coder magick=\"RGBO\" name=\"RGB\" />" |
| 180 | | " <coder magick=\"R\" name=\"GRAY\" />" |
| 181 | | " <coder magick=\"ROSE\" name=\"MAGICK\" />" |
| 182 | | " <coder magick=\"SHTML\" name=\"HTML\" />" |
| 183 | | " <coder magick=\"SR2\" name=\"DNG\" />" |
| 184 | | " <coder magick=\"SRF\" name=\"DNG\" />" |
| 185 | | " <coder magick=\"SVGZ\" name=\"SVG\" />" |
| 186 | | " <coder magick=\"TEXT\" name=\"TXT\" />" |
| 187 | | " <coder magick=\"TIFF64\" name=\"TIFF\" />" |
| 188 | | " <coder magick=\"TIF\" name=\"TIFF\" />" |
| 189 | | " <coder magick=\"TTC\" name=\"TTF\" />" |
| 190 | | " <coder magick=\"UBRL\" name=\"BRAILLE\" />" |
| 191 | | " <coder magick=\"VDA\" name=\"TGA\" />" |
| 192 | | " <coder magick=\"VST\" name=\"TGA\" />" |
| 193 | | " <coder magick=\"WMFWIN32\" name=\"EMF\" />" |
| 194 | | " <coder magick=\"WMV\" name=\"MPEG\" />" |
| 195 | | " <coder magick=\"X3F\" name=\"DNG\" />" |
| 196 | | " <coder magick=\"XTRNARRAY\" name=\"XTRN\" />" |
| 197 | | " <coder magick=\"XTRNBLOB\" name=\"XTRN\" />" |
| 198 | | " <coder magick=\"XTRNBSTR\" name=\"XTRN\" />" |
| 199 | | " <coder magick=\"XTRNFILE\" name=\"XTRN\" />" |
| 200 | | " <coder magick=\"XTRNIMAGE\" name=\"XTRN\" />" |
| 201 | | " <coder magick=\"XTRNSTREAM\" name=\"XTRN\" />" |
| 202 | | " <coder magick=\"XV\" name=\"VIFF\" />" |
| 203 | | " <coder magick=\"Y\" name=\"GRAY\" />" |
| 204 | | " <coder magick=\"YCbCrA\" name=\"YCbCr\" />" |
| 205 | | "</codermap>"; |
| 206 | | |
| 207 | | /* |
| | 863 | if (coder_list == (SplayTreeInfo *) NULL) |
| | 864 | { |
| | 865 | coder_list=NewSplayTree(CompareSplayTreeString,RelinquishMagickMemory, |
| | 866 | DestroyCoderNode); |
| | 867 | if (coder_list == (SplayTreeInfo *) NULL) |
| | 868 | { |
| | 869 | ThrowFileException(exception,ResourceLimitError, |
| | 870 | "MemoryAllocationFailed",filename); |
| | 871 | return(MagickFalse); |
| | 872 | } |
| | 873 | } |
| | 874 | for (p=CoderMap; p->magick != (const char *) NULL; p++) |
| | 875 | { |
| | 876 | CoderInfo |
| | 877 | *coder_info; |
| | 878 | |
| | 879 | coder_info=(CoderInfo *) AcquireMagickMemory(sizeof(*coder_info)); |
| | 880 | if (coder_info == (CoderInfo *) NULL) |
| | 881 | { |
| | 882 | (void) ThrowMagickException(exception,GetMagickModule(), |
| | 883 | ResourceLimitError,"MemoryAllocationFailed","`%s'",coder_info->name); |
| | 884 | continue; |
| | 885 | } |
| | 886 | (void) ResetMagickMemory(coder_info,0,sizeof(*coder_info)); |
| | 887 | coder_info->path="[built-in]"; |
| | 888 | coder_info->magick=(char *) p->magick; |
| | 889 | coder_info->name=(char *) p->name; |
| | 890 | coder_info->exempt=MagickTrue; |
| | 891 | coder_info->signature=MagickSignature; |
| | 892 | status=AddValueToSplayTree(coder_list,ConstantString(coder_info->magick), |
| | 893 | coder_info); |
| | 894 | if (status == MagickFalse) |
| | 895 | (void) ThrowMagickException(exception,GetMagickModule(), |
| | 896 | ResourceLimitError,"MemoryAllocationFailed","`%s'",coder_info->name); |
| | 897 | } |
| | 898 | /* |
| | 899 | Load external coder map. |
| | 900 | */ |