pychemstation 0.10.5__py3-none-any.whl → 0.10.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.
Files changed (27) hide show
  1. pychemstation/analysis/__init__.py +8 -1
  2. pychemstation/control/controllers/__init__.py +2 -2
  3. pychemstation/control/controllers/abc_tables/__init__.py +0 -0
  4. pychemstation/control/controllers/abc_tables/device.py +15 -0
  5. pychemstation/control/controllers/{tables/table.py → abc_tables/run.py} +24 -195
  6. pychemstation/control/controllers/abc_tables/table.py +221 -0
  7. pychemstation/control/controllers/comm.py +3 -99
  8. pychemstation/control/controllers/{tables → data_aq}/method.py +2 -2
  9. pychemstation/control/controllers/{tables → data_aq}/sequence.py +72 -53
  10. pychemstation/control/controllers/devices/__init__.py +3 -0
  11. pychemstation/control/controllers/devices/injector.py +57 -24
  12. pychemstation/control/hplc.py +5 -1
  13. pychemstation/utils/injector_types.py +22 -2
  14. pychemstation/utils/mocking/__init__.py +0 -0
  15. pychemstation/utils/mocking/abc_comm.py +160 -0
  16. pychemstation/utils/mocking/mock_comm.py +5 -0
  17. pychemstation/utils/mocking/mock_hplc.py +2 -0
  18. pychemstation/utils/sequence_types.py +19 -0
  19. pychemstation/utils/table_types.py +6 -0
  20. pychemstation/utils/tray_types.py +36 -1
  21. {pychemstation-0.10.5.dist-info → pychemstation-0.10.6.dist-info}/METADATA +1 -1
  22. pychemstation-0.10.6.dist-info/RECORD +42 -0
  23. pychemstation/control/controllers/devices/device.py +0 -74
  24. pychemstation-0.10.5.dist-info/RECORD +0 -36
  25. /pychemstation/control/controllers/{tables → data_aq}/__init__.py +0 -0
  26. {pychemstation-0.10.5.dist-info → pychemstation-0.10.6.dist-info}/WHEEL +0 -0
  27. {pychemstation-0.10.5.dist-info → pychemstation-0.10.6.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,42 @@
1
+ pychemstation/__init__.py,sha256=Sc4z8LRVFMwJUoc_DPVUriSXTZ6PO9MaJ80PhRbKyB8,34
2
+ pychemstation/analysis/__init__.py,sha256=mPNnp0TmkoUxrTGcT6wNKMyCiOar5vC0cTPmFLrDU1Q,313
3
+ pychemstation/analysis/base_spectrum.py,sha256=t_VoxAtBph1V7S4fOsziERHiOBkYP0_nH7LTwbTEvcE,16529
4
+ pychemstation/analysis/chromatogram.py,sha256=cHxPd5-miA6L3FjwN5cSFyq4xEeZoHWFFk8gU6tCgg4,3946
5
+ pychemstation/analysis/process_report.py,sha256=xckcpqnYfzFTIo1nhgwP5A4GPJsW3PQ_qzuy5Z1KOuI,14714
6
+ pychemstation/control/README.md,sha256=_7ITj4hD17YIwci6UY6xBebC9gPCBpzBFTB_Gx0eJBc,3124
7
+ pychemstation/control/__init__.py,sha256=7lSkY7Qa7Ikdz82-2FESc_oqktv7JndsjltCkiMqnMI,147
8
+ pychemstation/control/hplc.py,sha256=C4cnjsSsjgK_VcySGhbG1OMGEVoY3pYSA69dnvqwEL0,12526
9
+ pychemstation/control/controllers/README.md,sha256=S5cd4NJmPjs6TUH98BtPJJhiS1Lu-mxLCNS786ogOrQ,32
10
+ pychemstation/control/controllers/__init__.py,sha256=EWvvITwY6RID5b1ilVsPowP85uzmIt3LYW0rvyN-3x0,146
11
+ pychemstation/control/controllers/comm.py,sha256=saTyM86kUZ7mevWPpna7LoMC-Q0KR4Pq0cURhCoiW8k,5018
12
+ pychemstation/control/controllers/abc_tables/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ pychemstation/control/controllers/abc_tables/device.py,sha256=HRea-dRwHf7u1aA1m2C9TmIBhhKKifmqVdPfZxmwoyk,442
14
+ pychemstation/control/controllers/abc_tables/run.py,sha256=8RGvQ3NrXPidoGOilxyFoGHxaM1r1qn2d3TLLyOe4po,8202
15
+ pychemstation/control/controllers/abc_tables/table.py,sha256=XriB53rn1YOAMCS4AGARKoniaXOQi5qUsBSNuLCn8ew,7196
16
+ pychemstation/control/controllers/data_aq/__init__.py,sha256=w-Zgbit10niOQfz780ZmRHjUFxV1hMkdui7fOMPqeLA,132
17
+ pychemstation/control/controllers/data_aq/method.py,sha256=HnVMg-qwKSY7mTmw0AerMlVWHeu72YPfPBviTnzavA4,18214
18
+ pychemstation/control/controllers/data_aq/sequence.py,sha256=Q77YkDTkIxUbsRYyN5OJt1a0HgD9TxHW-LiFRQDV8Kk,16516
19
+ pychemstation/control/controllers/devices/__init__.py,sha256=QpgGnLXyWiB96KIB98wMccEi8oOUUaLxvBCyevJzcOg,75
20
+ pychemstation/control/controllers/devices/injector.py,sha256=NXJEKDGu-XJoQDbaJav6tD73S7UqFZqXJd5bcwdvwBQ,4047
21
+ pychemstation/generated/__init__.py,sha256=xnEs0QTjeuGYO3tVUIy8GDo95GqTV1peEjosGckpOu0,977
22
+ pychemstation/generated/dad_method.py,sha256=xTUiSCvkXcxBUhjVm1YZKu-tHs16k23pF-0xYrQSwWA,8408
23
+ pychemstation/generated/pump_method.py,sha256=s3MckKDw2-nZUC5lHrJVvXYdneWP8-9UvblNuGryPHY,12092
24
+ pychemstation/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
+ pychemstation/utils/injector_types.py,sha256=z2iWwTklGm0GRDCL9pnPCovQrwyRwxv8w5w5Xh7Pj3U,1152
26
+ pychemstation/utils/macro.py,sha256=Y_0CwTHcDQKoxYrNHqdF14-ciwtx56Y65SzNtOFPhNk,2848
27
+ pychemstation/utils/method_types.py,sha256=_2djFz_uWFc9aoZcyPMIjC5KYBs003WPoQGx7ZhMiOg,1649
28
+ pychemstation/utils/num_utils.py,sha256=dDs8sLZ_SdtvDKhyhF3IkljiVf16IYqpMTO5tEk9vMk,2079
29
+ pychemstation/utils/parsing.py,sha256=mzdpxrH5ux4-_i4CwZvnIYnIwAnRnOptKb3fZyYJcx0,9307
30
+ pychemstation/utils/pump_types.py,sha256=HWQHxscGn19NTrfYBwQRCO2VcYfwyko7YfBO5uDhEm4,93
31
+ pychemstation/utils/sequence_types.py,sha256=XVAi1MCQrNqwbmzrBrVbapjD_AQg6A-l0nwjNsNAbKs,1924
32
+ pychemstation/utils/spec_utils.py,sha256=lS27Xi4mFNDWBfmBqOoxTcVchPAkLK2mSdoaWDOfaPI,10211
33
+ pychemstation/utils/table_types.py,sha256=I5xy7tpmMWOMb6tFfWVE1r4wnSsgky5sZU9oNtHU9BE,3451
34
+ pychemstation/utils/tray_types.py,sha256=FUjCUnozt5ZjCl5Vg9FioPHGTdKa43SQI1QPVkoBmV0,6078
35
+ pychemstation/utils/mocking/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
+ pychemstation/utils/mocking/abc_comm.py,sha256=zt1_6IBme6FiRjZ3zvUvlSdToBb85u3th8NKKGprn_Q,5246
37
+ pychemstation/utils/mocking/mock_comm.py,sha256=nYSK2S85iDACIY73rX56yyqyaWo6Oaj3H7gvMsrkRJA,150
38
+ pychemstation/utils/mocking/mock_hplc.py,sha256=Hx6127C7d3miYGCZYxbN-Q3PU8kpMgXYX2n6we2Twgw,25
39
+ pychemstation-0.10.6.dist-info/METADATA,sha256=yfxKdWhVOQkClZFBqiluL41D6PH3XkVZ9SoXxKQlY8Q,5933
40
+ pychemstation-0.10.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
41
+ pychemstation-0.10.6.dist-info/licenses/LICENSE,sha256=9bdF75gIf1MecZ7oymqWgJREVz7McXPG-mjqrTmzzD8,18658
42
+ pychemstation-0.10.6.dist-info/RECORD,,
@@ -1,74 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import abc
4
- from typing import Union
5
-
6
- from result import Err, Ok
7
-
8
- from ....control.controllers import CommunicationController
9
- from ....utils.macro import Command, Response
10
- from ....utils.table_types import RegisterFlag, Table, TableOperation
11
-
12
-
13
- class DeviceController(abc.ABC):
14
- def __init__(
15
- self, controller: CommunicationController, table: Table, offline: bool
16
- ):
17
- self.table_locator = table
18
- self.controller = controller
19
- self.offline = offline
20
-
21
- @abc.abstractmethod
22
- def get_row(self, row: int):
23
- pass
24
-
25
- def get_text(self, row: int, col_name: RegisterFlag) -> str:
26
- return self.controller.get_text_val(
27
- TableOperation.GET_ROW_TEXT.value.format(
28
- register=self.table_locator.register,
29
- table_name=self.table_locator.name,
30
- row=row,
31
- col_name=col_name.value,
32
- )
33
- )
34
-
35
- def get_num(self, row: int, col_name: RegisterFlag) -> Union[int, float]:
36
- return self.controller.get_num_val(
37
- TableOperation.GET_ROW_VAL.value.format(
38
- register=self.table_locator.register,
39
- table_name=self.table_locator.name,
40
- row=row,
41
- col_name=col_name.value,
42
- )
43
- )
44
-
45
- def get_num_rows(self) -> Ok[Response] | Err[str]:
46
- self.send(
47
- TableOperation.GET_NUM_ROWS.value.format(
48
- register=self.table_locator.register,
49
- table_name=self.table_locator.name,
50
- col_name=RegisterFlag.NUM_ROWS,
51
- )
52
- )
53
- self.send(
54
- Command.GET_ROWS_CMD.value.format(
55
- register=self.table_locator.register,
56
- table_name=self.table_locator.name,
57
- col_name=RegisterFlag.NUM_ROWS,
58
- )
59
- )
60
- res = self.controller.receive()
61
-
62
- if res.is_ok():
63
- self.send("Sleep 0.1")
64
- self.send("Print Rows")
65
- return res
66
- else:
67
- return Err("No rows could be read.")
68
-
69
- def send(self, cmd: Union[Command, str]):
70
- if not self.controller:
71
- raise RuntimeError(
72
- "Communication controller must be initialized before sending command. It is currently in offline mode."
73
- )
74
- self.controller.send(cmd)
@@ -1,36 +0,0 @@
1
- pychemstation/__init__.py,sha256=Sc4z8LRVFMwJUoc_DPVUriSXTZ6PO9MaJ80PhRbKyB8,34
2
- pychemstation/analysis/__init__.py,sha256=dcX7OeHoKdyrECHRCSXgKZN81nOXSAmZRxXzRT0jpDc,126
3
- pychemstation/analysis/base_spectrum.py,sha256=t_VoxAtBph1V7S4fOsziERHiOBkYP0_nH7LTwbTEvcE,16529
4
- pychemstation/analysis/chromatogram.py,sha256=cHxPd5-miA6L3FjwN5cSFyq4xEeZoHWFFk8gU6tCgg4,3946
5
- pychemstation/analysis/process_report.py,sha256=xckcpqnYfzFTIo1nhgwP5A4GPJsW3PQ_qzuy5Z1KOuI,14714
6
- pychemstation/control/README.md,sha256=_7ITj4hD17YIwci6UY6xBebC9gPCBpzBFTB_Gx0eJBc,3124
7
- pychemstation/control/__init__.py,sha256=7lSkY7Qa7Ikdz82-2FESc_oqktv7JndsjltCkiMqnMI,147
8
- pychemstation/control/hplc.py,sha256=H6ilH0e3vhk0B6ZFi8ecomKSi144Qw-TLRwyL7XFB-o,12356
9
- pychemstation/control/controllers/README.md,sha256=S5cd4NJmPjs6TUH98BtPJJhiS1Lu-mxLCNS786ogOrQ,32
10
- pychemstation/control/controllers/__init__.py,sha256=GFVjjLxPL-FoRHxijdIkHggYvBqIQrnXaoGZgjuArdo,144
11
- pychemstation/control/controllers/comm.py,sha256=XgEECwlrUMHaZoHSqbYqaA5Kkoy5RRRnyoI6Mv64DWM,8571
12
- pychemstation/control/controllers/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- pychemstation/control/controllers/devices/device.py,sha256=ObcPeHFu4siRtt-XHllDgLruR1o8zWv1Gy0ar5bYgO4,2375
14
- pychemstation/control/controllers/devices/injector.py,sha256=97xzayu0doxwtdfCgq-VI9rIHkZuGw65X1-JjIGQeFg,2798
15
- pychemstation/control/controllers/tables/__init__.py,sha256=w-Zgbit10niOQfz780ZmRHjUFxV1hMkdui7fOMPqeLA,132
16
- pychemstation/control/controllers/tables/method.py,sha256=8fwGcm8QRpayLnQ5q3Iyg2aaWWBY4SFT7_ZfJIxigZs,18208
17
- pychemstation/control/controllers/tables/sequence.py,sha256=_u3YY2OrYub7jGvqRds5dmjqCB9pnWqTOI71MuGSMB0,15759
18
- pychemstation/control/controllers/tables/table.py,sha256=qWjkh1S42FdUoN4PKgYg0yvar86QPDze9QRX_iHE6rk,13853
19
- pychemstation/generated/__init__.py,sha256=xnEs0QTjeuGYO3tVUIy8GDo95GqTV1peEjosGckpOu0,977
20
- pychemstation/generated/dad_method.py,sha256=xTUiSCvkXcxBUhjVm1YZKu-tHs16k23pF-0xYrQSwWA,8408
21
- pychemstation/generated/pump_method.py,sha256=s3MckKDw2-nZUC5lHrJVvXYdneWP8-9UvblNuGryPHY,12092
22
- pychemstation/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- pychemstation/utils/injector_types.py,sha256=lGgBZhWdh93hwYT4N9LLQuZXu4Xcuc3j0RDBzOWg8P8,836
24
- pychemstation/utils/macro.py,sha256=Y_0CwTHcDQKoxYrNHqdF14-ciwtx56Y65SzNtOFPhNk,2848
25
- pychemstation/utils/method_types.py,sha256=_2djFz_uWFc9aoZcyPMIjC5KYBs003WPoQGx7ZhMiOg,1649
26
- pychemstation/utils/num_utils.py,sha256=dDs8sLZ_SdtvDKhyhF3IkljiVf16IYqpMTO5tEk9vMk,2079
27
- pychemstation/utils/parsing.py,sha256=mzdpxrH5ux4-_i4CwZvnIYnIwAnRnOptKb3fZyYJcx0,9307
28
- pychemstation/utils/pump_types.py,sha256=HWQHxscGn19NTrfYBwQRCO2VcYfwyko7YfBO5uDhEm4,93
29
- pychemstation/utils/sequence_types.py,sha256=T0IP2iMqorUrdzH4at9Vsmmb3SCAEmN4z1cUlFaeTXw,1089
30
- pychemstation/utils/spec_utils.py,sha256=lS27Xi4mFNDWBfmBqOoxTcVchPAkLK2mSdoaWDOfaPI,10211
31
- pychemstation/utils/table_types.py,sha256=inOVpwSsic31VdVdJkfuq35QfKd7PoNoXY1QnOxZ6Sw,3235
32
- pychemstation/utils/tray_types.py,sha256=9yLRIBn3IPVMbhrFqJQJ5gCQJI7H9DD2cdIFQDp2-8k,5184
33
- pychemstation-0.10.5.dist-info/METADATA,sha256=RfxUkxoudjZSf-bxO4eSHpsqTxML-JQJYnAmBTr0wFQ,5933
34
- pychemstation-0.10.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
35
- pychemstation-0.10.5.dist-info/licenses/LICENSE,sha256=9bdF75gIf1MecZ7oymqWgJREVz7McXPG-mjqrTmzzD8,18658
36
- pychemstation-0.10.5.dist-info/RECORD,,