A collection of multiple ParamSet objects.
The collection is basically a light-weight wrapper / container around references to multiple sets.
In order to ensure unique param names, every param in the collection is referred to with
"<set_id>.<param_id>". Parameters from ParamSets with empty (i.e. ""
) $set_id
are referenced
directly. Multiple ParamSets with $set_id
""
can be combined, but their parameter names
must be unique.
Operation subset
is currently not allowed.
Operation add
currently only works when adding complete sets not single params.
When you either ask for 'values' or set them, the operation is delegated to the individual,
contained param set references. The collection itself does not maintain a values
state.
This also implies that if you directly change values
in one of the referenced sets,
this change is reflected in the collection.
Dependencies: It is possible to currently handle dependencies
regarding parameters inside of the same set - in this case simply add the dependency to the set, best before adding the set to the collection
across sets, where a param from one set depends on the state
of a param from another set - in this case add call add_dep
on the collection.
If you call deps
on the collection, you are returned a complete table of dependencies, from sets and across sets.
R6::R6Class object inheriting from ParamSet.
ParamSetCollection$new(sets)
sets
:: list of ParamSet
Parameter objects are cloned.
remove_sets(ids)
character()
-> self
Removes sets of given ids from collection.