34 lines
717 B
Python
34 lines
717 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Callable
|
|
|
|
class Lock_In_Amp(ABC):
|
|
@abstractmethod
|
|
def test_connection(self) -> None:
|
|
"""
|
|
Verify that the device is still properly connected.
|
|
If not, raises ConnectionError
|
|
"""
|
|
pass
|
|
# RUN COMMANDS ON THE DEVICE
|
|
@abstractmethod
|
|
def run(self, code, verbose=False):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def reset(self, verbose=False):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def read_value(self) -> tuple[float, float]:
|
|
"""
|
|
Read a single value
|
|
|
|
Returns
|
|
-------
|
|
[timestamp, voltage]
|
|
"""
|
|
pass
|
|
|
|
@abstractmethod
|
|
def __str__(self):
|
|
pass |