GRASS 8 Programmer's Manual 8.6.0dev(2026)-1d1e47ad9d
Loading...
Searching...
No Matches
gdal.c File Reference

Raster Library - Utilization of GDAL library. More...

#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <grass/config.h>
#include <grass/gis.h>
#include <grass/raster.h>
#include <grass/gprojects.h>
#include <grass/glocale.h>
#include "R.h"
#include <gdal.h>
Include dependency graph for gdal.c:

Go to the source code of this file.

Functions

void Rast_init_gdal (void)
 Initialization.
 
struct GDAL_linkRast_get_gdal_link (const char *name, const char *mapset)
 Get GDAL link settings for given raster map.
 
struct GDAL_linkRast_create_gdal_link (const char *name, RASTER_MAP_TYPE map_type)
 Create GDAL settings for given raster map.
 
void Rast_close_gdal_link (struct GDAL_link *gdal)
 Close existing GDAL link.
 
int Rast_close_gdal_write_link (struct GDAL_link *gdal)
 Close existing GDAL link and write out data.
 
CPLErr Rast_gdal_raster_IO (GDALRasterBandH band, GDALRWFlag rw_flag, int x_off, int y_off, int x_size, int y_size, void *buffer, int buf_x_size, int buf_y_size, GDALDataType buf_type, int pixel_size, int line_size)
 Input/output function for GDAL links.
 

Detailed Description

Raster Library - Utilization of GDAL library.

(C) 2010 by the GRASS Development Team

This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.

Author
Glynn Clements

Definition in file gdal.c.

Function Documentation

◆ Rast_close_gdal_link()

void Rast_close_gdal_link ( struct GDAL_link gdal)

Close existing GDAL link.

Parameters
gdalpointer to GDAL_link to be closed

Definition at line 380 of file gdal.c.

References GDAL_link::data, GDAL_link::filename, and G_free().

◆ Rast_close_gdal_write_link()

int Rast_close_gdal_write_link ( struct GDAL_link gdal)

Close existing GDAL link and write out data.

Parameters
gdalpointer to GDAL_link to be closed
Returns
1 on success
-1 on failure

Definition at line 395 of file gdal.c.

References _, GDAL_link::data, FALSE, GDAL_link::filename, G_free(), G_strcasecmp(), G_warning(), NULL, and st.

◆ Rast_create_gdal_link()

◆ Rast_gdal_raster_IO()

CPLErr Rast_gdal_raster_IO ( GDALRasterBandH  band,
GDALRWFlag  rw_flag,
int  x_off,
int  y_off,
int  x_size,
int  y_size,
void buffer,
int  buf_x_size,
int  buf_y_size,
GDALDataType  buf_type,
int  pixel_size,
int  line_size 
)

Input/output function for GDAL links.

See GDAL's RasterIO for details.

Definition at line 427 of file gdal.c.

◆ Rast_get_gdal_link()

struct GDAL_link * Rast_get_gdal_link ( const char name,
const char mapset 
)

Get GDAL link settings for given raster map.

Parameters
namemap name
mapsetname of mapset
Returns
pointer to GDAL_link structure
NULL if link not found

Definition at line 53 of file gdal.c.

References GDAL_link::band, GDAL_link::band_num, CELL_TYPE, GDAL_link::data, DCELL_TYPE, FCELL_TYPE, GDAL_link::filename, G_calloc, G_find_key_value(), G_find_raster2(), G_fopen_old_misc(), G_fread_key_value(), G_store(), G_strcasecmp(), GDAL_link::hflip, name, NULL, GDAL_link::null_val, Rast_init_gdal(), Rast_map_type(), Rast_set_d_null_value(), GDAL_link::type, and GDAL_link::vflip.

Referenced by Rast__open_old().

◆ Rast_init_gdal()

void Rast_init_gdal ( void  )

Initialization.

Register all GDAL drivers.

Definition at line 33 of file gdal.c.

References G_initialize_done(), and G_is_initialized().

Referenced by Rast_create_gdal_link(), Rast_get_gdal_link(), and Rast_init_all().