Descriptor object for specifying SpaDES module dependencies.

Slots

name

Name of the module as a character string.

description

Description of the module as a character string.

keywords

Character vector containing a module's keywords.

authors

The author(s) of the module as a person() object.

childModules

A character vector of child module names. Modules listed here will be loaded with this module.

version

The module version as a numeric_version. Semantic versioning is assumed https://semver.org/.

spatialExtent

Specifies the module's spatial extent as an Raster::Extent or terra::SpatExtent object. Default is NA.

timeframe

Specifies the valid timeframe for which the module was designed to simulate. Must be a POSIXt() object of length 2, specifying the start and end times (e.g., as.POSIXlt(c("1990-01-01 00:00:00", "2100-12-31 11:59:59"))). Can be specified as NA using as.POSIXlt(c(NA, NA)).

timeunit

Describes the time (in seconds) corresponding to 1.0 simulation time units. Default is NA.

citation

A list of citations for the module, each as character strings. Alternatively, list of filenames of .bib or similar files. Defaults to NA_character_.

documentation

List of filenames referring to module documentation sources.

loadOrder

An optional list of up to 2 named character vectors, named "before" and "after". If specified, then SpaDES.core will use this information to help disentangle ambiguous module load order estimation. Any module that is specified in the "before" element will have its "init" event scheduled before this module; any module specified in the "after" element will have its "init" event scheduled after this module.

reqdPkgs

Character vector of R package names to be loaded. Defaults to NA_character_.

parameters

A data.frame specifying the object dependencies of the module, with columns paramName, paramClass, and default, whose values are of type character, character, and ANY, respectively. Default values may be overridden by the user by passing a list of parameters to simInit().

inputObjects

A data.frame specifying the object dependencies of the module, with columns objectName, objectClass, and other. For objects that are used within the module as both an input and an output, add the object to each of these data.frames.

outputObjects

A data.frame specifying the objects output by the module, following the format of inputObjects.

See also

.simDeps, spadesClasses()

Author

Alex Chubaty