00001 /****************************************************************************** 00002 * Copyright (c) 1998, Frank Warmerdam 00003 * 00004 * Permission is hereby granted, free of charge, to any person obtaining a 00005 * copy of this software and associated documentation files (the "Software"), 00006 * to deal in the Software without restriction, including without limitation 00007 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00008 * and/or sell copies of the Software, and to permit persons to whom the 00009 * Software is furnished to do so, subject to the following conditions: 00010 * 00011 * The above copyright notice and this permission notice shall be included 00012 * in all copies or substantial portions of the Software. 00013 * 00014 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00015 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00016 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00017 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00018 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 00019 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 00020 * DEALINGS IN THE SOFTWARE. 00021 ****************************************************************************** 00022 * 00023 * gdalallregister.cpp 00024 * 00025 * Main format registration function. 00026 * 00027 * $Log: gdalallregister_cpp-source.html,v $ 00027 * Revision 1.10 2002/04/16 13:11:48 warmerda 00027 * updated 00027 * 00028 * Revision 1.40 2002/03/04 21:54:20 warmerda 00029 * added envi format 00030 * 00031 * Revision 1.39 2001/12/08 04:43:48 warmerda 00032 * added BSB registration 00033 * 00034 * Revision 1.38 2001/11/27 14:39:41 warmerda 00035 * added usgsdem 00036 * 00037 * Revision 1.37 2001/11/16 21:13:47 warmerda 00038 * added VRT dataset 00039 * 00040 * Revision 1.36 2001/09/17 18:05:20 warmerda 00041 * Register DOQ2 format. 00042 * 00043 * Revision 1.35 2001/07/18 04:51:56 warmerda 00044 * added CPL_CVSID 00045 * 00046 * Revision 1.34 2001/07/05 23:53:53 nemec 00047 * Add FIT file format 00048 * 00049 * Revision 1.33 2001/05/15 13:24:42 warmerda 00050 * added fujibas 00051 * 00052 * Revision 1.32 2001/04/02 17:11:45 warmerda 00053 * added ecw support 00054 * 00055 * Revision 1.31 2001/03/12 15:17:32 warmerda 00056 * added aaigrid 00057 * 00058 * Revision 1.30 2001/03/06 03:53:44 sperkins 00059 * Added FITS format support. 00060 * 00061 * Revision 1.29 2001/02/06 16:34:30 warmerda 00062 * moved format registration entry points to gdal_frmts.h 00063 * 00064 * Revision 1.28 2001/01/15 14:32:30 warmerda 00065 * added envisat 00066 * 00067 * Revision 1.27 2001/01/10 04:41:09 warmerda 00068 * added gif support 00069 * 00070 * Revision 1.26 2001/01/03 18:53:23 warmerda 00071 * Added PNM 00072 * 00073 * Revision 1.25 2000/11/27 19:03:44 warmerda 00074 * added JDEM format 00075 * 00076 * Revision 1.24 2000/11/16 14:48:53 warmerda 00077 * moved GXF down in driver ordering 00078 * 00079 * Revision 1.23 2000/09/11 13:32:26 warmerda 00080 * added grass 00081 * 00082 * Revision 1.22 2000/07/19 19:06:39 warmerda 00083 * added mem 00084 * 00085 * Revision 1.21 2000/06/20 17:36:38 warmerda 00086 * added eosat fast format support 00087 * 00088 * Revision 1.20 2000/04/28 20:59:03 warmerda 00089 * added jpeg 00090 * 00091 * Revision 1.19 2000/04/27 20:02:17 warmerda 00092 * added png 00093 * 00094 * Revision 1.18 2000/04/04 23:44:45 warmerda 00095 * also call auto register function 00096 * 00097 * Revision 1.17 2000/03/31 13:35:32 warmerda 00098 * added SAR_CEOS 00099 * 00100 * Revision 1.16 2000/03/07 21:34:50 warmerda 00101 * added HKV 00102 * 00103 * Revision 1.15 2000/03/06 21:51:09 warmerda 00104 * Added MFF 00105 * 00106 * Revision 1.14 2000/01/31 16:24:37 warmerda 00107 * added aigrid2 00108 * 00109 * Revision 1.13 1999/12/29 20:42:45 warmerda 00110 * Added DOQ1 00111 * 00112 * Revision 1.12 1999/10/21 13:24:52 warmerda 00113 * Added documentation. 00114 * 00115 * Revision 1.11 1999/08/13 03:25:58 warmerda 00116 * add paux 00117 * 00118 * Revision 1.10 1999/07/23 19:36:41 warmerda 00119 * added raw/ehdr support 00120 * 00121 * Revision 1.9 1999/06/03 14:05:33 warmerda 00122 * added SDTS support 00123 * 00124 * Revision 1.8 1999/05/17 01:51:43 warmerda 00125 * Removed unused variable. 00126 * 00127 * Revision 1.7 1999/05/13 15:28:19 warmerda 00128 * Added elas format. 00129 * 00130 * Revision 1.6 1999/05/05 17:32:53 warmerda 00131 * added ceos 00132 * 00133 * Revision 1.5 1999/02/04 22:14:46 warmerda 00134 * added aigrid format 00135 * 00136 * Revision 1.4 1999/01/27 18:33:45 warmerda 00137 * Use FMRT_ macros to test if format avail 00138 * 00139 * Revision 1.3 1999/01/11 15:30:16 warmerda 00140 * added OGDI 00141 * 00142 * Revision 1.2 1998/12/03 18:37:26 warmerda 00143 * Drop GDB, add geotiff. 00144 * 00145 * Revision 1.1 1998/11/29 22:22:14 warmerda 00146 * New 00147 * 00148 */ 00149 00150 #include "gdal_priv.h" 00151 #include "gdal_frmts.h" 00152 00153 CPL_CVSID("$Id: gdalallregister_cpp-source.html,v 1.10 2002/04/16 13:11:48 warmerda Exp $"); 00154 00155 #ifdef notdef 00156 // we may have a use for this some day 00157 static char *szConfiguredFormats = "GDAL_FORMATS"; 00158 #endif 00159 00160 /************************************************************************/ 00161 /* GDALAllRegister() */ 00162 /* */ 00163 /* Register all identifiably supported formats. */ 00164 /************************************************************************/ 00165 00188 void GDALAllRegister() 00189 00190 { 00191 GetGDALDriverManager()->AutoLoadDrivers(); 00192 00193 #ifdef FRMT_vrt 00194 GDALRegister_VRT(); 00195 #endif 00196 00197 #ifdef FRMT_gdb 00198 GDALRegister_GDB(); 00199 #endif 00200 00201 #ifdef FRMT_gtiff 00202 GDALRegister_GTiff(); 00203 #endif 00204 00205 #ifdef FRMT_hfa 00206 GDALRegister_HFA(); 00207 #endif 00208 00209 #ifdef FRMT_ceos2 00210 GDALRegister_SAR_CEOS(); 00211 #endif 00212 00213 #ifdef FRMT_ceos 00214 GDALRegister_CEOS(); 00215 #endif 00216 00217 #ifdef FRMT_elas 00218 GDALRegister_ELAS(); 00219 #endif 00220 00221 #ifdef FRMT_aigrid 00222 GDALRegister_AIGrid2(); 00223 GDALRegister_AIGrid(); 00224 #endif 00225 00226 #ifdef FRMT_aaigrid 00227 GDALRegister_AAIGrid(); 00228 #endif 00229 00230 #ifdef FRMT_sdts 00231 GDALRegister_SDTS(); 00232 #endif 00233 00234 #ifdef FRMT_ogdi 00235 GDALRegister_OGDI(); 00236 #endif 00237 00238 #ifdef FRMT_dted 00239 GDALRegister_DTED(); 00240 #endif 00241 00242 #ifdef FRMT_png 00243 GDALRegister_PNG(); 00244 #endif 00245 00246 #ifdef FRMT_jpeg 00247 GDALRegister_JPEG(); 00248 #endif 00249 00250 #ifdef FRMT_mem 00251 GDALRegister_MEM(); 00252 #endif 00253 00254 #ifdef FRMT_jdem 00255 GDALRegister_JDEM(); 00256 #endif 00257 00258 #ifdef FRMT_gif 00259 GDALRegister_GIF(); 00260 #endif 00261 00262 #ifdef FRMT_envisat 00263 GDALRegister_Envisat(); 00264 #endif 00265 00266 #ifdef FRMT_fits 00267 GDALRegister_FITS(); 00268 #endif 00269 00270 #ifdef FRMT_bsb 00271 GDALRegister_BSB(); 00272 #endif 00273 00274 #ifdef FRMT_ecw 00275 GDALRegister_ECW(); 00276 #endif 00277 00278 #ifdef FRMT_raw 00279 GDALRegister_PNM(); 00280 GDALRegister_DOQ1(); 00281 GDALRegister_DOQ2(); 00282 GDALRegister_ENVI(); 00283 GDALRegister_EHdr(); 00284 GDALRegister_PAux(); 00285 GDALRegister_MFF(); 00286 GDALRegister_HKV(); 00287 GDALRegister_EFF(); 00288 GDALRegister_FujiBAS(); 00289 #endif 00290 00291 #ifdef FRMT_fit 00292 GDALRegister_FIT(); 00293 #endif 00294 00295 /* -------------------------------------------------------------------- */ 00296 /* Our test for the following is weak or expensive so we try */ 00297 /* them last. */ 00298 /* -------------------------------------------------------------------- */ 00299 #ifdef FRMT_usgsdem 00300 GDALRegister_USGSDEM(); 00301 #endif 00302 00303 #ifdef FRMT_gxf 00304 GDALRegister_GXF(); 00305 #endif 00306 00307 #ifdef FRMT_grass 00308 GDALRegister_GRASS(); 00309 #endif 00310 }