Creates or opens a SsimLibrary object. If summary = TRUE, returns SsimLibrary summary info. If summary = NULL, returns SsimLibrary summary info if ssimObject is a SsimLibrary, SsimLibrary object otherwise.

ssimLibrary(
  name = NULL,
  summary = NULL,
  package = NULL,
  session = NULL,
  addon = NULL,
  template = NULL,
  forceUpdate = FALSE,
  overwrite = FALSE,
  useConda = FALSE
)

# S4 method for SsimObject
ssimLibrary(
  name = NULL,
  summary = NULL,
  package = NULL,
  session = NULL,
  addon = NULL,
  template = NULL,
  forceUpdate = FALSE,
  overwrite = FALSE,
  useConda = FALSE
)

# S4 method for missingOrNULLOrChar
ssimLibrary(
  name = NULL,
  summary = NULL,
  package = NULL,
  session = NULL,
  addon = NULL,
  template = NULL,
  forceUpdate = FALSE,
  overwrite = FALSE,
  useConda = FALSE
)

Arguments

name

SsimLibrary, Project or Scenario object, or character string (i.e. path to a SsimLibrary or SsimObject)

summary

logical. Default is TRUE

package

character. The package type. Default is "stsim"

session

Session object. If NULL (default), session() will be used

addon

character or character vector. One or more addon packages. See addon for options (optional)

template

character. Creates the SsimLibrary with the specified template (optional)

forceUpdate

logical. If FALSE (default) user will be prompted to approve any required updates. If TRUE, required updates will be applied silently

overwrite

logical. If TRUE an existing SsimLibrary will be overwritten

useConda

logical. If set to TRUE, then all packages associated with the Library will have their Conda environments created and Conda environments will be used during runtime.If set to FALSE, then no packages will have their Conda environments created and Conda environments will not be used during runtime. Default is FALSE.

Value

Returns a SsimLibrary object.

Details

Example arguments:

  • If name is SyncroSim Project or Scenario: Returns the SsimLibrary associated with the Project or Scenario.

  • If name is NULL: Create/open a SsimLibrary in the current working directory with the filename SsimLibrary.ssim.

  • If name is a string: If string is not a valid path treat as filename in working directory. If no file suffix provided in string then add .ssim. Attempts to open a SsimLibrary of that name. If SsimLibrary does not exist creates a SsimLibrary of type package in the current working directory.

  • If given a name and a package: Create/open a SsimLibrary called <name>.ssim. Returns an error if the SsimLibrary already exists but is a different type of package.

Examples

# \donttest{
# Make sure packages are installed
addPackage("stsim")
#> Package <stsim> is already installed
addPackage("stsimsf")
#> Package <stsimsf> is already installed

# Create or open a SsimLibrary using the default Session
myLibrary <- ssimLibrary(name = file.path(tempdir(), "mylib"))

# Create SsimLibrary using a specific Session
mySession <- session()

myLibrary <- ssimLibrary(name = file.path(tempdir(), "mylib"),
                         session = mySession)

# Retrieve SsimLibrary properties
session(myLibrary)
#> class               : Session
#> filepath [character]: C:/Program Files/SyncroSim
#> silent [logical]    : TRUE
#> printCmd [logical]  : FALSE
#> condaFilepath [NULL]: 

# Load a SsimLibrary with addon package
myLibrary <- ssimLibrary(name = file.path(tempdir(), "mylib"),
                         overwrite = TRUE, package = "stsim",
                         addon = "stsimsf")

# Create SsimLibrary from template
addPackage("helloworldSpatial")
#> Package <helloworldSpatial> is already installed
mySession <- session()
myLibrary <- ssimLibrary(name = file.path(tempdir(), "mylib"), 
                         session = mySession,
                         package = "helloworldSpatial",
                         template = "example-library",
                         overwrite = TRUE)
#> Scenarios available in this template:    My Scenario
                         
# }