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.13 2002/12/21 19:13:12 warmerda
00027 * updated
00027 *
00028 * Revision 1.53 2002/12/03 19:03:08 dron
00029 * Added BMP driver.
00030 *
00031 * Revision 1.52 2002/12/03 04:42:35 warmerda
00032 * added NITF
00033 *
00034 * Revision 1.51 2002/11/05 06:20:07 warmerda
00035 * hacks for JP2KAK support
00036 *
00037 * Revision 1.50 2002/10/21 18:03:22 warmerda
00038 * added AutoSkipDrivers() call
00039 *
00040 * Revision 1.49 2002/10/10 10:43:37 dron
00041 * Fix for buiding GDAL with JasPer software under Windows.
00042 *
00043 * Revision 1.48 2002/10/05 12:05:21 dron
00044 * JPEG2000, L1B and HDF4 registrations moved in front of RAW (to avoid
00045 * problems with PAux). Removed extra JPEG2000 registration. FAST registration
00046 * combined with other RAW formats.
00047 *
00048 * Revision 1.47 2002/10/03 05:41:17 warmerda
00049 * added GSC Geogrid format
00050 *
00051 * Revision 1.46 2002/09/19 14:49:41 warmerda
00052 * added jpeg2000
00053 *
00054 * Revision 1.45 2002/08/13 16:59:53 dron
00055 * New driver: EOSAT FAST format
00056 *
00057 * Revision 1.44 2002/07/16 13:30:27 dron
00058 * New driver: HDF4 dataset.
00059 *
00060 * Revision 1.43 2002/06/13 09:53:45 dron
00061 * Registration of AVHRR L1B driver moved above of GRASS driver registartion.
00062 *
00063 * Revision 1.42 2002/05/08 16:34:26 dron
00064 * NOAA Polar Orbiter Dataset reader added
00065 *
00066 * Revision 1.41 2002/04/12 20:19:25 warmerda
00067 * added xpm
00068 *
00069 * Revision 1.40 2002/03/04 21:54:20 warmerda
00070 * added envi format
00071 *
00072 * Revision 1.39 2001/12/08 04:43:48 warmerda
00073 * added BSB registration
00074 *
00075 * Revision 1.38 2001/11/27 14:39:41 warmerda
00076 * added usgsdem
00077 *
00078 * Revision 1.37 2001/11/16 21:13:47 warmerda
00079 * added VRT dataset
00080 *
00081 * Revision 1.36 2001/09/17 18:05:20 warmerda
00082 * Register DOQ2 format.
00083 *
00084 * Revision 1.35 2001/07/18 04:51:56 warmerda
00085 * added CPL_CVSID
00086 *
00087 * Revision 1.34 2001/07/05 23:53:53 nemec
00088 * Add FIT file format
00089 *
00090 * Revision 1.33 2001/05/15 13:24:42 warmerda
00091 * added fujibas
00092 *
00093 * Revision 1.32 2001/04/02 17:11:45 warmerda
00094 * added ecw support
00095 *
00096 * Revision 1.31 2001/03/12 15:17:32 warmerda
00097 * added aaigrid
00098 *
00099 * Revision 1.30 2001/03/06 03:53:44 sperkins
00100 * Added FITS format support.
00101 *
00102 * Revision 1.29 2001/02/06 16:34:30 warmerda
00103 * moved format registration entry points to gdal_frmts.h
00104 *
00105 * Revision 1.28 2001/01/15 14:32:30 warmerda
00106 * added envisat
00107 *
00108 * Revision 1.27 2001/01/10 04:41:09 warmerda
00109 * added gif support
00110 *
00111 * Revision 1.26 2001/01/03 18:53:23 warmerda
00112 * Added PNM
00113 *
00114 * Revision 1.25 2000/11/27 19:03:44 warmerda
00115 * added JDEM format
00116 *
00117 * Revision 1.24 2000/11/16 14:48:53 warmerda
00118 * moved GXF down in driver ordering
00119 *
00120 * Revision 1.23 2000/09/11 13:32:26 warmerda
00121 * added grass
00122 *
00123 * Revision 1.22 2000/07/19 19:06:39 warmerda
00124 * added mem
00125 *
00126 * Revision 1.21 2000/06/20 17:36:38 warmerda
00127 * added eosat fast format support
00128 *
00129 * Revision 1.20 2000/04/28 20:59:03 warmerda
00130 * added jpeg
00131 *
00132 * Revision 1.19 2000/04/27 20:02:17 warmerda
00133 * added png
00134 *
00135 * Revision 1.18 2000/04/04 23:44:45 warmerda
00136 * also call auto register function
00137 *
00138 * Revision 1.17 2000/03/31 13:35:32 warmerda
00139 * added SAR_CEOS
00140 *
00141 * Revision 1.16 2000/03/07 21:34:50 warmerda
00142 * added HKV
00143 *
00144 * Revision 1.15 2000/03/06 21:51:09 warmerda
00145 * Added MFF
00146 *
00147 * Revision 1.14 2000/01/31 16:24:37 warmerda
00148 * added aigrid2
00149 *
00150 * Revision 1.13 1999/12/29 20:42:45 warmerda
00151 * Added DOQ1
00152 *
00153 * Revision 1.12 1999/10/21 13:24:52 warmerda
00154 * Added documentation.
00155 *
00156 * Revision 1.11 1999/08/13 03:25:58 warmerda
00157 * add paux
00158 *
00159 * Revision 1.10 1999/07/23 19:36:41 warmerda
00160 * added raw/ehdr support
00161 *
00162 * Revision 1.9 1999/06/03 14:05:33 warmerda
00163 * added SDTS support
00164 *
00165 * Revision 1.8 1999/05/17 01:51:43 warmerda
00166 * Removed unused variable.
00167 *
00168 * Revision 1.7 1999/05/13 15:28:19 warmerda
00169 * Added elas format.
00170 *
00171 * Revision 1.6 1999/05/05 17:32:53 warmerda
00172 * added ceos
00173 *
00174 * Revision 1.5 1999/02/04 22:14:46 warmerda
00175 * added aigrid format
00176 *
00177 * Revision 1.4 1999/01/27 18:33:45 warmerda
00178 * Use FMRT_ macros to test if format avail
00179 *
00180 * Revision 1.3 1999/01/11 15:30:16 warmerda
00181 * added OGDI
00182 *
00183 * Revision 1.2 1998/12/03 18:37:26 warmerda
00184 * Drop GDB, add geotiff.
00185 *
00186 * Revision 1.1 1998/11/29 22:22:14 warmerda
00187 * New
00188 *
00189 */
00190
00191 #include "gdal_priv.h"
00192 #include "gdal_frmts.h"
00193
00194 CPL_CVSID("$Id: gdalallregister_cpp-source.html,v 1.13 2002/12/21 19:13:12 warmerda Exp $");
00195
00196 #ifdef notdef
00197 // we may have a use for this some day
00198 static char *szConfiguredFormats = "GDAL_FORMATS";
00199 #endif
00200
00201 /************************************************************************/
00202 /* GDALAllRegister() */
00203 /* */
00204 /* Register all identifiably supported formats. */
00205 /************************************************************************/
00206
00229 void GDALAllRegister()
00230
00231 {
00232 GetGDALDriverManager()->AutoLoadDrivers();
00233
00234 #ifdef FRMT_vrt
00235 GDALRegister_VRT();
00236 #endif
00237
00238 #ifdef FRMT_gdb
00239 GDALRegister_GDB();
00240 #endif
00241
00242 #ifdef FRMT_gtiff
00243 GDALRegister_GTiff();
00244 #endif
00245
00246 #ifdef FRMT_nitf
00247 GDALRegister_NITF();
00248 #endif
00249
00250 #ifdef FRMT_hfa
00251 GDALRegister_HFA();
00252 #endif
00253
00254 #ifdef FRMT_ceos2
00255 GDALRegister_SAR_CEOS();
00256 #endif
00257
00258 #ifdef FRMT_ceos
00259 GDALRegister_CEOS();
00260 #endif
00261
00262 #ifdef FRMT_elas
00263 GDALRegister_ELAS();
00264 #endif
00265
00266 #ifdef FRMT_aigrid
00267 GDALRegister_AIGrid2();
00268 GDALRegister_AIGrid();
00269 #endif
00270
00271 #ifdef FRMT_aaigrid
00272 GDALRegister_AAIGrid();
00273 #endif
00274
00275 #ifdef FRMT_sdts
00276 GDALRegister_SDTS();
00277 #endif
00278
00279 #ifdef FRMT_ogdi
00280 GDALRegister_OGDI();
00281 #endif
00282
00283 #ifdef FRMT_dted
00284 GDALRegister_DTED();
00285 #endif
00286
00287 #ifdef FRMT_png
00288 GDALRegister_PNG();
00289 #endif
00290
00291 #ifdef FRMT_jpeg
00292 GDALRegister_JPEG();
00293 #endif
00294
00295 #ifdef FRMT_mem
00296 GDALRegister_MEM();
00297 #endif
00298
00299 #ifdef FRMT_jdem
00300 GDALRegister_JDEM();
00301 #endif
00302
00303 #ifdef FRMT_gif
00304 GDALRegister_GIF();
00305 #endif
00306
00307 #ifdef FRMT_envisat
00308 GDALRegister_Envisat();
00309 #endif
00310
00311 #ifdef FRMT_fits
00312 GDALRegister_FITS();
00313 #endif
00314
00315 #ifdef FRMT_bsb
00316 GDALRegister_BSB();
00317 #endif
00318
00319 #ifdef FRMT_xpm
00320 GDALRegister_XPM();
00321 #endif
00322
00323 #ifdef FRMT_bmp
00324 GDALRegister_BMP();
00325 #endif
00326
00327 #ifdef FRMT_ecw
00328 GDALRegister_ECW();
00329 #endif
00330
00331 #ifdef FRMT_jp2kak
00332 // JPEG2000 support using Kakadu toolkit
00333 GDALRegister_JP2KAK();
00334 #endif
00335
00336 #ifdef FRMT_jpeg2000
00337 // JPEG2000 support using JasPer toolkit
00338 GDALRegister_JPEG2000();
00339 #endif
00340
00341 #ifdef FRMT_hdf4
00342 GDALRegister_HDF4();
00343 GDALRegister_HDF4Image();
00344 #endif
00345
00346 #ifdef FRMT_l1b
00347 GDALRegister_L1B();
00348 #endif
00349
00350 #ifdef FRMT_raw
00351 GDALRegister_PNM();
00352 GDALRegister_DOQ1();
00353 GDALRegister_DOQ2();
00354 GDALRegister_ENVI();
00355 GDALRegister_EHdr();
00356 GDALRegister_PAux();
00357 GDALRegister_MFF();
00358 GDALRegister_HKV();
00359 GDALRegister_EFF();
00360 GDALRegister_FujiBAS();
00361 GDALRegister_GSC();
00362 GDALRegister_FAST();
00363 #endif
00364
00365 #ifdef FRMT_fit
00366 GDALRegister_FIT();
00367 #endif
00368
00369 /* -------------------------------------------------------------------- */
00370 /* Our test for the following is weak or expensive so we try */
00371 /* them last. */
00372 /* -------------------------------------------------------------------- */
00373 #ifdef FRMT_usgsdem
00374 GDALRegister_USGSDEM();
00375 #endif
00376
00377 #ifdef FRMT_gxf
00378 GDALRegister_GXF();
00379 #endif
00380
00381 #ifdef FRMT_grass
00382 GDALRegister_GRASS();
00383 #endif
00384
00385 /* -------------------------------------------------------------------- */
00386 /* Deregister any drivers explicitly marked as supressed by the */
00387 /* GDAL_SKIP environment variable. */
00388 /* -------------------------------------------------------------------- */
00389 GetGDALDriverManager()->AutoSkipDrivers();
00390 }
1.2.3-20001105 written by Dimitri van Heesch,
© 1997-2000