pymodaq 5.1.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pymodaq/__init__.py +98 -0
- pymodaq/control_modules/__init__.py +1 -0
- pymodaq/control_modules/daq_move.py +1238 -0
- pymodaq/control_modules/daq_move_ui/__init__.py +0 -0
- pymodaq/control_modules/daq_move_ui/factory.py +48 -0
- pymodaq/control_modules/daq_move_ui/ui_base.py +359 -0
- pymodaq/control_modules/daq_move_ui/uis/__init__.py +0 -0
- pymodaq/control_modules/daq_move_ui/uis/binary.py +139 -0
- pymodaq/control_modules/daq_move_ui/uis/original.py +120 -0
- pymodaq/control_modules/daq_move_ui/uis/relative.py +124 -0
- pymodaq/control_modules/daq_move_ui/uis/simple.py +126 -0
- pymodaq/control_modules/daq_viewer.py +1517 -0
- pymodaq/control_modules/daq_viewer_ui.py +407 -0
- pymodaq/control_modules/mocks.py +57 -0
- pymodaq/control_modules/move_utility_classes.py +1141 -0
- pymodaq/control_modules/thread_commands.py +137 -0
- pymodaq/control_modules/ui_utils.py +72 -0
- pymodaq/control_modules/utils.py +591 -0
- pymodaq/control_modules/viewer_utility_classes.py +670 -0
- pymodaq/daq_utils/__init__.py +0 -0
- pymodaq/daq_utils/daq_utils.py +6 -0
- pymodaq/dashboard.py +2396 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Client.aliases +3 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Client.lvlps +3 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Client.lvproj +32 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Client.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Server_1Dgaussian.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_Server_2Dgaussian.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_read_cmd.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_read_float.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_read_int.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_send_data.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_send_int.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_send_scalar.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/DAQ_TCP_send_string.vi +0 -0
- pymodaq/examples/Labview_TCP_Client/client_state.ctl +0 -0
- pymodaq/examples/Labview_TCP_Client/cmd_types.ctl +0 -0
- pymodaq/examples/__init__.py +0 -0
- pymodaq/examples/function_plotter.py +160 -0
- pymodaq/examples/nonlinearscanner.py +126 -0
- pymodaq/examples/qt_less_standalone_module.py +165 -0
- pymodaq/examples/tcp_client.py +97 -0
- pymodaq/extensions/__init__.py +25 -0
- pymodaq/extensions/adaptive/__init__.py +2 -0
- pymodaq/extensions/adaptive/adaptive_optimization.py +179 -0
- pymodaq/extensions/adaptive/loss_function/_1d_loss_functions.py +73 -0
- pymodaq/extensions/adaptive/loss_function/_2d_loss_functions.py +73 -0
- pymodaq/extensions/adaptive/loss_function/__init__.py +3 -0
- pymodaq/extensions/adaptive/loss_function/loss_factory.py +110 -0
- pymodaq/extensions/adaptive/utils.py +123 -0
- pymodaq/extensions/bayesian/__init__.py +2 -0
- pymodaq/extensions/bayesian/acquisition/__init__.py +2 -0
- pymodaq/extensions/bayesian/acquisition/acquisition_function_factory.py +80 -0
- pymodaq/extensions/bayesian/acquisition/base_acquisition_function.py +105 -0
- pymodaq/extensions/bayesian/bayesian_optimization.py +143 -0
- pymodaq/extensions/bayesian/utils.py +180 -0
- pymodaq/extensions/console.py +73 -0
- pymodaq/extensions/daq_logger/__init__.py +1 -0
- pymodaq/extensions/daq_logger/abstract.py +52 -0
- pymodaq/extensions/daq_logger/daq_logger.py +519 -0
- pymodaq/extensions/daq_logger/db/__init__.py +0 -0
- pymodaq/extensions/daq_logger/db/db_logger.py +300 -0
- pymodaq/extensions/daq_logger/db/db_logger_models.py +100 -0
- pymodaq/extensions/daq_logger/h5logging.py +84 -0
- pymodaq/extensions/daq_scan.py +1218 -0
- pymodaq/extensions/daq_scan_ui.py +241 -0
- pymodaq/extensions/data_mixer/__init__.py +0 -0
- pymodaq/extensions/data_mixer/daq_0Dviewer_DataMixer.py +97 -0
- pymodaq/extensions/data_mixer/data_mixer.py +262 -0
- pymodaq/extensions/data_mixer/model.py +108 -0
- pymodaq/extensions/data_mixer/models/__init__.py +0 -0
- pymodaq/extensions/data_mixer/models/equation_model.py +91 -0
- pymodaq/extensions/data_mixer/models/gaussian_fit_model.py +65 -0
- pymodaq/extensions/data_mixer/parser.py +53 -0
- pymodaq/extensions/data_mixer/utils.py +23 -0
- pymodaq/extensions/h5browser.py +9 -0
- pymodaq/extensions/optimizers_base/__init__.py +0 -0
- pymodaq/extensions/optimizers_base/optimizer.py +1016 -0
- pymodaq/extensions/optimizers_base/thread_commands.py +22 -0
- pymodaq/extensions/optimizers_base/utils.py +427 -0
- pymodaq/extensions/pid/__init__.py +16 -0
- pymodaq/extensions/pid/actuator_controller.py +14 -0
- pymodaq/extensions/pid/daq_move_PID.py +154 -0
- pymodaq/extensions/pid/pid_controller.py +1016 -0
- pymodaq/extensions/pid/utils.py +189 -0
- pymodaq/extensions/utils.py +111 -0
- pymodaq/icon.ico +0 -0
- pymodaq/post_treatment/__init__.py +6 -0
- pymodaq/post_treatment/load_and_plot.py +352 -0
- pymodaq/resources/__init__.py +0 -0
- pymodaq/resources/config_template.toml +57 -0
- pymodaq/resources/preset_default.xml +1 -0
- pymodaq/resources/setup_plugin.py +73 -0
- pymodaq/splash.png +0 -0
- pymodaq/utils/__init__.py +0 -0
- pymodaq/utils/array_manipulation.py +6 -0
- pymodaq/utils/calibration_camera.py +180 -0
- pymodaq/utils/chrono_timer.py +203 -0
- pymodaq/utils/config.py +53 -0
- pymodaq/utils/conftests.py +5 -0
- pymodaq/utils/daq_utils.py +158 -0
- pymodaq/utils/data.py +128 -0
- pymodaq/utils/enums.py +6 -0
- pymodaq/utils/exceptions.py +38 -0
- pymodaq/utils/gui_utils/__init__.py +10 -0
- pymodaq/utils/gui_utils/loader_utils.py +75 -0
- pymodaq/utils/gui_utils/utils.py +18 -0
- pymodaq/utils/gui_utils/widgets/lcd.py +8 -0
- pymodaq/utils/h5modules/__init__.py +2 -0
- pymodaq/utils/h5modules/module_saving.py +526 -0
- pymodaq/utils/leco/__init__.py +25 -0
- pymodaq/utils/leco/daq_move_LECODirector.py +217 -0
- pymodaq/utils/leco/daq_xDviewer_LECODirector.py +163 -0
- pymodaq/utils/leco/director_utils.py +74 -0
- pymodaq/utils/leco/leco_director.py +166 -0
- pymodaq/utils/leco/pymodaq_listener.py +364 -0
- pymodaq/utils/leco/rpc_method_definitions.py +43 -0
- pymodaq/utils/leco/utils.py +74 -0
- pymodaq/utils/logger.py +6 -0
- pymodaq/utils/managers/__init__.py +0 -0
- pymodaq/utils/managers/batchscan_manager.py +346 -0
- pymodaq/utils/managers/modules_manager.py +589 -0
- pymodaq/utils/managers/overshoot_manager.py +242 -0
- pymodaq/utils/managers/preset_manager.py +229 -0
- pymodaq/utils/managers/preset_manager_utils.py +262 -0
- pymodaq/utils/managers/remote_manager.py +484 -0
- pymodaq/utils/math_utils.py +6 -0
- pymodaq/utils/messenger.py +6 -0
- pymodaq/utils/parameter/__init__.py +10 -0
- pymodaq/utils/parameter/utils.py +6 -0
- pymodaq/utils/scanner/__init__.py +5 -0
- pymodaq/utils/scanner/scan_config.py +16 -0
- pymodaq/utils/scanner/scan_factory.py +259 -0
- pymodaq/utils/scanner/scan_selector.py +477 -0
- pymodaq/utils/scanner/scanner.py +324 -0
- pymodaq/utils/scanner/scanners/_1d_scanners.py +174 -0
- pymodaq/utils/scanner/scanners/_2d_scanners.py +299 -0
- pymodaq/utils/scanner/scanners/__init__.py +1 -0
- pymodaq/utils/scanner/scanners/sequential.py +224 -0
- pymodaq/utils/scanner/scanners/tabular.py +319 -0
- pymodaq/utils/scanner/utils.py +110 -0
- pymodaq/utils/svg/__init__.py +6 -0
- pymodaq/utils/svg/svg_renderer.py +20 -0
- pymodaq/utils/svg/svg_view.py +35 -0
- pymodaq/utils/svg/svg_viewer2D.py +50 -0
- pymodaq/utils/tcp_ip/__init__.py +6 -0
- pymodaq/utils/tcp_ip/mysocket.py +12 -0
- pymodaq/utils/tcp_ip/serializer.py +13 -0
- pymodaq/utils/tcp_ip/tcp_server_client.py +772 -0
- pymodaq-5.1.6.dist-info/METADATA +238 -0
- pymodaq-5.1.6.dist-info/RECORD +154 -0
- pymodaq-5.1.6.dist-info/WHEEL +4 -0
- pymodaq-5.1.6.dist-info/entry_points.txt +7 -0
- pymodaq-5.1.6.dist-info/licenses/LICENSE +21 -0
pymodaq/__init__.py
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import importlib.util
|
|
2
|
+
import os
|
|
3
|
+
import sys
|
|
4
|
+
from pint import UnitRegistry
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
|
|
7
|
+
import warnings
|
|
8
|
+
|
|
9
|
+
import pymodaq_utils # to init stuff related to pymodaq_utils # necessary, leave it there
|
|
10
|
+
import pymodaq_data # to init stuff related to pymodaq_data # necessary, leave it there
|
|
11
|
+
import pymodaq_gui # to init stuff related to pymodaq_gui # necessary, leave it there
|
|
12
|
+
|
|
13
|
+
from pymodaq_data import Q_, Unit, ureg # necessary, leave it there
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
try:
|
|
17
|
+
# with open(str(Path(__file__).parent.joinpath('resources/VERSION')), 'r') as fvers:
|
|
18
|
+
# __version__ = fvers.read().strip()
|
|
19
|
+
|
|
20
|
+
from pymodaq_utils.logger import set_logger
|
|
21
|
+
from pymodaq_utils.utils import get_version
|
|
22
|
+
__version__ = get_version('pymodaq')
|
|
23
|
+
try:
|
|
24
|
+
logger = set_logger('pymodaq', add_handler=True, base_logger=True)
|
|
25
|
+
|
|
26
|
+
from pymodaq.utils.daq_utils import copy_preset, get_instrument_plugins
|
|
27
|
+
|
|
28
|
+
from pymodaq_utils.config import Config
|
|
29
|
+
from pymodaq.utils.scanner.utils import register_scanners
|
|
30
|
+
from pymodaq.control_modules.ui_utils import register_uis
|
|
31
|
+
from pymodaq_data.plotting.plotter.plotter import register_plotter, PlotterFactory
|
|
32
|
+
|
|
33
|
+
# issue on windows when using .NET code within multithreads, this below allows it but requires
|
|
34
|
+
# the pywin32 (pythoncom) package
|
|
35
|
+
try:
|
|
36
|
+
if 'win' in sys.platform and importlib.util.find_spec('clr') is not None:
|
|
37
|
+
try:
|
|
38
|
+
import pythoncom
|
|
39
|
+
pythoncom.CoInitialize()
|
|
40
|
+
except ModuleNotFoundError as e:
|
|
41
|
+
infos = "You have installed plugins requiring the pywin32 package to work correctly," \
|
|
42
|
+
" please type in *pip install pywin32* and restart PyMoDAQ"
|
|
43
|
+
print(infos)
|
|
44
|
+
logger.warning(infos)
|
|
45
|
+
except ValueError:
|
|
46
|
+
pass
|
|
47
|
+
|
|
48
|
+
config = Config() # to ckeck for config file existence, otherwise create one
|
|
49
|
+
copy_preset()
|
|
50
|
+
|
|
51
|
+
from pymodaq_utils.config import Config
|
|
52
|
+
from pymodaq.utils.scanner.utils import register_scanners
|
|
53
|
+
|
|
54
|
+
try:
|
|
55
|
+
# Need the config to exists before importing
|
|
56
|
+
from pymodaq_utils.environment import EnvironmentBackupManager
|
|
57
|
+
|
|
58
|
+
if config['backup']['keep_backup']:
|
|
59
|
+
ebm = EnvironmentBackupManager()
|
|
60
|
+
ebm.save_backup()
|
|
61
|
+
except ModuleNotFoundError as e:
|
|
62
|
+
infos = "Your pymodaq_utils version is outdated and doesn't allow for automatic backup of pip packages." \
|
|
63
|
+
" You should update it."
|
|
64
|
+
print(infos)
|
|
65
|
+
logger.warning(infos)
|
|
66
|
+
logger.info('*************************************************************************')
|
|
67
|
+
logger.info(f"Registering UIs...")
|
|
68
|
+
register_uis(parent_module_name='pymodaq.control_modules.daq_move_ui')
|
|
69
|
+
logger.info(f"Done")
|
|
70
|
+
logger.info('************************')
|
|
71
|
+
|
|
72
|
+
logger.info('*************************************************************************')
|
|
73
|
+
logger.info(f"Getting the list of instrument plugins...")
|
|
74
|
+
logger.info('')
|
|
75
|
+
get_instrument_plugins()
|
|
76
|
+
logger.info('*************************************************************************')
|
|
77
|
+
|
|
78
|
+
logger.info('')
|
|
79
|
+
logger.info('')
|
|
80
|
+
logger.info('************************')
|
|
81
|
+
logger.info(f"Registering Scanners...")
|
|
82
|
+
register_scanners()
|
|
83
|
+
logger.info(f"Done")
|
|
84
|
+
logger.info('************************')
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
except Exception as e:
|
|
88
|
+
try:
|
|
89
|
+
logger.exception(str(e))
|
|
90
|
+
except Exception as e:
|
|
91
|
+
print(str(e))
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
except Exception as e:
|
|
95
|
+
try:
|
|
96
|
+
logger.exception(str(e))
|
|
97
|
+
except Exception as e:
|
|
98
|
+
print(str(e))
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
from . import ui_utils # to avoid circular import
|