Hassle-free PyQt/PySide interface for multithreaded data acquisition and communication with an I/O device.
Project description
DvG_QDeviceIO
Hassle-free PyQt/PySide interface for multithreaded data acquisition and communication with an I/O device.
It will manage many necessary components for proper multithreading – creation and handling of the threads, workers, signals and mutexes – for you, reducing it to just a few simple method calls of a QDeviceIO class instance to get set up and going.
Supports PyQt5, PyQt6, PySide2 and PySide6.
Documentation: https://python-dvg-qdeviceio.readthedocs.io
Github: https://github.com/Dennis-van-Gils/python-dvg-qdeviceio
Installation:
pip install dvg-qdeviceio
Changelog
1.3.0 (2024-04-02)
Support Python 3.11
All f-strings
Type checking via isinstance(), not type == …
1.2.0 (2023-02-27)
Deprecated requires.io and travis
Raise ImportError instead of general Exception
1.1.2 (2022-10-26)
Minor refactor of mechanism to support PyQt5, PyQt6, PySide2 and PySide6
1.1.1 (2022-09-14)
Forgot to bump requirement dvg-debug-functions~=2.2 to ensure support for PyQt5, PyQt6, PySide2 and PySide6
1.1.0 (2022-09-13)
Added support for PyQt5, PyQt6, PySide2 and PySide6
1.0.0 (2021-07-02)
Stable release, identical to v0.4.0
0.4.0 (2021-05-09)
Fixed buggy worker_DAQ pause and unpause routines in CONTINUOUS mode
0.3.0 (2020-07-23)
Updated start & stop machinery Workers
Removed unneccesary lambdas
Revamped DAQ rate calculation. Init arg calc_DAQ_rate_every_N_iter got removed.
0.2.2 (2020-07-17)
Traceback will be printed when DAQ_function raises an internal error.
Introduced Worker_###._has_finished to prevent hang when closing workers twice.
0.2.1 (2020-07-15)
Added documentation
0.2.0 (2020-07-07)
quit_worker_###(): Added check to see if thread was already closed, due to a lost_connection event. This prevents an hanging app during quit.
Changed name of enum class DAQ_trigger to DAQ_TRIGGER
0.1.2 (2020-07-04)
Proper use of super(), now passing **kwargs onto subclass QtCore.QObject()
0.1.1 (2020-07-02)
Worker_DAQ now stores all init arguments, some as _private
0.1.0 (2020-07-02)
DvG module filenames changed to lowercase
Nearing full release status
0.0.12 (2020-06-29)
INTERNAL_TIMER: Already instantiate the QTimer in create_worker_DAQ(), instead of in start_worker_DAQ()
Changed default DAQ_timer_type from CoarseTimer to PreciseTimer
Added more Sphinx documentation
0.0.11
Skipped (I screwed up the versioning)
0.0.10 (2020-06-22)
Major: Changed name Worker_send to Worker_jobs and similar
Added more Sphinx documentation
0.0.9 (2020-06-17)
Moved the Worker_###() classes outside of QDeviceIO and into module root
Added documentation using Sphinx and Read the docs
Changed from MarkDown to ReStructuredText
0.0.8 (2020-06-09)
Added pause_DAQ, unpause_DAQ(), wake_up_DAQ()
Changed many attribute and method names
Code style: black
0.0.6 (2020-06-07)
Added start(), renamed quit_all_workers() to quit()
Added send(), add_to_send_queue(), process_send_queue()
0.0.5 (2020-06-06)
Implemented smooth start and stop machinery to the workers
0.0.1 (2020-05-25)
First release on PyPI
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for dvg_qdeviceio-1.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6bdb092bd5b663f9a18bc0cc30237710ac5580eabb9f064f7f24f5826f15a73 |
|
MD5 | eba188f0e74f9af25db305c43c01d751 |
|
BLAKE2b-256 | 4329f97f190a88d3a9d069759f3d2c8e091f12d42f38a5a0e2b16aec53346ff1 |