symetrie-hexapod 0.16.1__tar.gz → 0.16.3__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.
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/PKG-INFO +1 -1
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/pyproject.toml +1 -1
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/symetrie_hexapod/cgse_services.py +5 -20
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/.gitignore +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/README.md +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/__init__.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/__init__.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/alpha.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/dynalpha.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/hexapod.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/hexapod_ui.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran.yaml +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran_cs.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran_protocol.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran_ui.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/pmac.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/pmac_regex.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna.yaml +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna_cs.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna_protocol.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna_sim.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna_ui.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/punaplus.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda.yaml +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_cs.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_devif.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_protocol.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_ui.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/symetrie_hexapod/__init__.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/symetrie_hexapod/cgse_explore.py +0 -0
- {symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/symetrie_hexapod/settings.yaml +0 -0
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import subprocess
|
|
2
2
|
import sys
|
|
3
3
|
import textwrap
|
|
4
|
-
from pathlib import Path
|
|
5
4
|
from typing import Annotated
|
|
6
|
-
from typing import TextIO
|
|
7
5
|
|
|
8
6
|
import rich
|
|
9
7
|
import typer
|
|
10
8
|
|
|
11
|
-
from egse.env import get_log_file_location
|
|
12
9
|
from egse.system import all_logging_disabled
|
|
10
|
+
from egse.system import redirect_output_to_log
|
|
13
11
|
|
|
14
12
|
puna = typer.Typer(name="puna", help="PUNA Positioning Hexapod, Symétrie")
|
|
15
13
|
|
|
@@ -18,25 +16,12 @@ zonda = typer.Typer(name="zonda", help="ZONDA Positioning Hexapod, Symétrie")
|
|
|
18
16
|
joran = typer.Typer(name="joran", help="JORAN Positioning Hexapod, Symétrie")
|
|
19
17
|
|
|
20
18
|
|
|
21
|
-
def redirect_output_to(output_fn: str) -> TextIO:
|
|
22
|
-
"""Open file in the log folder where process output will be redirected."""
|
|
23
|
-
|
|
24
|
-
location = get_log_file_location()
|
|
25
|
-
output_path = Path(location, output_fn).expanduser()
|
|
26
|
-
|
|
27
|
-
rich.print(f"Output will be redirected to {output_path!s}")
|
|
28
|
-
|
|
29
|
-
out = open(output_path, "w")
|
|
30
|
-
|
|
31
|
-
return out
|
|
32
|
-
|
|
33
|
-
|
|
34
19
|
def start_hexapod_cs_process(device_name, device_id, simulator):
|
|
35
20
|
"""Generic function to start the hexapod control server in the background."""
|
|
36
21
|
|
|
37
22
|
rich.print(f"Starting the {device_name} hexapod control server for {device_id} – {simulator = }")
|
|
38
23
|
|
|
39
|
-
out =
|
|
24
|
+
out = redirect_output_to_log(f".{device_name.lower()}_cs.{device_id.lower()}.start.log")
|
|
40
25
|
|
|
41
26
|
cmd = [sys.executable, "-m", f"egse.hexapod.symetrie.{device_name.lower()}_cs", "start", device_id]
|
|
42
27
|
if simulator:
|
|
@@ -50,7 +35,7 @@ def stop_hexapod_cs_process(device_name, device_id):
|
|
|
50
35
|
|
|
51
36
|
rich.print(f"Terminating hexapod {device_name} control server for {device_id}...")
|
|
52
37
|
|
|
53
|
-
out =
|
|
38
|
+
out = redirect_output_to_log(f".{device_name.lower()}_cs.{device_id.lower()}.stop.log")
|
|
54
39
|
|
|
55
40
|
cmd = [sys.executable, "-m", f"egse.hexapod.symetrie.{device_name.lower()}_cs", "stop", device_id]
|
|
56
41
|
|
|
@@ -114,7 +99,7 @@ def start_puna_sim(device_id: str):
|
|
|
114
99
|
|
|
115
100
|
rich.print("Starting service PUNA Simulator")
|
|
116
101
|
|
|
117
|
-
out =
|
|
102
|
+
out = redirect_output_to_log(f".puna_sim.{device_id.lower()}.start.log")
|
|
118
103
|
|
|
119
104
|
subprocess.Popen(
|
|
120
105
|
[sys.executable, "-m", "egse.hexapod.symetrie.puna_sim", "start", device_id],
|
|
@@ -130,7 +115,7 @@ def stop_puna_sim(device_id: str):
|
|
|
130
115
|
"""Stop the PUNA Hexapod Simulator."""
|
|
131
116
|
rich.print("Terminating the PUNA simulator.")
|
|
132
117
|
|
|
133
|
-
out =
|
|
118
|
+
out = redirect_output_to_log(f".puna_sim.{device_id.lower()}.stop.log")
|
|
134
119
|
|
|
135
120
|
subprocess.Popen(
|
|
136
121
|
[sys.executable, "-m", "egse.hexapod.symetrie.puna_sim", "stop", device_id],
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/joran_protocol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/puna_protocol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_devif.py
RENAMED
|
File without changes
|
{symetrie_hexapod-0.16.1 → symetrie_hexapod-0.16.3}/src/egse/hexapod/symetrie/zonda_protocol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|