
public class TrackParameters extends Object implements Parameterization
| Modifier and Type | Field and Description | 
|---|---|
| (package private) Map<Object,List<Object>> | childrenTree information: child links | 
| (package private) Object | curCurrent parent for nested parameterization | 
| (package private) Parameterization | innerInner parameterization | 
| (package private) List<Pair<Object,Parameter<?>>> | optionsTracking storage | 
| (package private) Map<Object,Object> | parentsTree information: parent links | 
| Modifier | Constructor and Description | 
|---|---|
|   | TrackParameters(Parameterization inner)Constructor. | 
| private  | TrackParameters(Parameterization inner,
               Object option,
               List<Pair<Object,Parameter<?>>> options,
               Map<Object,Object> parents,
               Map<Object,List<Object>> children)Internal constructor, for nested tracking. | 
| Modifier and Type | Method and Description | 
|---|---|
| boolean | checkConstraint(GlobalParameterConstraint constraint)Check a parameter constraint. | 
| Parameterization | descend(Object option)Descend parameterization tree into sub-option. | 
| Collection<Pair<Object,Parameter<?>>> | getAllParameters()Get all seen parameters, set or unset, along with their owner objects. | 
| Collection<ParameterException> | getErrors()Get the configuration errors thrown in  Parameterization.grab(de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.Parameter<?>) | 
| Collection<Pair<OptionID,Object>> | getGivenParameters()Get the tracked parameters that were actually set. | 
| Object | getParent(Object pos)Traverse the tree upwards. | 
| boolean | grab(Parameter<?> opt)Get the option value from the Parameterization. | 
| boolean | hasErrors()Return true when there have been errors. | 
| boolean | hasUnusedParameters()Check for unused parameters | 
| private void | registerChild(Object opt) | 
| void | reportError(ParameterException e)Report a configuration error. | 
| boolean | setValueForOption(Parameter<?> opt)Assign a value for an option, but not using default values and throwing
 exceptions on error. | 
| <C> C | tryInstantiate(Class<C> c)Try to instantiate a particular class. | 
| <C> C | tryInstantiate(Class<C> r,
              Class<?> c)Try to instantiate a particular class. | 
Parameterization inner
Object cur
public TrackParameters(Parameterization inner)
inner - Inner parameterization to wrap.private TrackParameters(Parameterization inner, Object option, List<Pair<Object,Parameter<?>>> options, Map<Object,Object> parents, Map<Object,List<Object>> children)
inner - Inner parameterizationoption - Optionoptions - List of optionsparents - Parent mapchildren - Child mappublic Collection<ParameterException> getErrors()
ParameterizationParameterization.grab(de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.Parameter<?>)getErrors in interface Parameterizationpublic boolean hasErrors()
ParameterizationhasErrors in interface Parameterizationpublic boolean grab(Parameter<?> opt)
Parameterizationopt itself!
 
 In particular Parameterization.grab(de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.Parameter<?>) can return true when
 Flag.getValue()
 returns false! Instead the semantics of grab are those of Parameter#isDefined().  
 
 This method will catch ParameterExceptions and store them to be
 retrieved by Parameterization.getErrors().grab in interface Parameterizationopt - Option to addpublic boolean hasUnusedParameters()
ParameterizationhasUnusedParameters in interface Parameterizationtrue if at least one parameter was not consumedpublic void reportError(ParameterException e)
ParameterizationreportError in interface Parameterizatione - Destination to report errors topublic boolean setValueForOption(Parameter<?> opt) throws ParameterException
ParameterizationsetValueForOption in interface Parameterizationopt - Parameter to setParameterException - on assignment errors.public Collection<Pair<Object,Parameter<?>>> getAllParameters()
public Collection<Pair<OptionID,Object>> getGivenParameters()
public boolean checkConstraint(GlobalParameterConstraint constraint)
ParameterizationcheckConstraint in interface Parameterizationconstraint - Parameter constraintpublic Parameterization descend(Object option)
ClassParameter.instantiateClass(de.lmu.ifi.dbs.elki.utilities.optionhandling.parameterization.Parameterization).
 You only need to call this when you want to expose the tree structure
 without offering a class choice as parameter. Track parameters using a shared options list with parent
 tracker.descend in interface Parameterizationoption - Option subtreeprivate void registerChild(Object opt)
public Object getParent(Object pos)
pos - Current objectpublic <C> C tryInstantiate(Class<C> r, Class<?> c)
ParameterizationtryInstantiate in interface ParameterizationC - return typer - Restriction classc - Base classpublic <C> C tryInstantiate(Class<C> c)
ParameterizationtryInstantiate in interface ParameterizationC - return typec - Base class