prsctrl.measurement.settings.AmplifierSettings#

class AmplifierSettings(coupling: str = 'DC', gain: float = 5, mode: str | None = None)[source]#

Bases: SettingsClass

Methods

apply

as_dict

Convenience wrapper for dataclasses.asdict(self)

from_dict

Recursively construct a SettingsClass from a dictionary.

load_yaml

save_yaml

Attributes

__annotations__ = {'coupling': <class 'str'>, 'gain': <class 'float'>, 'mode': typing.Optional[str]}#
__dataclass_fields__ = {'coupling': Field(name='coupling',type=<class 'str'>,default='DC',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'gain': Field(name='gain',type=<class 'float'>,default=5,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'mode': Field(name='mode',type=typing.Optional[str],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}#
__dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False)#
__dict__ = mappingproxy({'__module__': 'prsctrl.measurement.settings', '__firstlineno__': 82, '__annotations__': {'coupling': <class 'str'>, 'gain': <class 'float'>, 'mode': typing.Optional[str]}, 'coupling': 'DC', 'gain': 5, 'mode': None, 'apply': <function AmplifierSettings.apply>, '__static_attributes__': (), '__doc__': "AmplifierSettings(coupling: str = 'DC', gain: float = 5, mode: Optional[str] = None)", '__dataclass_params__': _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False), '__dataclass_fields__': {'coupling': Field(name='coupling',type=<class 'str'>,default='DC',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'gain': Field(name='gain',type=<class 'float'>,default=5,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'mode': Field(name='mode',type=typing.Optional[str],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}, '__replace__': <function _replace>, '__hash__': None, '__init__': <function AmplifierSettings.__init__>, '__repr__': <function AmplifierSettings.__repr__>, '__eq__': <function AmplifierSettings.__eq__>, '__match_args__': ('coupling', 'gain', 'mode')})#
__eq__(other)#

Return self==value.

__firstlineno__ = 82#
__hash__ = None#
__init__(coupling: str = 'DC', gain: float = 5, mode: str | None = None) None#
__match_args__ = ('coupling', 'gain', 'mode')#
__module__ = 'prsctrl.measurement.settings'#
__or__(other)#

Merge with another settings class or a dictionary.

__replace__(**changes)#
__repr__()#

Return repr(self).

__static_attributes__ = ()#
__weakref__#

list of weak references to the object

apply(device: Amplifier)[source]#
as_dict() dict#

Convenience wrapper for dataclasses.asdict(self)

coupling: str = 'DC'#
classmethod from_dict(data: dict)#

Recursively construct a SettingsClass from a dictionary. If the value of a field is another SettingsClass, from_dict will be called for that field as well. Handled are: - SettingsClass - list[SettingsClass] - dict[<any>, SettingsClass] - all of the above as Optional

Raises:
  • ValueError – If data contains a value that has the wrong type for the field of cls (ONLY if the type is a subclass of SettingsClass! Other types are not enforced)

  • KeyError – If data contains a key that is not a field name of cls

gain: float = 5#
classmethod load_yaml(yaml_path: str, loader=<class 'yaml.loader.Loader'>)#
mode: str | None = None#
save_yaml(yaml_path: str)#