8.6.8.3. pymodaq_gui.utils.app_worker module
- class pymodaq_gui.utils.app_worker.ExtensionWorker(app, parent=None)[source]
Bases:
QObject- Attributes:
h5_managerConvenience property
- is_running
module_and_data_saverConvenience property
modules_managerConvenience property
- processor_worker
- settings
Methods
Will terminate/close/stops a few things when the worker is done working
pause
start
stop
update_worker_ntask
workers_terminated
- terminate_workers()[source]
Will terminate/close/stops a few things when the worker is done working
- has_data_processor = False
- property module_and_data_saver: ScanSaver | LoggerSaver | OptimizerSaver
Convenience property
- property modules_manager: ModulesManager
Convenience property
- property processor_worker: ProcessorWorker
- saver_worker: SaverWorker
- staticMetaObject = PySide6.QtCore.QMetaObject("ExtensionWorker" inherits "QObject": Methods: #4 type=Signal, signature=_workers_done() #5 type=Signal, signature=workers_terminated() #6 type=Slot, signature=update_worker_ntask(QString,int), parameters=QString, int )
- workers_terminated
- class pymodaq_gui.utils.app_worker.ProcessorWorker(h5saver, parent=None)[source]
Bases:
ThreadWorkerMethods
do_process_data(info)To be reimplemented to process data before reemission using processed_data_signal
- do_process_data(info)[source]
To be reimplemented to process data before reemission using processed_data_signal
- name = 'ProcessorWorker'
- params = [{'children': [{'name': 'worker_running', 'readonly': True, 'title': 'Worker Running:', 'type': 'led', 'value': False}, {'name': 'worker_tasks', 'readonly': True, 'title': 'Pending save tasks:', 'tooltip': 'Scan points queued to be written but not yet saved to disk. Usually near 0 since saving is normally faster than acquisition; a sustained non-zero value means the saver is falling behind the scan.', 'type': 'int', 'value': 0}], 'name': 'processor_worker', 'title': 'Processor Worker', 'type': 'group'}]
- staticMetaObject = PySide6.QtCore.QMetaObject("ProcessorWorker" inherits "ThreadWorker": )
- class pymodaq_gui.utils.app_worker.SaverWorker(saver, parent=None)[source]
Bases:
ThreadWorkerWorker in separated thread receiving the data ad DataBundle and adding them into the extended or enlargeable arrays within a H5file using one of the ExtensionSaver module saver
Methods
add_nav_axes(axes)Particular case of the ScanSaver where the Navigations axes are the same for all nodes and can therefore be added beforehand
nav_axes_signal
save_data
Particular case of the ScanSaver where the Navigations axes are the same for all nodes and can therefore be added beforehand
- name = 'SaverWorker'
- params = [{'children': [{'name': 'worker_running', 'readonly': True, 'title': 'Worker Running:', 'type': 'led', 'value': False}, {'name': 'worker_tasks', 'readonly': True, 'title': 'Pending save tasks:', 'tooltip': 'Scan points queued to be written but not yet saved to disk. Usually near 0 since saving is normally faster than acquisition; a sustained non-zero value means the saver is falling behind the scan.', 'type': 'int', 'value': 0}], 'name': 'saver_worker', 'title': 'Saver Worker', 'type': 'group'}]
- saver: ScanSaver | LoggerSaver | OptimizerSaver | DataToExportSaver | DataToExportExtendedSaver | DataToExportEnlargeableSaver | DataToExportTimedSaver
- staticMetaObject = PySide6.QtCore.QMetaObject("SaverWorker" inherits "ThreadWorker": Methods: #8 type=Signal, signature=nav_axes_signal(QVariantList), parameters=QVariantList #9 type=Slot, signature=save_data(PyObject), parameters=PyObject #10 type=Slot, signature=add_nav_axes(QVariantList), parameters=QVariantList )