Skip to content

Commit

Permalink
Rename options (gdal prefix first)
Browse files Browse the repository at this point in the history
  • Loading branch information
brownag committed Mar 13, 2024
1 parent 884513b commit 8b8cb7f
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 20 deletions.
24 changes: 12 additions & 12 deletions R/geotargets-option.R
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
#'
#' ## Available Options
#'
#' - `"geotargets.raster.gdal_creation_options"` - set the GDAL creation options used when writing raster files to target store (default: `"ENCODING=UTF-8"`)
#' - `"geotargets.gdal.raster.creation_options"` - set the GDAL creation options used when writing raster files to target store (default: `"ENCODING=UTF-8"`)
#'
#' - `"geotargets.raster.gdal_driver_name"` - set the file type used for raster data in target store (default: `"GTiff"`)
#' - `"geotargets.gdal.raster.driver_name"` - set the file type used for raster data in target store (default: `"GTiff"`)
#'
#' Each option can be overridden with a system environment variable. Options include:
#'
#' - `GEOTARGETS_RASTER_GDAL_CREATION_OPTIONS`
#' - `GEOTARGETS_RASTER_GDAL_DRIVER_NAME`
#' - `GEOTARGETS_GDAL_RASTER_CREATION_OPTIONS`
#' - `GEOTARGETS_GDAL_RASTER_DRIVER_NAME`
#'
#' @rdname geotargets-options
#' @export
Expand All @@ -30,27 +30,27 @@ geotargets_option_get <- function(option_name) {
getOption(option_name, default = option_value %||% name)
}

get_geotargets_raster_gdal_creation_options <- function(option_name, option_value) {
get_geotargets_gdal_raster_creation_options <- function(option_name, option_value) {
gdal_creation_options <- Sys.getenv(
x = "GEOTARGETS_RASTER_GDAL_CREATION_OPTIONS",
x = "GEOTARGETS_GDAL_RASTER_CREATION_OPTIONS",
unset = get_option(option_name, option_value, "ENCODING=UTF-8")
)
the_option <- strsplit(gdal_creation_options, ";")[[1]]
the_option
}

get_geotargets_raster_gdal_driver_name <- function(option_name, option_value) {
get_geotargets_gdal_raster_driver_name <- function(option_name, option_value) {
Sys.getenv(
x = "GEOTARGETS_RASTER_GDAL_DRIVER_NAME",
x = "GEOTARGETS_GDAL_RASTER_DRIVER_NAME",
unset = get_option(option_name, option_value, "GTiff")
)
}

switch(option_name,
"geotargets.raster.gdal_creation_options" =
get_geotargets_raster_gdal_creation_options(option_name, option_value),
"geotargets.raster.gdal_driver_name" =
get_geotargets_raster_gdal_driver_name(option_name, option_value)
"geotargets.gdal.raster.creation_options" =
get_geotargets_gdal_raster_creation_options(option_name, option_value),
"geotargets.gdal.raster.driver_name" =
get_geotargets_gdal_raster_driver_name(option_name, option_value)
)
}

Expand Down
8 changes: 4 additions & 4 deletions R/tar-terra-rast.R
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,10 @@ create_format_terra_raster <- function(filetype, gdal, ...) {
drv <- terra::gdal(drivers = TRUE)
drv <- drv[drv$type == "raster" & grepl("write", drv$can), ]

filetype <- filetype %||% geotargets_option_get("raster.gdal_driver_name")
filetype <- filetype %||% geotargets_option_get("gdal.raster.driver_name")
filetype <- rlang::arg_match0(filetype, drv$name)

gdal <- gdal %||% geotargets_option_get("raster.gdal_creation_options")
gdal <- gdal %||% geotargets_option_get("gdal.raster.creation_options")

# NOTE: Option getting functions are set in the .write_terra_raster function template
# to resolve issue with body<- not working in some evaluation contexts ({covr}).
Expand All @@ -114,9 +114,9 @@ create_format_terra_raster <- function(filetype, gdal, ...) {
terra::writeRaster(
object,
path,
filetype = geotargets::geotargets_option_get("raster.gdal_driver_name"),
filetype = geotargets::geotargets_option_get("gdal.raster.driver_name"),
overwrite = TRUE,
gdal = geotargets::geotargets_option_get("raster.gdal_creation_options")
gdal = geotargets::geotargets_option_get("gdal.raster.creation_options")
)
}

Expand Down
8 changes: 4 additions & 4 deletions man/geotargets-options.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 8b8cb7f

Please sign in to comment.