Skip to content

Commit c8d348e

Browse files
committed
Avoid close copy of FoilHole object
1 parent 1acce4d commit c8d348e

File tree

2 files changed

+9
-19
lines changed

2 files changed

+9
-19
lines changed

src/murfey/client/contexts/spa.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828

2929

3030
class FoilHole(NamedTuple):
31-
session_id: int
3231
id: int
3332
grid_square_id: int
3433
x_location: Optional[float] = None
@@ -252,7 +251,6 @@ def _foil_hole_data(
252251
return FoilHole(
253252
id=foil_hole,
254253
grid_square_id=grid_square,
255-
session_id=session_id,
256254
x_location=float(pix["c:x"]),
257255
y_location=float(pix["c:y"]),
258256
x_stage_position=float(stage["c:X"]),
@@ -268,7 +266,7 @@ def _foil_hole_data(
268266
logger.warning(
269267
f"Foil hole positions could not be determined from metadata file {xml_path} for foil hole {foil_hole}"
270268
)
271-
return FoilHole(id=foil_hole, grid_square_id=grid_square, session_id=session_id)
269+
return FoilHole(id=foil_hole, grid_square_id=grid_square)
272270

273271

274272
def _get_source(file_path: Path, environment: MurfeyInstanceEnvironment) -> Path | None:

src/murfey/client/contexts/spa_metadata.py

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
import logging
22
from pathlib import Path
3-
from typing import Dict, NamedTuple, Optional
3+
from typing import Dict, Optional
44

55
import requests
66
import xmltodict
77

88
from murfey.client.context import Context
9-
from murfey.client.contexts.spa import _get_grid_square_atlas_positions, _get_source
9+
from murfey.client.contexts.spa import (
10+
FoilHole,
11+
_get_grid_square_atlas_positions,
12+
_get_source,
13+
)
1014
from murfey.client.instance_environment import MurfeyInstanceEnvironment, SampleInfo
1115
from murfey.util import authorised_requests, capture_post, get_machine_config_client
1216

@@ -15,20 +19,6 @@
1519
requests.get, requests.post, requests.put, requests.delete = authorised_requests()
1620

1721

18-
class FoilHole(NamedTuple):
19-
x_location: int
20-
y_location: int
21-
diameter: int
22-
x_stage_position: Optional[float] = None
23-
y_stage_position: Optional[float] = None
24-
readout_area_x: Optional[int] = None
25-
readout_area_y: Optional[int] = None
26-
thumbnail_size_x: Optional[int] = None
27-
thumbnail_size_y: Optional[int] = None
28-
pixel_size: Optional[float] = None
29-
image: str = ""
30-
31-
3222
def _foil_hole_positions(xml_path: Path, grid_square: int) -> Dict[str, FoilHole]:
3323
with open(xml_path, "r") as xml:
3424
for_parsing = xml.read()
@@ -65,6 +55,8 @@ def _foil_hole_positions(xml_path: Path, grid_square: int) -> Dict[str, FoilHole
6555
stage = fh_block["b:value"]["StagePosition"]
6656
diameter = fh_block["b:value"]["PixelWidthHeight"]["c:width"]
6757
foil_holes[fh_block["b:key"]] = FoilHole(
58+
id=int(fh_block["b:key"]),
59+
grid_square_id=grid_square,
6860
x_location=int(float(stage["c:x"])),
6961
y_location=int(float(stage["c:y"])),
7062
x_stage_position=float(stage["c:X"]),

0 commit comments

Comments
 (0)