2025-04-29 12:25:57 +02:00

34 lines
993 B
Python

from .base import MeasurementDevice
TYPENAME_TEST = "Test"
TYPENAME_KEITHLEY2700 = "Keithley 2700"
try:
from .impl.sr830 import SR830
except ImportError:
pass
from .impl.test import TestVoltageMeasurementDevice
def list_devices() -> dict[str,list[str]]:
devices = {
TYPENAME_TEST: ["Voltage Measurement Dummy Device"],
}
try:
from .impl.sr830 import SR830
devices[TYPENAME_KEITHLEY2700] = SR830.enumerate_devices()
except ImportError:
pass
return devices
def connect_device(type_name: str, device_name: str) -> MeasurementDevice:
if type_name == TYPENAME_TEST:
return TestVoltageMeasurementDevice()
elif type_name == TYPENAME_KEITHLEY2700:
try:
from .impl.sr830 import SR830
return SR830.connect_device(device_name)
except ImportError as e:
raise ValueError(f"Keithley 2700 devices not available: {e}")
raise ValueError(f"Unknown device type {type_name}")