Source code for semi_cr.core.lab.station.metadata

from dataclasses import dataclass, field
from pathlib import Path

from qcodes.station import Station

from semi_cr.core.lab.utils.yaml_utils import _read_yaml

[docs] @dataclass class LabStation(Station): cfg_file: str | Path # Station.__init__ takes no name/lab _name: str = field(init=False, repr=False) _lab: str = field(init=False, repr=False) def __post_init__(self) -> None: super().__init__() config = _read_yaml(self.cfg_file) station_config = config["instruments"]["station"] self._name = station_config["name"] self._lab = station_config["lab"] @property def name(self) -> str: return self._name @property def lab(self) -> str: return self._lab