|
6 | 6 | import xmltodict |
7 | 7 |
|
8 | 8 | from murfey.client.context import Context |
9 | | -from murfey.client.contexts.spa import _get_source |
| 9 | +from murfey.client.contexts.spa import _file_transferred_to, _get_source |
10 | 10 | from murfey.client.instance_environment import MurfeyInstanceEnvironment, SampleInfo |
11 | 11 | from murfey.util import authorised_requests, capture_post, get_machine_config_client |
12 | | -from murfey.util.spa_metadata import FoilHoleInfo, get_grid_square_atlas_positions |
| 12 | +from murfey.util.spa_metadata import ( |
| 13 | + FoilHoleInfo, |
| 14 | + get_grid_square_atlas_positions, |
| 15 | + grid_square_data, |
| 16 | +) |
13 | 17 |
|
14 | 18 | logger = logging.getLogger("murfey.client.contexts.spa_metadata") |
15 | 19 |
|
@@ -228,6 +232,40 @@ def post_transfer( |
228 | 232 | ) |
229 | 233 | return |
230 | 234 | visitless_source = str(visitless_source_images_dirs[-1]) |
| 235 | + |
| 236 | + if fh_positions: |
| 237 | + gs_url = f"{str(environment.url.geturl())}/sessions/{environment.murfey_session}/grid_square/{gs_name}" |
| 238 | + gs_info = grid_square_data( |
| 239 | + transferred_file, |
| 240 | + int(gs_name), |
| 241 | + ) |
| 242 | + metadata_source = Path( |
| 243 | + ( |
| 244 | + "/".join(Path(visitless_source).parts[:-2]) |
| 245 | + + f"/{environment.visit}/" |
| 246 | + + Path(visitless_source).parts[-2] |
| 247 | + )[1:] |
| 248 | + ) |
| 249 | + image_path = ( |
| 250 | + _file_transferred_to( |
| 251 | + environment, metadata_source, Path(gs_info.image) |
| 252 | + ) |
| 253 | + if gs_info.image |
| 254 | + else "" |
| 255 | + ) |
| 256 | + capture_post( |
| 257 | + gs_url, |
| 258 | + json={ |
| 259 | + "tag": visitless_source, |
| 260 | + "readout_area_x": gs_info.readout_area_x, |
| 261 | + "readout_area_y": gs_info.readout_area_y, |
| 262 | + "thumbnail_size_x": gs_info.thumbnail_size_x, |
| 263 | + "thumbnail_size_y": gs_info.thumbnail_size_y, |
| 264 | + "pixel_size": gs_info.pixel_size, |
| 265 | + "image": str(image_path), |
| 266 | + }, |
| 267 | + ) |
| 268 | + |
231 | 269 | for fh, fh_data in fh_positions.items(): |
232 | 270 | capture_post( |
233 | 271 | f"{str(environment.url.geturl())}/sessions/{environment.murfey_session}/grid_square/{gs_name}/foil_hole", |
|
0 commit comments