Metadata-Version: 2.4
Name: syndesi-drivers
Version: 0.3.0
Summary: Syndesi drivers repository
Author-email: Sébastien Deriaz <sebastien.deriaz1@gmail.com>
License-Expression: GPL-3.0-or-later
Keywords: python,syndesi,interface,ethernet,serial,visa,protocol,driver,adpater
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Education
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: Unix
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: syndesi>=0.7.5
Provides-Extra: visa
Requires-Dist: pyvisa; extra == "visa"
Dynamic: license-file

# Syndesi drivers Python package

This package contains the official Syndesi Drivers



## Folder structure


- ``test_and_measurement``
  - ``multimeters``
  - ``oscilloscopes``
  - ``powersupplies``
  - ``sourcemeters``
  - ``waveform_generators``
- ``motion``
  - ``controllers``
- ``environmental``
  - ``ovens``
- ``imaging``
- ``industrial``
  - ``io_modules``






## Driver structure

```python
class DeviceName(Interfaces):
    def __init__(self, adapter : Adapter) -> None:
        """
        Device description
        """
        super().__init__()

        # Check the adapter type here
        assert isinstance(adapter, ...), "Invalid adapter"

        # Use a protocol
        self._prot = SCPI(adapter)
        #self._prot = Raw(adapter)

    # Declare a method
    def my_method(self) -> int:
        """
        Method description
        """
        self._prot.write('...')
        data = self._prot.read('...')
        return int(data)
```
