This helper function constructs a timeline where the order of test elements (or blocks of test elements) is determined at run time.
order_at_run_time( label, get_order, logic, save_order = function(order, state, ...) save_result(state, label, order) )
(Character scalar) A label for storing the generated order of test elements.
Function that should accept the arguments
It will be called at run time, being passed the participant's
state object. It should return a permutation of the integers 1 to N,
where N is the length of the
List where each top-level element corresponds to a randomisation unit. These randomisation units may be either single test elements, lists of test elements, or timelines.
A function called at run time to save the result of
It should accept three arguments:
order corresponds to the output of
state corresponds to the participant's state object.
The default setting saves the generated order in psychTestR's
default results repository, under the label
A list of test elements, or equivalently a timeline, which can be combined
with other test elements or timelines.
These test elements will be presented in the order defined by the
get_order function, with this function being called
afresh for each new participant.
This function can be nested arbitrarily many times.
randomise_at_run_time for the common application
of randomising the order of test elements anew for each participant.