pychemstation 0.10.4__tar.gz → 0.10.5__tar.gz

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 (234) hide show
  1. {pychemstation-0.10.4 → pychemstation-0.10.5}/.gitignore +3 -1
  2. {pychemstation-0.10.4 → pychemstation-0.10.5}/.pre-commit-config.yaml +5 -1
  3. {pychemstation-0.10.4 → pychemstation-0.10.5}/PKG-INFO +4 -4
  4. {pychemstation-0.10.4 → pychemstation-0.10.5}/README.md +2 -2
  5. pychemstation-0.10.5/out.txt +377 -0
  6. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/analysis/chromatogram.py +20 -0
  7. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/analysis/process_report.py +125 -63
  8. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/__init__.py +2 -0
  9. pychemstation-0.10.5/pychemstation/control/controllers/__init__.py +8 -0
  10. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/comm.py +37 -22
  11. pychemstation-0.10.5/pychemstation/control/controllers/devices/device.py +74 -0
  12. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/devices/injector.py +19 -7
  13. pychemstation-0.10.5/pychemstation/control/controllers/tables/__init__.py +4 -0
  14. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/tables/method.py +50 -93
  15. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/tables/sequence.py +134 -95
  16. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/tables/table.py +102 -78
  17. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/hplc.py +11 -17
  18. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/injector_types.py +1 -1
  19. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/macro.py +2 -2
  20. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/method_types.py +1 -1
  21. {pychemstation-0.10.4 → pychemstation-0.10.5}/pyproject.toml +2 -2
  22. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/ACQRES.REG +0 -0
  23. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT01.CSV +0 -0
  24. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT02.CSV +0 -0
  25. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT03.CSV +0 -0
  26. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT04.CSV +0 -0
  27. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT05.CSV +0 -0
  28. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/Automatically_Generated_Report.TXT +0 -0
  29. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/Automatically_Generated_Report00.CSV +0 -0
  30. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/CSlbk.ini +5 -0
  31. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M/DAMETHOD.REG +0 -0
  32. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M/INFO.MTH +0 -0
  33. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1.UV +0 -0
  34. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1A.ch +0 -0
  35. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1A.npz +0 -0
  36. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1B.ch +0 -0
  37. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1B.npz +0 -0
  38. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1C.ch +0 -0
  39. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1C.npz +0 -0
  40. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1D.ch +0 -0
  41. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1D.npz +0 -0
  42. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1E.ch +0 -0
  43. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1E.npz +0 -0
  44. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1F.ch +0 -0
  45. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1F.npz +0 -0
  46. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1G.ch +0 -0
  47. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1G.npz +0 -0
  48. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1H.ch +0 -0
  49. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1H.npz +0 -0
  50. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DiagResults.REG +0 -0
  51. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/PMP1.AnalyticalResults.drvml +15 -0
  52. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/RUN.LOG +0 -0
  53. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/SAMPLE.XML +0 -0
  54. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/SAMPLE.XML.bak +0 -0
  55. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/WLS1.Sampler.scml +22 -0
  56. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq.macaml +1135 -0
  57. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq.txt +0 -0
  58. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq_MethHist.txt +0 -0
  59. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq_damethod.reg +0 -0
  60. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/da.macaml +1053 -0
  61. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/lcdiag.reg +0 -0
  62. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/sample.acaml +2294 -0
  63. pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/single.B +0 -0
  64. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/constants.py +14 -22
  65. pychemstation-0.10.5/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/RECALIB.MTH +0 -0
  66. pychemstation-0.10.5/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/rpthead.txt +63 -0
  67. pychemstation-0.10.5/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Limsinf.xml +0 -0
  68. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/out.txt +4673 -0
  69. pychemstation-0.10.4/tests/test_runs_integration.py → pychemstation-0.10.5/tests/test_integration.py +35 -19
  70. pychemstation-0.10.5/tests/test_method.py +118 -0
  71. pychemstation-0.10.4/tests/test_offline_integration.py → pychemstation-0.10.5/tests/test_offline.py +10 -2
  72. pychemstation-0.10.4/tests/test_online_integration.py → pychemstation-0.10.5/tests/test_online.py +15 -5
  73. pychemstation-0.10.5/tests/test_sequence.py +91 -0
  74. {pychemstation-0.10.4 → pychemstation-0.10.5}/uv.lock +4 -4
  75. pychemstation-0.10.4/pychemstation/control/controllers/__init__.py +0 -9
  76. pychemstation-0.10.4/pychemstation/control/controllers/devices/device.py +0 -49
  77. pychemstation-0.10.4/pychemstation/control/controllers/tables/ms.py +0 -24
  78. pychemstation-0.10.4/tests/__init__.py +0 -0
  79. pychemstation-0.10.4/tests/test_method.py +0 -63
  80. pychemstation-0.10.4/tests/test_sequence.py +0 -22
  81. {pychemstation-0.10.4 → pychemstation-0.10.5}/.gitlab-ci.yml +0 -0
  82. {pychemstation-0.10.4 → pychemstation-0.10.5}/CHANGELOG.md +0 -0
  83. {pychemstation-0.10.4 → pychemstation-0.10.5}/CONTRIBUTING.md +0 -0
  84. {pychemstation-0.10.4 → pychemstation-0.10.5}/LICENSE +0 -0
  85. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/index.html +0 -0
  86. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/analysis/base_spectrum.html +0 -0
  87. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/analysis/spec_utils.html +0 -0
  88. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/analysis/utils.html +0 -0
  89. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/analysis.html +0 -0
  90. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/control/chromatogram.html +0 -0
  91. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/control/hplc.html +0 -0
  92. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/control.html +0 -0
  93. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/generated.html +0 -0
  94. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/utils/chemstation.html +0 -0
  95. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/utils/constants.html +0 -0
  96. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/utils/hplc_param_types.html +0 -0
  97. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation/utils.html +0 -0
  98. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/pychemstation.html +0 -0
  99. {pychemstation-0.10.4 → pychemstation-0.10.5}/doc/search.js +0 -0
  100. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/__init__.py +0 -0
  101. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/analysis/__init__.py +0 -0
  102. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/analysis/base_spectrum.py +0 -0
  103. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/README.md +0 -0
  104. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/README.md +0 -0
  105. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/control/controllers/devices/__init__.py +0 -0
  106. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/generated/__init__.py +0 -0
  107. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/generated/dad_method.py +0 -0
  108. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/generated/pump_method.py +0 -0
  109. {pychemstation-0.10.4/pychemstation/control/controllers/tables → pychemstation-0.10.5/pychemstation/utils}/__init__.py +0 -0
  110. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/num_utils.py +0 -0
  111. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/parsing.py +0 -0
  112. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/pump_types.py +0 -0
  113. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/sequence_types.py +0 -0
  114. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/spec_utils.py +0 -0
  115. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/table_types.py +0 -0
  116. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation/utils/tray_types.py +0 -0
  117. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation.egg-info/PKG-INFO +0 -0
  118. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation.egg-info/SOURCES.txt +0 -0
  119. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation.egg-info/dependency_links.txt +0 -0
  120. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation.egg-info/requires.txt +0 -0
  121. {pychemstation-0.10.4 → pychemstation-0.10.5}/pychemstation.egg-info/top_level.txt +0 -0
  122. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/0_2025-03-15 19-14-35.PDF +0 -0
  123. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/ACQRES.REG +0 -0
  124. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/CSlbk.ini +0 -0
  125. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DA.M/DAMETHOD.REG +0 -0
  126. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DA.M/INFO.MTH +0 -0
  127. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DA.M/RECALIB.MTH +0 -0
  128. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DA.M/rpthead.txt +0 -0
  129. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1.UV +0 -0
  130. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1A.ch +0 -0
  131. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1A.npz +0 -0
  132. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1B.ch +0 -0
  133. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1B.npz +0 -0
  134. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1C.ch +0 -0
  135. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1C.npz +0 -0
  136. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1D.ch +0 -0
  137. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1D.npz +0 -0
  138. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1E.ch +0 -0
  139. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DAD1E.npz +0 -0
  140. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/DiagResults.REG +0 -0
  141. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/PMP1.AnalyticalResults.drvml +0 -0
  142. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/REPORT01.CSV +0 -0
  143. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/REPORT02.CSV +0 -0
  144. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/REPORT03.CSV +0 -0
  145. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/REPORT04.CSV +0 -0
  146. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/REPORT05.CSV +0 -0
  147. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/RUN.LOG +0 -0
  148. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/Report.TXT +0 -0
  149. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/Report00.CSV +0 -0
  150. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/Report01.xls +0 -0
  151. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/SAMPLE.XML +0 -0
  152. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/SAMPLE.XML.bak +0 -0
  153. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/WLS1.Sampler.scml +0 -0
  154. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/acq.macaml +0 -0
  155. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/acq.txt +0 -0
  156. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/acq_MethHist.txt +0 -0
  157. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/acq_damethod.reg +0 -0
  158. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/da.macaml +0 -0
  159. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/lcdiag.reg +0 -0
  160. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/sample.acaml +0 -0
  161. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/0_2025-03-15 19-14-35.D/single.B +0 -0
  162. {pychemstation-0.10.4/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M → pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M}/RECALIB.MTH +0 -0
  163. {pychemstation-0.10.4/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M → pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M}/rpthead.txt +0 -0
  164. {pychemstation-0.10.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D → pychemstation-0.10.5/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D}/Limsinf.xml +0 -0
  165. {pychemstation-0.10.4/pychemstation/utils → pychemstation-0.10.5/tests}/__init__.py +0 -0
  166. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_talk.mac +0 -0
  167. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/CSlbk.ini +0 -0
  168. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/ACQ.MS +0 -0
  169. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.ConfigXML.xml +0 -0
  170. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.MethodMetaData.xml +0 -0
  171. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.MethodXML.xml +0 -0
  172. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.ConfigXML.xml +0 -0
  173. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.MethodMetaData.xml +0 -0
  174. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.MethodXML.xml +0 -0
  175. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.ConfigXML.xml +0 -0
  176. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.MethodMetaData.xml +0 -0
  177. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.MethodXML.xml +0 -0
  178. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.ConfigXML.xml +0 -0
  179. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.MethodMetaData.xml +0 -0
  180. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.MethodXML.xml +0 -0
  181. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.PretreatXML.xml +0 -0
  182. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/DAMETHOD.REG +0 -0
  183. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/FIA.REG +0 -0
  184. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/INFO.MTH +0 -0
  185. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/INJECTOR.MTH +0 -0
  186. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/MassHunterIntegration.ini +0 -0
  187. {pychemstation-0.10.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M → pychemstation-0.10.5/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M}/RECALIB.MTH +0 -0
  188. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/RapidControl.InstrumentConfig.xml +0 -0
  189. {pychemstation-0.10.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M → pychemstation-0.10.5/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M}/rpthead.txt +0 -0
  190. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/smpl_pur.mth +0 -0
  191. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/Methods.Reg +0 -0
  192. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.B +0 -0
  193. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.LOG +0 -0
  194. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.S +0 -0
  195. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.Start +0 -0
  196. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/ACQRES.REG +0 -0
  197. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/CSlbk.ini +0 -0
  198. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/DAMETHOD.REG +0 -0
  199. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/INFO.MTH +0 -0
  200. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1.UV +0 -0
  201. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1A.ch +0 -0
  202. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1A.npz +0 -0
  203. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1B.ch +0 -0
  204. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1B.npz +0 -0
  205. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1C.ch +0 -0
  206. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1C.npz +0 -0
  207. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1D.ch +0 -0
  208. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1D.npz +0 -0
  209. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1E.ch +0 -0
  210. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1E.npz +0 -0
  211. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DiagResults.REG +0 -0
  212. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/PMP1.AnalyticalResults.drvml +0 -0
  213. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT01.CSV +0 -0
  214. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT02.CSV +0 -0
  215. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT03.CSV +0 -0
  216. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT04.CSV +0 -0
  217. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT05.CSV +0 -0
  218. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/RUN.LOG +0 -0
  219. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report.TXT +0 -0
  220. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report00.CSV +0 -0
  221. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report01.xls +0 -0
  222. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/SAMPLE.XML +0 -0
  223. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/SAMPLE.XML.bak +0 -0
  224. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/WLS1.Sampler.scml +0 -0
  225. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq.macaml +0 -0
  226. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq.txt +0 -0
  227. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq_MethHist.txt +0 -0
  228. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq_damethod.reg +0 -0
  229. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/da.macaml +0 -0
  230. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/hplc_testing 2025-03-27 17-13-47_run seq with new method.PDF +0 -0
  231. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/lcdiag.reg +0 -0
  232. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/sequence.acam_ +0 -0
  233. {pychemstation-0.10.4 → pychemstation-0.10.5}/tests/hplc_testing 2025-03-27 17-13-47/sequence.acaml +0 -0
  234. {pychemstation-0.10.4 → pychemstation-0.10.5}/update-lib.sh +0 -0
@@ -4,4 +4,6 @@
4
4
  .venv
5
5
  **/__pycache__/
6
6
  target
7
- .DS_Store
7
+ .DS_Store
8
+ env
9
+ venv
@@ -7,4 +7,8 @@ repos:
7
7
  - id: ruff
8
8
  args: [ --fix ]
9
9
  # Run the formatter.
10
- - id: ruff-format
10
+ - id: ruff-format
11
+ - repo: https://github.com/pre-commit/mirrors-mypy
12
+ rev: v1.15.0
13
+ hooks:
14
+ - id: mypy
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pychemstation
3
- Version: 0.10.4
3
+ Version: 0.10.5
4
4
  Summary: Library to interact with Chemstation software, primarily used in Hein lab
5
5
  Project-URL: Documentation, https://pychemstation-e5a086.gitlab.io/pychemstation.html
6
6
  Project-URL: Repository, https://gitlab.com/heingroup/device-api/pychemstation
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.10
12
12
  Classifier: Programming Language :: Python :: 3.11
13
13
  Classifier: Programming Language :: Python :: 3.12
14
14
  Requires-Python: >=3.10
15
- Requires-Dist: aghplctools>=4.8.8
15
+ Requires-Dist: aghplctools==4.8.6
16
16
  Requires-Dist: coverage>=7.6.1
17
17
  Requires-Dist: matplotlib>=3.7.5
18
18
  Requires-Dist: pandas>=2.0.3
@@ -35,8 +35,8 @@ Description-Content-Type: text/markdown
35
35
 
36
36
  [![PyPI Latest Release](https://img.shields.io/pypi/v/pychemstation.svg)](https://pypi.org/project/pychemstation/)
37
37
 
38
- > **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **>=3.10**, use
39
- > version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
38
+ > **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **3.9** use versions 0.**9**.x.
39
+ > If you are running Python **>=3.10**, use version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
40
40
  > is not guaranteed!
41
41
 
42
42
  Unofficial Python package to control Agilent Chemstation; we are not affiliated with Agilent.
@@ -4,8 +4,8 @@
4
4
 
5
5
  [![PyPI Latest Release](https://img.shields.io/pypi/v/pychemstation.svg)](https://pypi.org/project/pychemstation/)
6
6
 
7
- > **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **>=3.10**, use
8
- > version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
7
+ > **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **3.9** use versions 0.**9**.x.
8
+ > If you are running Python **>=3.10**, use version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
9
9
  > is not guaranteed!
10
10
 
11
11
  Unofficial Python package to control Agilent Chemstation; we are not affiliated with Agilent.
@@ -0,0 +1,377 @@
1
+ Local Rows
2
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
3
+ SaveSequence _SeqPath$, _SeqFile$
4
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
5
+ response$ = _MethFile$
6
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
7
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
8
+ Sleep 0.1
9
+ Print Rows
10
+ response$ = _MethFile$
11
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
12
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
13
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
14
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
15
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
16
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
17
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
18
+ response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
19
+ response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
20
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
21
+ SetObjHdrVal RCPMP1Method[1], Flow, 0.4
22
+ Sleep 1
23
+ Sleep 0.1
24
+ DownloadRCMethod PMP1
25
+ Sleep 0.1
26
+ Sleep 1
27
+ SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
28
+ Sleep 1
29
+ Sleep 0.1
30
+ DownloadRCMethod PMP1
31
+ Sleep 0.1
32
+ Sleep 1
33
+ SetObjHdrVal RCPMP1Method[1], PostTime_Time, 4
34
+ Sleep 1
35
+ Sleep 0.1
36
+ DownloadRCMethod PMP1
37
+ Sleep 0.1
38
+ Sleep 1
39
+ SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
40
+ Sleep 1
41
+ Sleep 0.1
42
+ DownloadRCMethod PMP1
43
+ Sleep 0.1
44
+ Sleep 1
45
+ SetObjHdrVal RCPMP1Method[1], StopTime_Time, 14
46
+ Sleep 1
47
+ Sleep 0.1
48
+ DownloadRCMethod PMP1
49
+ Sleep 0.1
50
+ Sleep 1
51
+ SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 22
52
+ Sleep 1
53
+ Sleep 0.1
54
+ DownloadRCMethod PMP1
55
+ Sleep 0.1
56
+ Sleep 1
57
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
58
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
59
+ Sleep 0.1
60
+ Print Rows
61
+ response$ = _MethFile$
62
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
63
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
64
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
65
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
66
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
67
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
68
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
69
+ response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
70
+ response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
71
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
72
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
73
+ response$ = _MethFile$
74
+ Sleep 0.1
75
+ DelTab RCPMP1Method[1], "Timetable"
76
+ Sleep 0.1
77
+ SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 5.0
78
+ Sleep 1
79
+ Sleep 0.1
80
+ DownloadRCMethod PMP1
81
+ Sleep 0.1
82
+ Sleep 1
83
+ SetObjHdrVal RCPMP1Method[1], Flow, 0.65
84
+ Sleep 1
85
+ Sleep 0.1
86
+ DownloadRCMethod PMP1
87
+ Sleep 0.1
88
+ Sleep 1
89
+ SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
90
+ Sleep 1
91
+ Sleep 0.1
92
+ DownloadRCMethod PMP1
93
+ Sleep 0.1
94
+ Sleep 1
95
+ SetObjHdrVal RCPMP1Method[1], StopTime_Time, 4.0
96
+ Sleep 1
97
+ Sleep 0.1
98
+ DownloadRCMethod PMP1
99
+ Sleep 0.1
100
+ Sleep 1
101
+ SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
102
+ Sleep 1
103
+ Sleep 0.1
104
+ DownloadRCMethod PMP1
105
+ Sleep 0.1
106
+ Sleep 1
107
+ SetObjHdrVal RCPMP1Method[1], PostTime_Time, 1.0
108
+ Sleep 1
109
+ Sleep 0.1
110
+ DownloadRCMethod PMP1
111
+ Sleep 0.1
112
+ Sleep 1
113
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
114
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
115
+ Sleep 0.1
116
+ Print Rows
117
+ Sleep 0.1
118
+ DelTab RCPMP1Method[1], "Timetable"
119
+ Sleep 0.1
120
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
121
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
122
+ NewTab RCPMP1Method[1], "Timetable"
123
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
124
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
125
+ Sleep 0.1
126
+ Print Rows
127
+ Sleep 0.1
128
+ InsTabRow RCPMP1Method[1], "Timetable"
129
+ Sleep 0.1
130
+ Sleep 0.1
131
+ NewColText RCPMP1Method[1], "Timetable", "Function", "SolventComposition"
132
+ Sleep 0.1
133
+ Sleep 0.1
134
+ NewColVal RCPMP1Method[1], "Timetable", "Time", 3.5
135
+ Sleep 0.1
136
+ Sleep 0.1
137
+ NewColVal RCPMP1Method[1], "Timetable", "SolventCompositionPumpChannel2_Percentage", 100.0
138
+ Sleep 0.1
139
+ Sleep 0.1
140
+ InsTabRow RCPMP1Method[1], "Timetable"
141
+ Sleep 0.1
142
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
143
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
144
+ Sleep 0.1
145
+ Print Rows
146
+ Sleep 0.1
147
+ SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
148
+ Sleep 0.1
149
+ Sleep 0.1
150
+ NewColVal RCPMP1Method[1], "Timetable", "FlowFlow", 0.65
151
+ Sleep 0.1
152
+ Sleep 0.1
153
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.65
154
+ Sleep 0.1
155
+ Sleep 1
156
+ Sleep 0.1
157
+ DownloadRCMethod PMP1
158
+ Sleep 0.1
159
+ Sleep 1
160
+ Local Rows
161
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
162
+ SaveSequence _SeqPath$, _SeqFile$
163
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
164
+ response$ = _MethFile$
165
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
166
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
167
+ Sleep 0.1
168
+ Print Rows
169
+ response$ = _MethFile$
170
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
171
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
172
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
173
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
174
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
175
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
176
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
177
+ response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
178
+ response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
179
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
180
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
181
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
182
+ Sleep 0.1
183
+ Print Rows
184
+ Sleep 0.1
185
+ DelTab RCPMP1Method[1], "Timetable"
186
+ Sleep 0.1
187
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
188
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
189
+ NewTab RCPMP1Method[1], "Timetable"
190
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
191
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
192
+ Sleep 0.1
193
+ Print Rows
194
+ Sleep 0.1
195
+ InsTabRow RCPMP1Method[1], "Timetable"
196
+ Sleep 0.1
197
+ Sleep 0.1
198
+ NewColText RCPMP1Method[1], "Timetable", "Function", "SolventComposition"
199
+ Sleep 0.1
200
+ Sleep 0.1
201
+ NewColVal RCPMP1Method[1], "Timetable", "Time", 5
202
+ Sleep 0.1
203
+ Sleep 0.1
204
+ NewColVal RCPMP1Method[1], "Timetable", "SolventCompositionPumpChannel2_Percentage", 22
205
+ Sleep 0.1
206
+ Sleep 0.1
207
+ InsTabRow RCPMP1Method[1], "Timetable"
208
+ Sleep 0.1
209
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
210
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
211
+ Sleep 0.1
212
+ Print Rows
213
+ Sleep 0.1
214
+ SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
215
+ Sleep 0.1
216
+ Sleep 0.1
217
+ NewColVal RCPMP1Method[1], "Timetable", "FlowFlow", 0.2
218
+ Sleep 0.1
219
+ Sleep 0.1
220
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.2
221
+ Sleep 0.1
222
+ Sleep 1
223
+ Sleep 0.1
224
+ DownloadRCMethod PMP1
225
+ Sleep 0.1
226
+ Sleep 1
227
+ Sleep 0.1
228
+ InsTabRow RCPMP1Method[1], "Timetable"
229
+ Sleep 0.1
230
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
231
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
232
+ Sleep 0.1
233
+ Print Rows
234
+ Sleep 0.1
235
+ SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "SolventComposition"
236
+ Sleep 0.1
237
+ Sleep 0.1
238
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "Time", 10
239
+ Sleep 0.1
240
+ Sleep 0.1
241
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "SolventCompositionPumpChannel2_Percentage", 78
242
+ Sleep 0.1
243
+ Sleep 1
244
+ Sleep 0.1
245
+ DownloadRCMethod PMP1
246
+ Sleep 0.1
247
+ Sleep 1
248
+ Sleep 0.1
249
+ InsTabRow RCPMP1Method[1], "Timetable"
250
+ Sleep 0.1
251
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
252
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
253
+ Sleep 0.1
254
+ Print Rows
255
+ Sleep 0.1
256
+ SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
257
+ Sleep 0.1
258
+ Sleep 0.1
259
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.8
260
+ Sleep 0.1
261
+ Sleep 0.1
262
+ SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "Time", 10
263
+ Sleep 0.1
264
+ Sleep 1
265
+ Sleep 0.1
266
+ DownloadRCMethod PMP1
267
+ Sleep 0.1
268
+ Sleep 1
269
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
270
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
271
+ Sleep 0.1
272
+ Print Rows
273
+ response$ = _MethFile$
274
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
275
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
276
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
277
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
278
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
279
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
280
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "FlowFlow")
281
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "SolventCompositionPumpChannel2_Percentage")
282
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "Time")
283
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "FlowFlow")
284
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "SolventCompositionPumpChannel2_Percentage")
285
+ response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "Time")
286
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
287
+ response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
288
+ response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
289
+ response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
290
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
291
+ response$ = _MethFile$
292
+ Sleep 0.1
293
+ DelTab RCPMP1Method[1], "Timetable"
294
+ Sleep 0.1
295
+ SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 5.0
296
+ Sleep 1
297
+ Sleep 0.1
298
+ DownloadRCMethod PMP1
299
+ Sleep 0.1
300
+ Sleep 1
301
+ SetObjHdrVal RCPMP1Method[1], Flow, 0.65
302
+ Sleep 1
303
+ Sleep 0.1
304
+ DownloadRCMethod PMP1
305
+ Sleep 0.1
306
+ Sleep 1
307
+ SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
308
+ Sleep 1
309
+ Sleep 0.1
310
+ DownloadRCMethod PMP1
311
+ Sleep 0.1
312
+ Sleep 1
313
+ SetObjHdrVal RCPMP1Method[1], StopTime_Time, 4.0
314
+ Sleep 1
315
+ Sleep 0.1
316
+ DownloadRCMethod PMP1
317
+ Sleep 0.1
318
+ Sleep 1
319
+ SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
320
+ Sleep 1
321
+ Sleep 0.1
322
+ DownloadRCMethod PMP1
323
+ Sleep 0.1
324
+ Sleep 1
325
+ SetObjHdrVal RCPMP1Method[1], PostTime_Time, 1.0
326
+ Sleep 1
327
+ Sleep 0.1
328
+ DownloadRCMethod PMP1
329
+ Sleep 0.1
330
+ Sleep 1
331
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
332
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
333
+ Sleep 0.1
334
+ Print Rows
335
+ Sleep 0.1
336
+ DelTab RCPMP1Method[1], "Timetable"
337
+ Sleep 0.1
338
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
339
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
340
+ Local Rows
341
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
342
+ SaveSequence _SeqPath$, _SeqFile$
343
+ Local Rows
344
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
345
+ SaveSequence _SeqPath$, _SeqFile$
346
+ Local Rows
347
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
348
+ SaveSequence _SeqPath$, _SeqFile$
349
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
350
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
351
+ response$ = _MethFile$
352
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
353
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
354
+ Local Rows
355
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
356
+ SaveSequence _SeqPath$, _SeqFile$
357
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
358
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
359
+ response$ = _MethFile$
360
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
361
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
362
+ Local Rows
363
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
364
+ SaveSequence _SeqPath$, _SeqFile$
365
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
366
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
367
+ response$ = _MethFile$
368
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
369
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
370
+ Local Rows
371
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
372
+ SaveSequence _SeqPath$, _SeqFile$
373
+ SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
374
+ LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
375
+ response$ = _MethFile$
376
+ Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
377
+ response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
@@ -3,6 +3,7 @@
3
3
  import os
4
4
  import time
5
5
  from dataclasses import dataclass
6
+ from typing import Dict
6
7
 
7
8
  import numpy as np
8
9
 
@@ -114,3 +115,22 @@ class AgilentChannelChromatogramData:
114
115
  F: AgilentHPLCChromatogram
115
116
  G: AgilentHPLCChromatogram
116
117
  H: AgilentHPLCChromatogram
118
+
119
+ @classmethod
120
+ def from_dict(cls, chroms: Dict[str, AgilentHPLCChromatogram]):
121
+ keys = chroms.keys()
122
+ class_keys = vars(AgilentChannelChromatogramData)["__annotations__"].keys()
123
+ if set(class_keys) == set(keys):
124
+ return AgilentChannelChromatogramData(
125
+ A=chroms["A"],
126
+ B=chroms["B"],
127
+ C=chroms["C"],
128
+ D=chroms["D"],
129
+ E=chroms["E"],
130
+ F=chroms["F"],
131
+ G=chroms["G"],
132
+ H=chroms["H"],
133
+ )
134
+ else:
135
+ err = f"{keys} don't match {class_keys}"
136
+ raise KeyError(err)