66__author__ = "Dennis van Gils"
77__authoremail__ = "vangils.dennis@gmail.com"
88__url__ = "https://github.com/Dennis-van-Gils/DvG_dev_Arduino"
9- __date__ = "08 -09-2018"
10- __version__ = "2.0 .0"
9+ __date__ = "14 -09-2018"
10+ __version__ = "2.1 .0"
1111
1212from PyQt5 import QtCore
1313import DvG_dev_Arduino__fun_serial as Arduino_functions
14+ import DvG_dev_Base__PyQt_lib as Dev_Base_pyqt_lib
1415
1516# Show debug info in terminal? Warning: Slow! Do not leave on unintentionally.
1617DEBUG_worker_DAQ = False
2021# Arduino_pyqt
2122# ------------------------------------------------------------------------------
2223
23- class Arduino_pyqt (QtCore .QObject ):
24+ class Arduino_pyqt (Dev_Base_pyqt_lib . Dev_Base_pyqt , QtCore .QObject ):
2425 """Manages multithreaded communication and periodical data acquisition for
2526 an Arduino(-like) device.
2627
@@ -46,30 +47,27 @@ class Arduino_pyqt(QtCore.QObject):
4647 (*) DAQ_critical_not_alive_count
4748 (*) DAQ_timer_type
4849
49- Class instances:
50- (*) worker_DAQ
51- (*) worker_send
52-
5350 Main methods:
5451 (*) start_thread_worker_DAQ(...)
5552 (*) start_thread_worker_send(...)
5653 (*) close_all_threads()
5754
5855 queued_write(...):
5956 Write a message to the Arduino via the worker_send queue.
57+
58+ Inner-class instances:
59+ (*) worker_DAQ
60+ (*) worker_send
61+
62+ Main data attributes:
63+ (*) DAQ_update_counter
64+ (*) obtained_DAQ_update_interval_ms
65+ (*) obtained_DAQ_rate_Hz
6066
6167 Signals:
62- (*) worker_DAQ. signal_DAQ_updated()
63- (*) worker_DAQ. signal_connection_lost()
68+ (*) signal_DAQ_updated()
69+ (*) signal_connection_lost()
6470 """
65- from DvG_dev_Base__PyQt_lib import (Worker_DAQ ,
66- Worker_send ,
67- create_thread_worker_DAQ ,
68- create_thread_worker_send ,
69- start_thread_worker_DAQ ,
70- start_thread_worker_send ,
71- close_all_threads )
72-
7371 def __init__ (self ,
7472 dev : Arduino_functions .Arduino ,
7573 DAQ_update_interval_ms ,
@@ -79,23 +77,15 @@ def __init__(self,
7977 parent = None ):
8078 super (Arduino_pyqt , self ).__init__ (parent = parent )
8179
82- self .dev = dev
83- self .dev .mutex = QtCore .QMutex ()
84-
85- self .worker_DAQ = self .Worker_DAQ (
86- dev ,
87- DAQ_update_interval_ms ,
88- DAQ_function_to_run_each_update ,
89- DAQ_critical_not_alive_count ,
90- DAQ_timer_type ,
91- DEBUG = DEBUG_worker_DAQ )
80+ self .attach_device (dev )
9281
93- self .worker_send = self .Worker_send (
94- dev ,
95- DEBUG = DEBUG_worker_send )
82+ self .create_worker_DAQ (DAQ_update_interval_ms ,
83+ DAQ_function_to_run_each_update ,
84+ DAQ_critical_not_alive_count ,
85+ DAQ_timer_type ,
86+ DEBUG = DEBUG_worker_DAQ )
9687
97- self .create_thread_worker_DAQ ()
98- self .create_thread_worker_send ()
88+ self .create_worker_send (DEBUG = DEBUG_worker_send )
9989
10090 # --------------------------------------------------------------------------
10191 # queued_write
0 commit comments