base ==== .. py:module:: quantify_scheduler.instrument_coordinator.components.base .. autoapi-nested-parse:: Module containing the InstrumentCoordinator interface. Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: quantify_scheduler.instrument_coordinator.components.base.InstrumentCoordinatorComponentBase Functions ~~~~~~~~~ .. autoapisummary:: quantify_scheduler.instrument_coordinator.components.base.instrument_to_component_name .. py:function:: instrument_to_component_name(instrument_name: str) -> str Give the name of the instrument coordinator component. :param instrument_name: The name of the instrument. :returns: The name of the instrument coordinator component. .. py:class:: InstrumentCoordinatorComponentBase(instrument: qcodes.instrument.base.InstrumentBase, **kwargs: Any) Bases: :py:obj:`qcodes.instrument.base.Instrument` The InstrumentCoordinator component abstract interface. .. py:property:: instrument :type: qcodes.instrument.base.InstrumentBase Returns the instrument referenced by `instrument_ref`. .. py:property:: is_running :type: bool :abstractmethod: Returns if the InstrumentCoordinator component is running. The property ``is_running`` is evaluated each time it is accessed. Example: .. code-block:: while my_instrument_coordinator_component.is_running: print('running') :returns: The components' running state. .. py:attribute:: _no_gc_instances :type: Dict[str, InstrumentCoordinatorComponentBase] .. py:method:: close() -> None Release instance so that garbage collector can claim the object. .. py:method:: start() -> None :abstractmethod: Starts the InstrumentCoordinator Component. .. py:method:: stop() -> None :abstractmethod: Stops the InstrumentCoordinator Component. .. py:method:: prepare(options: Any) -> None :abstractmethod: Initializes the InstrumentCoordinator Component with parameters. .. py:method:: retrieve_acquisition() -> Any :abstractmethod: Gets and returns acquisition data. .. py:method:: wait_done(timeout_sec: int = 10) -> None :abstractmethod: Wait until the InstrumentCoordinator is done. The coordinator is ready when it has stopped running or until it has exceeded the amount of time to run. The maximum amount of time, in seconds, before it times out is set via the timeout_sec parameter. :param timeout_sec: The maximum amount of time in seconds before a timeout. .. py:method:: get_hardware_log(compiled_schedule: quantify_scheduler.schedules.schedule.CompiledSchedule) -> dict | None :abstractmethod: Retrieve the hardware logs of the instrument associated to this component.