Register and dispatch file readers
Usage
registerReader(format, fn, ext = NULL, overwrite = FALSE)
getReader(format)
availableReaders()
unregisterReader(format)Arguments
- format
Case-insensitive format key (e.g.
"brainvision").- fn
The reader function; its first argument should be a file path.
- ext
Optional character vector of file extensions handled (no dot).
- overwrite
If
FALSE(default), registering an existingformaterrors;TRUEreplaces it (use this in a package.onLoad).
Value
registerReader() invisibly returns fn; getReader() returns the
registered function; availableReaders() returns a data.frame of
format/ext (the format column holds normalized, lower-cased keys, and
the frame has zero rows when nothing is registered); unregisterReader()
invisibly returns TRUE if a reader was removed.
See also
Other plugin-api:
physio-registry,
registerOperation(),
registerWriter()
Examples
registerReader("demo_csv", function(file, ...) read.csv(file, ...),
ext = "csv", overwrite = TRUE)
availableReaders()
#> format ext
#> 1 demo_csv csv
r <- getReader("DEMO_CSV") # case-insensitive
unregisterReader("demo_csv")