-
Notifications
You must be signed in to change notification settings - Fork 331
Description
Currently DelegateParameter (and potentially other classes) implement an interface that allows users to create a parameter that delegates to other parameters. However, when such a parameter is used in a measurement either as a sweeped or as a measured parameter we only captures the values of the delegate parameter. Reconstructing the values of the underlying parameter is only possible by looking at the snapshot of the parameter to find properties such as scale and offset and manually calculate the values of the underlying parameter(s). This makes it hard to reconstruct a delegate mapping more complex than scale and offset and makes the underlying data harder to audit (e.g. what were the actual values set on the instrument).
QCoDeS already provides an interface for allowing parameters to declare that they are inderred from another parameter.
This card is to track defining an interface on ParameterBase
such that a Parameter can declare that it can be infeered from a set of parameters. This can take the form of
def inferences(self) -> Tuple[ParameterBase,...]
# error handling missing
return (self,).extend(self.source.inferences)
or something similar.
Once this is resolved #7064 can be tackled to make use of this interface to automatically capture data.
Note that for this to be useful the bug reported in #7051 should be resolved first.