/src/gdal/frmts/gdalallregister.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | /****************************************************************************** |
2 | | * |
3 | | * Project: GDAL Core |
4 | | * Purpose: Implementation of GDALAllRegister(), primary format registration. |
5 | | * Author: Frank Warmerdam, warmerdam@pobox.com |
6 | | * |
7 | | ****************************************************************************** |
8 | | * Copyright (c) 1998, Frank Warmerdam |
9 | | * Copyright (c) 2007-2014, Even Rouault <even dot rouault at spatialys.com> |
10 | | * |
11 | | * SPDX-License-Identifier: MIT |
12 | | ****************************************************************************/ |
13 | | |
14 | | #include "gdal_priv.h" |
15 | | #include "gdal_frmts.h" |
16 | | #include "ogrsf_frmts.h" |
17 | | |
18 | | #ifdef GNM_ENABLED |
19 | | #include "gnm_frmts.h" |
20 | | #endif |
21 | | |
22 | | #if defined(HAVE_EXTERNAL_DEFERRED_PLUGINS) |
23 | | // The above define and the below functions are set and generated by |
24 | | // frmts/CMakeLists.txt when a CMake ADD_EXTERNAL_DEFERRED_PLUGIN_XXXX |
25 | | // variable is set. |
26 | | extern "C" void DeclareExternalDeferredPlugins(void); |
27 | | #endif |
28 | | |
29 | | extern "C" void CPL_DLL GDALRegister_raw_no_sidecar(); |
30 | | extern "C" void CPL_DLL GDALRegister_raw_with_sidecar(); |
31 | | |
32 | | /************************************************************************/ |
33 | | /* GDALRegisterPlugin() */ |
34 | | /* */ |
35 | | /* Register a plugin by name, returning an error if not found */ |
36 | | /************************************************************************/ |
37 | | |
38 | | /** |
39 | | * \brief Register a plugin by name, returning an error if not found |
40 | | * |
41 | | * This function will call GDALDriverManager::LoadPlugin() to register a |
42 | | * specific plugin by name. |
43 | | * |
44 | | * This method is intended to be called instead of GDALAllRegister() or |
45 | | * GDALRegisterPlugins() when fine tuning which drivers are needed at runtime. |
46 | | * |
47 | | * @see GDALDriverManager::LoadPlugin() |
48 | | * @see GDALDriverManager::AutoLoadDrivers() |
49 | | * @since GDAL 3.8 |
50 | | */ |
51 | | CPLErr GDALRegisterPlugin(const char *name) |
52 | 0 | { |
53 | 0 | auto poDriverManager = GetGDALDriverManager(); |
54 | | // LoadPlugin is a no-op if compiled with GDAL_NO_AUTOLOAD defined. |
55 | 0 | return poDriverManager->LoadPlugin(name); |
56 | 0 | } |
57 | | |
58 | | /************************************************************************/ |
59 | | /* GDALRegisterPlugins() */ |
60 | | /* */ |
61 | | /* Register drivers and support code available as a plugin. */ |
62 | | /************************************************************************/ |
63 | | |
64 | | /** |
65 | | * \brief Register drivers and support code available as a plugin. |
66 | | * |
67 | | * This function will call GDALDriverManager::AutoLoadDrivers() to |
68 | | * register all drivers or supporting code (for example VRT pixelfunctions |
69 | | * or VSI adapters) that have not been compiled into the GDAL core but instead |
70 | | * are made available through GDAL's plugin mechanism. |
71 | | * |
72 | | * This method is intended to be called instead of GDALAllRegister() when |
73 | | * fine tuning which drivers are needed at runtime. |
74 | | * |
75 | | * @see GDALDriverManager::AutoLoadDrivers() |
76 | | * @since GDAL 3.8 |
77 | | */ |
78 | | void CPL_DLL GDALRegisterPlugins(void) |
79 | 0 | { |
80 | 0 | auto poDriverManager = GetGDALDriverManager(); |
81 | | // AutoLoadDrivers is a no-op if compiled with GDAL_NO_AUTOLOAD defined. |
82 | 0 | poDriverManager->AutoLoadDrivers(); |
83 | 0 | poDriverManager->AutoLoadPythonDrivers(); |
84 | | |
85 | | /* -------------------------------------------------------------------- */ |
86 | | /* Deregister any drivers explicitly marked as suppressed by the */ |
87 | | /* GDAL_SKIP environment variable. */ |
88 | | /* -------------------------------------------------------------------- */ |
89 | 0 | poDriverManager->AutoSkipDrivers(); |
90 | |
|
91 | 0 | poDriverManager->ReorderDrivers(); |
92 | 0 | } |
93 | | |
94 | | /************************************************************************/ |
95 | | /* GDALAllRegister() */ |
96 | | /* */ |
97 | | /* Register all identifiably supported formats. */ |
98 | | /************************************************************************/ |
99 | | |
100 | | /** |
101 | | * Register all known configured GDAL drivers. |
102 | | * |
103 | | * This function will drive any of the following that are configured into |
104 | | * GDAL. See <a href="http://gdal.org/formats_list.html">raster list</a> and |
105 | | * <a href="http://gdal.org/ogr_formats.html">vector full list</a> |
106 | | * |
107 | | * This function should generally be called once at the beginning of the |
108 | | * application. |
109 | | */ |
110 | | |
111 | | void CPL_STDCALL GDALAllRegister() |
112 | | |
113 | 0 | { |
114 | 0 | auto poDriverManager = GetGDALDriverManager(); |
115 | |
|
116 | | #if defined(HAVE_EXTERNAL_DEFERRED_PLUGINS) |
117 | | DeclareExternalDeferredPlugins(); |
118 | | #endif |
119 | |
|
120 | | #if defined(DEFERRED_ARROW_DRIVER) |
121 | | DeclareDeferredOGRArrowPlugin(); |
122 | | #endif |
123 | | #if defined(DEFERRED_BASISU_KTX2_DRIVER) |
124 | | DeclareDeferredBASISU_KTX2Plugin(); |
125 | | #endif |
126 | | #if defined(DEFERRED_CAD_DRIVER) |
127 | | DeclareDeferredOGRCADPlugin(); |
128 | | #endif |
129 | | #if defined(DEFERRED_CARTO_DRIVER) |
130 | | DeclareDeferredOGRCartoPlugin(); |
131 | | #endif |
132 | | #if defined(DEFERRED_DDS_DRIVER) |
133 | | DeclareDeferredDDSPlugin(); |
134 | | #endif |
135 | | #if defined(DEFERRED_DWG_DRIVER) |
136 | | DeclareDeferredOGRDWGPlugin(); |
137 | | DeclareDeferredOGRDGNV8Plugin(); |
138 | | #endif |
139 | | #if defined(DEFERRED_ELASTIC_DRIVER) |
140 | | DeclareDeferredOGRElasticPlugin(); |
141 | | #endif |
142 | | #if defined(DEFERRED_EXR_DRIVER) |
143 | | DeclareDeferredEXRPlugin(); |
144 | | #endif |
145 | | #if defined(DEFERRED_ECW_DRIVER) |
146 | | DeclareDeferredECWPlugin(); |
147 | | #endif |
148 | | #if defined(DEFERRED_FILEGDB_DRIVER) |
149 | | DeclareDeferredOGRFileGDBPlugin(); |
150 | | #endif |
151 | | #if defined(DEFERRED_FITS_DRIVER) |
152 | | DeclareDeferredFITSPlugin(); |
153 | | #endif |
154 | | #if defined(DEFERRED_GEOR_DRIVER) |
155 | | DeclareDeferredGEORPlugin(); |
156 | | #endif |
157 | | #if defined(DEFERRED_GIF_DRIVER) |
158 | | DeclareDeferredGIFPlugin(); |
159 | | #endif |
160 | | #if defined(DEFERRED_GMLAS_DRIVER) |
161 | | DeclareDeferredOGRGMLASPlugin(); |
162 | | #endif |
163 | | #if defined(DEFERRED_GRIB_DRIVER) |
164 | | DeclareDeferredGRIBPlugin(); |
165 | | #endif |
166 | | #if defined(DEFERRED_GTA_DRIVER) |
167 | | DeclareDeferredGTAPlugin(); |
168 | | #endif |
169 | | #if defined(DEFERRED_HANA_DRIVER) |
170 | | DeclareDeferredOGRHANAPlugin(); |
171 | | #endif |
172 | | #if defined(DEFERRED_AVIF_DRIVER) |
173 | | DeclareDeferredAVIFPlugin(); |
174 | | #endif |
175 | | #if defined(DEFERRED_HEIF_DRIVER) |
176 | | DeclareDeferredHEIFPlugin(); |
177 | | #endif |
178 | | #if defined(DEFERRED_HDF4_DRIVER) |
179 | | DeclareDeferredHDF4Plugin(); |
180 | | #endif |
181 | | #if defined(DEFERRED_KEA_DRIVER) |
182 | | // Must be registered before HDF5 so that when the plugin is not |
183 | | // installer the proper suggestion message is displayed |
184 | | DeclareDeferredKEAPlugin(); |
185 | | #endif |
186 | | #if defined(DEFERRED_HDF5_DRIVER) |
187 | | DeclareDeferredHDF5Plugin(); |
188 | | #endif |
189 | | #if defined(DEFERRED_IDB_DRIVER) |
190 | | DeclareDeferredOGRIDBPlugin(); |
191 | | #endif |
192 | | #if defined(DEFERRED_JP2KAK_DRIVER) |
193 | | DeclareDeferredJP2KAKPlugin(); |
194 | | #endif |
195 | | #if defined(DEFERRED_JP2OPENJPEG_DRIVER) |
196 | | DeclareDeferredOPENJPEGPlugin(); |
197 | | #endif |
198 | | #if defined(DEFERRED_JPEG_DRIVER) |
199 | | DeclareDeferredJPEGPlugin(); |
200 | | #endif |
201 | | #if defined(DEFERRED_JPEGXL_DRIVER) |
202 | | DeclareDeferredJPEGXLPlugin(); |
203 | | #endif |
204 | | #if defined(DEFERRED_JPIPKAK_DRIVER) |
205 | | DeclareDeferredJPIPKAKPlugin(); |
206 | | #endif |
207 | | #if defined(DEFERRED_LIBKML_DRIVER) |
208 | | DeclareDeferredOGRLIBKMLPlugin(); |
209 | | #endif |
210 | | #if defined(DEFERRED_MONGODBV3_DRIVER) |
211 | | DeclareDeferredOGRMongoDBv3Plugin(); |
212 | | #endif |
213 | | #if defined(DEFERRED_MRF_DRIVER) |
214 | | DeclareDeferredMRFPlugin(); |
215 | | #endif |
216 | | #if defined(DEFERRED_MRSID_DRIVER) |
217 | | DeclareDeferredMrSIDPlugin(); |
218 | | #endif |
219 | | #if defined(DEFERRED_MSG_DRIVER) |
220 | | DeclareDeferredMSGPlugin(); |
221 | | #endif |
222 | | #if defined(DEFERRED_MSSQLSPATIAL_DRIVER) |
223 | | DeclareDeferredOGRMSSQLSpatialPlugin(); |
224 | | #endif |
225 | | #if defined(DEFERRED_MYSQL_DRIVER) |
226 | | DeclareDeferredOGRMySQLPlugin(); |
227 | | #endif |
228 | | #if defined(DEFERRED_NETCDF_DRIVER) |
229 | | DeclareDeferredNetCDFPlugin(); |
230 | | #endif |
231 | | #if defined(DEFERRED_NITF_DRIVER) |
232 | | DeclareDeferredNITFPlugin(); |
233 | | #endif |
234 | | #if defined(DEFERRED_OCI_DRIVER) |
235 | | DeclareDeferredOGROCIPlugin(); |
236 | | #endif |
237 | | #if defined(DEFERRED_ODBC_DRIVER) |
238 | | DeclareDeferredOGRODBCPlugin(); |
239 | | #endif |
240 | | #if defined(DEFERRED_OGDI_DRIVER) |
241 | | DeclareDeferredOGROGDIPlugin(); |
242 | | #endif |
243 | | #if defined(DEFERRED_OPENFILEGDB_DRIVER) |
244 | | DeclareDeferredOGROpenFileGDBPlugin(); |
245 | | #endif |
246 | | #if defined(DEFERRED_PARQUET_DRIVER) |
247 | | DeclareDeferredOGRParquetPlugin(); |
248 | | #endif |
249 | | #if defined(DEFERRED_PCIDSK_DRIVER) |
250 | | DeclareDeferredPCIDSKPlugin(); |
251 | | #endif |
252 | | #if defined(DEFERRED_PCRASTER_DRIVER) |
253 | | DeclareDeferredPCRasterPlugin(); |
254 | | #endif |
255 | | #if defined(DEFERRED_POSTGISRASTER_DRIVER) |
256 | | DeclareDeferredPostGISRasterPlugin(); |
257 | | #endif |
258 | | #if defined(DEFERRED_PLSCENES_DRIVER) |
259 | | DeclareDeferredOGRPLSCENESPlugin(); |
260 | | #endif |
261 | | #if defined(DEFERRED_PDF_DRIVER) |
262 | | DeclareDeferredPDFPlugin(); |
263 | | #endif |
264 | | #if defined(DEFERRED_PDS_DRIVER) |
265 | | DeclareDeferredPDSPlugin(); |
266 | | #endif |
267 | | #if defined(DEFERRED_PG_DRIVER) |
268 | | DeclareDeferredOGRPGPlugin(); |
269 | | #endif |
270 | | #if defined(DEFERRED_PNG_DRIVER) |
271 | | DeclareDeferredPNGPlugin(); |
272 | | #endif |
273 | | #if defined(DEFERRED_RASTERLITE_DRIVER) |
274 | | DeclareDeferredRasterlitePlugin(); |
275 | | #endif |
276 | | #if defined(DEFERRED_SOSI_DRIVER) |
277 | | DeclareDeferredOGRSOSIPlugin(); |
278 | | #endif |
279 | | #if defined(DEFERRED_TILEDB_DRIVER) |
280 | | DeclareDeferredTileDBPlugin(); |
281 | | #endif |
282 | | #if defined(DEFERRED_VFK_DRIVER) |
283 | | DeclareDeferredOGRVFKPlugin(); |
284 | | #endif |
285 | | #if defined(DEFERRED_WCS_DRIVER) |
286 | | DeclareDeferredWCSPlugin(); |
287 | | #endif |
288 | | #if defined(DEFERRED_WEBP_DRIVER) |
289 | | DeclareDeferredWEBPPlugin(); |
290 | | #endif |
291 | | #if defined(DEFERRED_WMS_DRIVER) |
292 | | DeclareDeferredWMSPlugin(); |
293 | | #endif |
294 | | #if defined(DEFERRED_WMTS_DRIVER) |
295 | | DeclareDeferredWMTSPlugin(); |
296 | | #endif |
297 | | #if defined(DEFERRED_XLS_DRIVER) |
298 | | DeclareDeferredOGRXLSPlugin(); |
299 | | #endif |
300 | | #if defined(DEFERRED_ZARR_DRIVER) |
301 | | DeclareDeferredZarrPlugin(); |
302 | | #endif |
303 | | #if defined(DEFERRED_XODR_DRIVER) |
304 | | DeclareDeferredOGRXODRPlugin(); |
305 | | #endif |
306 | | #if defined(DEFERRED_ADBC_DRIVER) |
307 | | DeclareDeferredOGRADBCPlugin(); |
308 | | #endif |
309 | | |
310 | | // AutoLoadDrivers is a no-op if compiled with GDAL_NO_AUTOLOAD defined. |
311 | 0 | poDriverManager->AutoLoadDrivers(); |
312 | | |
313 | | // NOTE: frmts/drivers.ini in the same directory should be kept in same |
314 | | // order as this file |
315 | |
|
316 | 0 | #ifdef FRMT_vrt |
317 | 0 | GDALRegister_VRT(); |
318 | 0 | #endif |
319 | |
|
320 | | #ifdef FRMT_derived |
321 | | GDALRegister_Derived(); |
322 | | #endif |
323 | |
|
324 | | #ifdef FRMT_gti |
325 | | GDALRegister_GTI(); |
326 | | #endif |
327 | |
|
328 | | #ifdef FRMT_snap_tiff |
329 | | GDALRegister_SNAP_TIFF(); |
330 | | #endif |
331 | |
|
332 | 0 | #ifdef FRMT_gtiff |
333 | 0 | GDALRegister_GTiff(); |
334 | 0 | GDALRegister_COG(); |
335 | 0 | #endif |
336 | |
|
337 | | #ifdef FRMT_libertiff |
338 | | GDALRegister_LIBERTIFF(); |
339 | | #endif |
340 | |
|
341 | | #ifdef FRMT_nitf |
342 | | GDALRegister_NITF(); |
343 | | GDALRegister_RPFTOC(); |
344 | | GDALRegister_ECRGTOC(); |
345 | | #endif |
346 | |
|
347 | | #ifdef FRMT_hfa |
348 | | GDALRegister_HFA(); |
349 | | #endif |
350 | |
|
351 | | #ifdef FRMT_ceos2 |
352 | | GDALRegister_SAR_CEOS(); |
353 | | #endif |
354 | |
|
355 | | #ifdef FRMT_ceos |
356 | | GDALRegister_CEOS(); |
357 | | #endif |
358 | |
|
359 | | #ifdef FRMT_jaxapalsar |
360 | | GDALRegister_PALSARJaxa(); |
361 | | #endif |
362 | |
|
363 | | #ifdef FRMT_gff |
364 | | GDALRegister_GFF(); |
365 | | #endif |
366 | |
|
367 | | #ifdef FRMT_esric |
368 | | GDALRegister_ESRIC(); |
369 | | #endif |
370 | |
|
371 | | #ifdef FRMT_aigrid |
372 | | // GDALRegister_AIGrid2(); |
373 | | GDALRegister_AIGrid(); |
374 | | #endif |
375 | |
|
376 | | #ifdef FRMT_aaigrid |
377 | | GDALRegister_AAIGrid(); |
378 | | GDALRegister_GRASSASCIIGrid(); |
379 | | GDALRegister_ISG(); |
380 | | #endif |
381 | |
|
382 | | #ifdef FRMT_dted |
383 | | GDALRegister_DTED(); |
384 | | #endif |
385 | |
|
386 | | #ifdef FRMT_png |
387 | | GDALRegister_PNG(); |
388 | | #endif |
389 | |
|
390 | | #ifdef FRMT_dds |
391 | | GDALRegister_DDS(); |
392 | | #endif |
393 | |
|
394 | | #ifdef FRMT_gta |
395 | | GDALRegister_GTA(); |
396 | | #endif |
397 | |
|
398 | | #ifdef FRMT_jpeg |
399 | | GDALRegister_JPEG(); |
400 | | #endif |
401 | |
|
402 | 0 | #ifdef FRMT_mem |
403 | 0 | GDALRegister_MEM(); |
404 | 0 | #endif |
405 | |
|
406 | | #ifdef FRMT_jdem |
407 | | GDALRegister_JDEM(); |
408 | | #endif |
409 | |
|
410 | | #ifdef FRMT_gif |
411 | | GDALRegister_GIF(); |
412 | | GDALRegister_BIGGIF(); |
413 | | #endif |
414 | |
|
415 | | #ifdef FRMT_envisat |
416 | | GDALRegister_Envisat(); |
417 | | #endif |
418 | |
|
419 | | #ifdef FRMT_fits |
420 | | GDALRegister_FITS(); |
421 | | #endif |
422 | |
|
423 | | #ifdef FRMT_bsb |
424 | | GDALRegister_BSB(); |
425 | | #endif |
426 | |
|
427 | | #ifdef FRMT_bmp |
428 | | GDALRegister_BMP(); |
429 | | #endif |
430 | |
|
431 | | #ifdef FRMT_dimap |
432 | | GDALRegister_DIMAP(); |
433 | | #endif |
434 | |
|
435 | | #ifdef FRMT_airsar |
436 | | GDALRegister_AirSAR(); |
437 | | #endif |
438 | |
|
439 | | #ifdef FRMT_rs2 |
440 | | GDALRegister_RS2(); |
441 | | #endif |
442 | |
|
443 | | #ifdef FRMT_safe |
444 | | GDALRegister_SAFE(); |
445 | | #endif |
446 | |
|
447 | | #ifdef FRMT_pcidsk |
448 | | GDALRegister_PCIDSK(); |
449 | | #endif |
450 | |
|
451 | | #ifdef FRMT_pcraster |
452 | | GDALRegister_PCRaster(); |
453 | | #endif |
454 | |
|
455 | | #ifdef FRMT_ilwis |
456 | | GDALRegister_ILWIS(); |
457 | | #endif |
458 | |
|
459 | | #ifdef FRMT_srtmhgt |
460 | | GDALRegister_SRTMHGT(); |
461 | | #endif |
462 | |
|
463 | | #ifdef FRMT_leveller |
464 | | GDALRegister_Leveller(); |
465 | | #endif |
466 | |
|
467 | | #ifdef FRMT_terragen |
468 | | GDALRegister_Terragen(); |
469 | | #endif |
470 | |
|
471 | | #ifdef FRMT_netcdf |
472 | | GDALRegister_netCDF(); |
473 | | #endif |
474 | |
|
475 | | #ifdef FRMT_hdf4 |
476 | | GDALRegister_HDF4(); |
477 | | GDALRegister_HDF4Image(); |
478 | | #endif |
479 | |
|
480 | | #ifdef FRMT_pds |
481 | | GDALRegister_ISIS3(); |
482 | | GDALRegister_ISIS2(); |
483 | | GDALRegister_PDS(); |
484 | | GDALRegister_PDS4(); |
485 | | GDALRegister_VICAR(); |
486 | | #endif |
487 | |
|
488 | | #ifdef FRMT_til |
489 | | GDALRegister_TIL(); |
490 | | #endif |
491 | |
|
492 | | #ifdef FRMT_ers |
493 | | GDALRegister_ERS(); |
494 | | #endif |
495 | |
|
496 | | #ifdef FRMT_jp2kak |
497 | | // JPEG2000 support using Kakadu toolkit |
498 | | GDALRegister_JP2KAK(); |
499 | | #endif |
500 | |
|
501 | | #ifdef FRMT_jpipkak |
502 | | // JPEG2000 support using Kakadu toolkit |
503 | | GDALRegister_JPIPKAK(); |
504 | | #endif |
505 | |
|
506 | | #ifdef FRMT_ecw |
507 | | GDALRegister_ECW(); |
508 | | GDALRegister_JP2ECW(); |
509 | | #endif |
510 | |
|
511 | | #ifdef FRMT_openjpeg |
512 | | // JPEG2000 support using OpenJPEG library |
513 | | GDALRegister_JP2OpenJPEG(); |
514 | | #endif |
515 | |
|
516 | | #ifdef FRMT_l1b |
517 | | GDALRegister_L1B(); |
518 | | #endif |
519 | |
|
520 | | #ifdef FRMT_grib |
521 | | GDALRegister_GRIB(); |
522 | | #endif |
523 | |
|
524 | | #ifdef FRMT_mrsid |
525 | | GDALRegister_MrSID(); |
526 | | #endif |
527 | |
|
528 | | #ifdef FRMT_rmf |
529 | | GDALRegister_RMF(); |
530 | | #endif |
531 | |
|
532 | | #ifdef FRMT_wcs |
533 | | GDALRegister_WCS(); |
534 | | #endif |
535 | |
|
536 | | #ifdef FRMT_wms |
537 | | GDALRegister_WMS(); |
538 | | #endif |
539 | |
|
540 | | #ifdef FRMT_msgn |
541 | | GDALRegister_MSGN(); |
542 | | #endif |
543 | |
|
544 | | #ifdef FRMT_msg |
545 | | GDALRegister_MSG(); |
546 | | #endif |
547 | |
|
548 | | #ifdef FRMT_idrisi |
549 | | GDALRegister_IDRISI(); |
550 | | #endif |
551 | |
|
552 | | #ifdef FRMT_gsg |
553 | | GDALRegister_GSBG(); |
554 | | GDALRegister_GS7BG(); |
555 | | #endif |
556 | |
|
557 | | #ifdef FRMT_cosar |
558 | | GDALRegister_COSAR(); |
559 | | #endif |
560 | |
|
561 | | #ifdef FRMT_tsx |
562 | | GDALRegister_TSX(); |
563 | | #endif |
564 | |
|
565 | | #ifdef FRMT_coasp |
566 | | GDALRegister_COASP(); |
567 | | #endif |
568 | |
|
569 | | #ifdef FRMT_map |
570 | | GDALRegister_MAP(); |
571 | | #endif |
572 | |
|
573 | | #ifdef FRMT_kmlsuperoverlay |
574 | | GDALRegister_KMLSUPEROVERLAY(); |
575 | | #endif |
576 | |
|
577 | | #ifdef FRMT_webp |
578 | | GDALRegister_WEBP(); |
579 | | #endif |
580 | |
|
581 | | #ifdef FRMT_pdf |
582 | | GDALRegister_PDF(); |
583 | | #endif |
584 | |
|
585 | | #ifdef FRMT_mbtiles |
586 | | GDALRegister_MBTiles(); |
587 | | #endif |
588 | |
|
589 | | #ifdef FRMT_plmosaic |
590 | | GDALRegister_PLMOSAIC(); |
591 | | #endif |
592 | |
|
593 | | #ifdef FRMT_cals |
594 | | GDALRegister_CALS(); |
595 | | #endif |
596 | |
|
597 | | #ifdef FRMT_wmts |
598 | | GDALRegister_WMTS(); |
599 | | #endif |
600 | |
|
601 | | #ifdef FRMT_sentinel2 |
602 | | GDALRegister_SENTINEL2(); |
603 | | #endif |
604 | |
|
605 | | #ifdef FRMT_mrf |
606 | | GDALRegister_mrf(); |
607 | | #endif |
608 | |
|
609 | | #ifdef FRMT_tiledb |
610 | | GDALRegister_TileDB(); |
611 | | #endif |
612 | |
|
613 | | #ifdef FRMT_rdb |
614 | | GDALRegister_RDB(); |
615 | | #endif |
616 | | /* -------------------------------------------------------------------- */ |
617 | | /* Put raw formats at the end of the list. These drivers support */ |
618 | | /* various ASCII-header labeled formats, so the driver could be */ |
619 | | /* confused if you have files in some of above formats and such */ |
620 | | /* ASCII-header in the same directory. */ |
621 | | /* -------------------------------------------------------------------- */ |
622 | |
|
623 | | #ifdef FRMT_raw |
624 | | GDALRegister_raw_no_sidecar(); |
625 | | #endif |
626 | | |
627 | | /* -------------------------------------------------------------------- */ |
628 | | /* Our test for the following is weak or expensive so we try */ |
629 | | /* them last. */ |
630 | | /* -------------------------------------------------------------------- */ |
631 | |
|
632 | | #ifdef FRMT_rik |
633 | | GDALRegister_RIK(); |
634 | | #endif |
635 | |
|
636 | | #ifdef FRMT_usgsdem |
637 | | GDALRegister_USGSDEM(); |
638 | | #endif |
639 | |
|
640 | | #ifdef FRMT_gxf |
641 | | GDALRegister_GXF(); |
642 | | #endif |
643 | | |
644 | | /* Register KEA before HDF5 */ |
645 | | #ifdef FRMT_kea |
646 | | GDALRegister_KEA(); |
647 | | #endif |
648 | |
|
649 | | #ifdef FRMT_hdf5 |
650 | | GDALRegister_BAG(); |
651 | | GDALRegister_S102(); |
652 | | GDALRegister_S104(); |
653 | | GDALRegister_S111(); |
654 | | GDALRegister_HDF5(); |
655 | | GDALRegister_HDF5Image(); |
656 | | #endif |
657 | |
|
658 | | #ifdef FRMT_northwood |
659 | | GDALRegister_NWT_GRD(); |
660 | | GDALRegister_NWT_GRC(); |
661 | | #endif |
662 | |
|
663 | | #ifdef FRMT_adrg |
664 | | GDALRegister_ADRG(); |
665 | | GDALRegister_SRP(); |
666 | | #endif |
667 | |
|
668 | | #ifdef FRMT_georaster |
669 | | GDALRegister_GEOR(); |
670 | | #endif |
671 | |
|
672 | | #ifdef FRMT_postgisraster |
673 | | GDALRegister_PostGISRaster(); |
674 | | #endif |
675 | |
|
676 | | #ifdef FRMT_saga |
677 | | GDALRegister_SAGA(); |
678 | | #endif |
679 | |
|
680 | | #ifdef FRMT_xyz |
681 | | GDALRegister_XYZ(); |
682 | | #endif |
683 | |
|
684 | | #ifdef FRMT_hf2 |
685 | | GDALRegister_HF2(); |
686 | | #endif |
687 | |
|
688 | | #ifdef FRMT_ctg |
689 | | GDALRegister_CTG(); |
690 | | #endif |
691 | |
|
692 | | #ifdef FRMT_zmap |
693 | | GDALRegister_ZMap(); |
694 | | #endif |
695 | |
|
696 | | #ifdef FRMT_ngsgeoid |
697 | | GDALRegister_NGSGEOID(); |
698 | | #endif |
699 | |
|
700 | | #ifdef FRMT_iris |
701 | | GDALRegister_IRIS(); |
702 | | #endif |
703 | |
|
704 | | #ifdef FRMT_prf |
705 | | GDALRegister_PRF(); |
706 | | #endif |
707 | |
|
708 | | #ifdef FRMT_eeda |
709 | | GDALRegister_EEDAI(); |
710 | | GDALRegister_EEDA(); |
711 | | #endif |
712 | |
|
713 | | #ifdef FRMT_daas |
714 | | GDALRegister_DAAS(); |
715 | | #endif |
716 | |
|
717 | | #ifdef FRMT_null |
718 | | GDALRegister_NULL(); |
719 | | #endif |
720 | |
|
721 | | #ifdef FRMT_sigdem |
722 | | GDALRegister_SIGDEM(); |
723 | | #endif |
724 | |
|
725 | | #ifdef FRMT_exr |
726 | | GDALRegister_EXR(); |
727 | | #endif |
728 | |
|
729 | | #ifdef FRMT_avif |
730 | | GDALRegister_AVIF(); |
731 | | #endif |
732 | |
|
733 | | #ifdef FRMT_heif |
734 | | GDALRegister_HEIF(); |
735 | | #endif |
736 | |
|
737 | | #ifdef FRMT_tga |
738 | | GDALRegister_TGA(); |
739 | | #endif |
740 | |
|
741 | | #ifdef FRMT_ogcapi |
742 | | GDALRegister_OGCAPI(); |
743 | | #endif |
744 | |
|
745 | | #ifdef FRMT_stacta |
746 | | GDALRegister_STACTA(); |
747 | | #endif |
748 | |
|
749 | | #ifdef FRMT_stacit |
750 | | GDALRegister_STACIT(); |
751 | | #endif |
752 | |
|
753 | | #ifdef FRMT_jpegxl |
754 | | GDALRegister_JPEGXL(); |
755 | | #endif |
756 | |
|
757 | | #ifdef FRMT_basisu_ktx2 |
758 | | GDALRegister_BASISU(); |
759 | | GDALRegister_KTX2(); |
760 | | #endif |
761 | |
|
762 | | #ifdef FRMT_gdalg |
763 | | GDALRegister_GDALG(); |
764 | | #endif |
765 | | |
766 | | // NOTE: you need to generally insert your own driver before that line. |
767 | | |
768 | | // NOTE: frmts/drivers.ini in the same directory should be kept in same |
769 | | // order as this file |
770 | | |
771 | | /* -------------------------------------------------------------------- */ |
772 | | /* GNM and OGR drivers */ |
773 | | /* -------------------------------------------------------------------- */ |
774 | 0 | #ifdef GNM_ENABLED |
775 | 0 | GNMRegisterAllInternal(); |
776 | 0 | #endif |
777 | |
|
778 | 0 | OGRRegisterAllInternal(); |
779 | | |
780 | | /* -------------------------------------------------------------------- */ |
781 | | /* Put here drivers that absolutely need to look for side car */ |
782 | | /* files in their Identify()/Open() procedure. */ |
783 | | /* -------------------------------------------------------------------- */ |
784 | |
|
785 | | #ifdef FRMT_raw |
786 | | GDALRegister_raw_with_sidecar(); |
787 | | #endif |
788 | |
|
789 | | #ifdef FRMT_zarr |
790 | | GDALRegister_Zarr(); |
791 | | #endif |
792 | |
|
793 | | #ifdef FRMT_rcm |
794 | | GDALRegister_RCM(); |
795 | | #endif |
796 | | |
797 | | /* -------------------------------------------------------------------- */ |
798 | | /* Register GDAL HTTP last, to let a chance to other drivers */ |
799 | | /* accepting URL to handle them before. */ |
800 | | /* -------------------------------------------------------------------- */ |
801 | | #ifdef FRMT_http |
802 | | GDALRegister_HTTP(); |
803 | | #endif |
804 | |
|
805 | 0 | poDriverManager->AutoLoadPythonDrivers(); |
806 | | |
807 | | /* -------------------------------------------------------------------- */ |
808 | | /* Deregister any drivers explicitly marked as suppressed by the */ |
809 | | /* GDAL_SKIP environment variable. */ |
810 | | /* -------------------------------------------------------------------- */ |
811 | 0 | poDriverManager->AutoSkipDrivers(); |
812 | |
|
813 | 0 | poDriverManager->ReorderDrivers(); |
814 | 0 | } |