Skip to contents

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. See add_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.

Value

Returns the trajectory object.

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)
  })