qcodes_contrib_drivers.drivers.SwabianInstruments.private package¶
Submodules¶
qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger module¶
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.ArrayLikeValidator(min_value: float | int | floating | integer | None = None, max_value: float | int | floating | integer | None = None, shape: Sequence[int | Callable[[], int]] | None = None, valid_types: Sequence[type] | None = None)[source]¶
Bases:
Arrays
A validator for array_like objects.
Note that validation might be expensive since conversion to ndarray takes place each time.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.MeasurementControlMixin[source]¶
Bases:
object
Mixin class forwarding common methods from the TimeTagger API.
- clear()[source]¶
Forwards API method
IteratorBase.clear()
. See documentation there.
- is_running() bool [source]¶
Forwards API method
IteratorBase.isRunning()
. See documentation there.
- start()[source]¶
Forwards API method
IteratorBase.start()
. See documentation there.
- start_for(duration: int, clear: bool = True)[source]¶
Forwards API method
IteratorBase.startFor()
. See documentation there.
- stop()[source]¶
Forwards API method
IteratorBase.stop()
. See documentation there.
- wait_until_finished(timeout: int = -1)[source]¶
Forwards API method
IteratorBase.waitUntilFinished()
. See documentation there.
- abstract property api¶
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.ParameterWithSetSideEffect(name: str, set_side_effect: Callable[[Any], None], set_cmd: Callable[[Any], Any] | None = None, execute_before: bool = False, **kwargs: Any)[source]¶
Bases:
Parameter
A
Parameter
allowing for side effects on set events.- Parameters:
set_side_effect – A callable that is run on every set event. Receives the set value as sole argument.
execute_before – Run the side effect before or after setting the parameter.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TimeTaggerInstrumentBase(name: str, metadata: Mapping[Any, Any] | None = None, label: str | None = None)[source]¶
Bases:
InstrumentBase
Base class for TimeTagger instruments and channels.
Overrides
snapshot_base()
to add the API configuration.- get_configuration() dict[str, Any] [source]¶
Forwards API method
TimeTaggerBase.getConfiguration()
. See documentation there.
- snapshot_base(update: bool | None = False, params_to_skip_update: Sequence[str] | None = None) dict[Any, Any] [source]¶
State of the instrument as a JSON-compatible dict (everything that the custom JSON encoder class
NumpyJSONEncoder
supports).- Parameters:
update – If
True
, update the state by querying the instrument. If None update the state if known to be invalid. IfFalse
, just use the latest values in memory and never update state.params_to_skip_update – List of parameter names that will be skipped in update even if update is True. This is useful if you have parameters that are slow to update but can be updated in a different way (as in the qdac). If you want to skip the update of certain parameters in all snapshots, use the
snapshot_get
attribute of those parameters instead.
- Returns:
base snapshot
- Return type:
- abstract property api¶
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TimeTaggerMeasurement(parent: InstrumentBase, name: str, api_tagger: tt.TimeTaggerBase | None = None, **kwargs: Any)[source]¶
Bases:
MeasurementControlMixin
,TimeTaggerInstrumentBase
,TimeTaggerModule
Instrument channel representing a TimeTagger API Measurement.
- get_capture_duration() int [source]¶
Forwards API method
IteratorBase.getCaptureDuration()
. See documentation there.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TimeTaggerModule(parent: InstrumentBase, name: str, api_tagger: tt.TimeTaggerBase | None = None, **kwargs: Any)[source]¶
Bases:
InstrumentChannel
An InstrumentChannel implementing TimeTagger Measurements and Virtual Channels.
- __init__(parent: InstrumentBase, name: str, api_tagger: tt.TimeTaggerBase | None = None, **kwargs: Any)[source]¶
Initialize a TimeTaggerModule.
- Parameters:
parent – The parent instrument.
name – The channel name.
api_tagger – The TimeTagger API object of the device to use. Can be a virtual time tagger gotten from
TimeTaggerSynchronizedMeasurements.get_tagger()
.
- classmethod implementations() frozenset[type[TimeTaggerModule]] [source]¶
All registered implementations of this class.
- abstract property api¶
The
TimeTagger:TimeTagger.Measurement
API object underlying this module.
- property api_tagger: tt.TimeTaggerBase¶
The
TimeTagger:TimeTagger.TimeTaggerBase
API object underlying this module.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TimeTaggerSynchronizedMeasurements(parent: InstrumentBase, name: str, **kwargs: Any)[source]¶
Bases:
MeasurementControlMixin
,InstrumentModule
Instrument module representing a TimeTagger API
SynchronizedMeasurements
object.- register_measurement(measurement: TimeTaggerMeasurement)[source]¶
Forwards API method
SynchronizedMeasurements.registerMeasurement()
. See documentation there.
- unregister_measurement(measurement: TimeTaggerMeasurement)[source]¶
Forwards API method
SynchronizedMeasurements.unregisterMeasurement()
. See documentation there.
- property api: tt.SynchronizedMeasurements¶
- property api_tagger: tt.TimeTaggerBase¶
A proxy TimeTagger API object for synchronized measurements.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TimeTaggerVirtualChannel(parent: InstrumentBase, name: str, api_tagger: tt.TimeTaggerBase | None = None, **kwargs: Any)[source]¶
Bases:
TimeTaggerInstrumentBase
,TimeTaggerModule
Instrument channel representing a TimeTagger API Virtual Channel.
- get_channel() int [source]¶
Forwards API method
VirtualChannel.getChannel()
. See documentation there.
- get_channels() list[int] [source]¶
Forwards API method
VirtualChannel.getChannels()
. See documentation there.
- class qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.TypeValidator(cls: type)[source]¶
-
A validator for specific types.
- qcodes_contrib_drivers.drivers.SwabianInstruments.private.time_tagger.cached_api_object(__func: Callable[[...], Any] | None = None, *, required_parameters: Collection[str] | None = None)[source]¶
A custom descriptor for a cached API object with exception handling, invalidation capability, and initialization checks.