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.
- pychemstation/analysis/__init__.py +8 -1
- pychemstation/control/controllers/__init__.py +2 -2
- pychemstation/control/controllers/abc_tables/__init__.py +0 -0
- pychemstation/control/controllers/abc_tables/device.py +15 -0
- pychemstation/control/controllers/{tables/table.py → abc_tables/run.py} +24 -195
- pychemstation/control/controllers/abc_tables/table.py +221 -0
- pychemstation/control/controllers/comm.py +3 -99
- pychemstation/control/controllers/{tables → data_aq}/method.py +2 -2
- pychemstation/control/controllers/{tables → data_aq}/sequence.py +72 -53
- pychemstation/control/controllers/devices/__init__.py +3 -0
- pychemstation/control/controllers/devices/injector.py +57 -24
- pychemstation/control/hplc.py +5 -1
- pychemstation/utils/injector_types.py +22 -2
- pychemstation/utils/mocking/__init__.py +0 -0
- pychemstation/utils/mocking/abc_comm.py +160 -0
- pychemstation/utils/mocking/mock_comm.py +5 -0
- pychemstation/utils/mocking/mock_hplc.py +2 -0
- pychemstation/utils/sequence_types.py +19 -0
- pychemstation/utils/table_types.py +6 -0
- pychemstation/utils/tray_types.py +36 -1
- {pychemstation-0.10.5.dist-info → pychemstation-0.10.6.dist-info}/METADATA +1 -1
- pychemstation-0.10.6.dist-info/RECORD +42 -0
- pychemstation/control/controllers/devices/device.py +0 -74
- pychemstation-0.10.5.dist-info/RECORD +0 -36
- /pychemstation/control/controllers/{tables → data_aq}/__init__.py +0 -0
- {pychemstation-0.10.5.dist-info → pychemstation-0.10.6.dist-info}/WHEEL +0 -0
- {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,,
|
File without changes
|
File without changes
|
File without changes
|