Activity for dynamically modifying an arrival's prioritization values.
Default prioritization values are defined by the source (see
add_generator
, add_dataframe
).
Usage
set_prioritization(.trj, values, mod = c(NA, "+", "*"), ..., tag)
Arguments
- .trj
the trajectory object.
- values
expects either a vector/list or a callable object (a function) returning a vector/list of three values
c(priority, preemptible, restart)
. A negative value leaves the corresponding parameter unchanged. Seeadd_generator
for more information about these parameters.- mod
if set,
values
modify the attributes rather than substituting them.- ...
unused.
- tag
activity tag name to perform named rollbacks (see
rollback
) or just to better identify your activities.
Examples
traj <- trajectory() %>%
# static values
set_prioritization(c(3, 7, TRUE)) %>%
# increment
set_prioritization(c(2, 1, 0), mod="+") %>%
# dynamic, custom
set_attribute("priority", 3) %>%
set_prioritization(function() {
prio <- get_prioritization(env)
attr <- get_attribute(env, "priority")
c(attr, prio[[2]]+1, FALSE)
})