tget: Get/Put Objects From/To Temporary Work Environment

tgetR Documentation

Get/Put Objects From/To Temporary Work Environment

Description

Get/print objects from or put objects into a temporary work environment called .PBSmodEnv. These objects include .PBSmod, which controls the GUI system.

Usage

tget(x, penv=NULL, tenv=.PBSmodEnv)
tcall(x, penv=NULL, tenv=.PBSmodEnv)
tprint(x, penv=NULL, tenv=.PBSmodEnv)
tput(x, penv=NULL, tenv=.PBSmodEnv)

Arguments

x

character|object – name (with or without quotes) of an object to retrieve or store in the temporary environment.

penv

environment – parent environment, defaults to parent.frame() called from within the function.

tenv

environment – temporary working environment, defaults to .PBSmodEnv.

Details

These accessor functions were developed as a response to the CRAN repository policy statement: “Packages should not modify the global environment (user's workspace).”

There are also wrapper functions called .win.tget, .win.tcall, and .win.tprint that can be used in window description files to launch functions or print objects from the .PBSmodEnv workspace. The wrapper uses getWinAct to get the function (or object) name that a user specifies in the action argument of a widget command.

Value

Objects are retrieved from or sent to the temporary working environment to/from the place where the function(s) are called. Additionally, tcall invisibly returns the object without transferring, which is useful when the object is a function that the user may wish to call, for example, tcall(myfunc)().

Note

Additional wrapper functions to access functions in .PBSmodEnv are named with the prefix .win.

Author(s)

Rowan Haigh, Program Head – Offshore Rockfish
Pacific Biological Station (PBS), Fisheries & Oceans Canada (DFO), Nanaimo BC
locus opus: Offsite, Vancouver BC
Last modified Rd: 2023-10-25

References

CRAN Repository Policy

Examples

## Not run: 
local(envir=.PBSmodEnv,expr={
  str(tcall(.PBSmod),2)
})

## End(Not run)

PBSmodelling documentation built on Nov. 9, 2023, 5:07 p.m.