zaber-motion 7.9.1__py3-none-win_arm64.whl → 7.10.0__py3-none-win_arm64.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.
zaber_motion/library.py CHANGED
@@ -154,7 +154,7 @@ class Library:
154
154
  """
155
155
  request = dto.CheckVersionRequest(
156
156
  host="py",
157
- version="7.9.1",
157
+ version="7.10.0",
158
158
  )
159
159
  call_sync("library/check_version", request)
160
160
 
@@ -175,6 +175,7 @@ class Autofocus:
175
175
  Moves the focus axis continuously maintaining focus.
176
176
  Starts the autofocus control loop.
177
177
  Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.
178
+ Use WaitUntilIdle of the focus axis to wait for the loop to stop and handle potential errors.
178
179
  """
179
180
  request = dto.AutofocusFocusRequest(
180
181
  provider_id=self.provider_id,
@@ -192,6 +193,7 @@ class Autofocus:
192
193
  Moves the focus axis continuously maintaining focus.
193
194
  Starts the autofocus control loop.
194
195
  Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.
196
+ Use WaitUntilIdle of the focus axis to wait for the loop to stop and handle potential errors.
195
197
  """
196
198
  request = dto.AutofocusFocusRequest(
197
199
  provider_id=self.provider_id,
@@ -234,6 +236,48 @@ class Autofocus:
234
236
  )
235
237
  await call_async("autofocus/stop_focus_loop", request)
236
238
 
239
+ def is_busy(
240
+ self
241
+ ) -> bool:
242
+ """
243
+ Returns bool indicating whether the focus axis is busy.
244
+ Can be used to determine if the focus loop is running.
245
+
246
+ Returns:
247
+ True if the axis is currently executing a motion command.
248
+ """
249
+ request = dto.AxisEmptyRequest(
250
+ interface_id=self.focus_axis.device.connection.interface_id,
251
+ device=self.focus_axis.device.device_address,
252
+ axis=self.focus_axis.axis_number,
253
+ )
254
+ response = call(
255
+ "device/is_busy",
256
+ request,
257
+ dto.BoolResponse.from_binary)
258
+ return response.value
259
+
260
+ async def is_busy_async(
261
+ self
262
+ ) -> bool:
263
+ """
264
+ Returns bool indicating whether the focus axis is busy.
265
+ Can be used to determine if the focus loop is running.
266
+
267
+ Returns:
268
+ True if the axis is currently executing a motion command.
269
+ """
270
+ request = dto.AxisEmptyRequest(
271
+ interface_id=self.focus_axis.device.connection.interface_id,
272
+ device=self.focus_axis.device.device_address,
273
+ axis=self.focus_axis.axis_number,
274
+ )
275
+ response = await call_async(
276
+ "device/is_busy",
277
+ request,
278
+ dto.BoolResponse.from_binary)
279
+ return response.value
280
+
237
281
  def get_limit_min(
238
282
  self,
239
283
  unit: LengthUnits = Units.NATIVE
zaber_motion/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "7.9.1"
1
+ __version__ = "7.10.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zaber_motion
3
- Version: 7.9.1
3
+ Version: 7.10.0
4
4
  Summary: An official library for communicating with Zaber devices.
5
5
  Author-email: "Zaber Technologies Inc." <contact@zaber.com>
6
6
  License: The MIT License (MIT)
@@ -9,13 +9,13 @@ zaber_motion/call.py,sha256=X8iXJdlO1AvnMeDFmKXEPY8UFQWn8EXZmoXzcWO_ihc,5404
9
9
  zaber_motion/convert_exception.py,sha256=0ANPUmugxDvCGMURPN8Lqyi-3cU80L323xrsF19wbIk,8625
10
10
  zaber_motion/dto_object.py,sha256=TrwKMn_dbeh4DnCToS507G5eRJiW0_ZcGj9Q5RaSjqY,377
11
11
  zaber_motion/events.py,sha256=8UB_4SZz3HDb8VqborlHQGt7w0Nd11rEYblbVQxyckE,3510
12
- zaber_motion/library.py,sha256=6c8xc9TkEqYeoWcNCVV7TIRU98uKYVWsYT60E2ACgkA,5096
12
+ zaber_motion/library.py,sha256=8ksFvPeZ-Ie8eWMOc3DOCXfMmjiWwmRRsaIHXpAnN8A,5097
13
13
  zaber_motion/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
14
  zaber_motion/serialization.py,sha256=0yLY0dA7XRjMAlI-wr92arZ6yRO97CyC_Rzc9BBHJRk,1019
15
15
  zaber_motion/tools.py,sha256=ZI8xYDa6SFlMghP2qklV73Z0TJcezC6trdAAXVI6PoM,2291
16
16
  zaber_motion/unit_table.py,sha256=DtphJjbzD1LSHpd4-idwIE2Dif89L7RrmeQI3LkOp40,2583
17
17
  zaber_motion/units.py,sha256=h1sEuCQR0q8SeCdWd2V8X62VZJBxMda9Kef724f6yc0,11059
18
- zaber_motion/version.py,sha256=JXlGAI48rWu-8jLsnqexAyGdEYk0cachPTj02RUk-LY,23
18
+ zaber_motion/version.py,sha256=S0DPRqTGKADY8WuRS2n7_175u2iZSeVNv5umMhe_EAY,24
19
19
  zaber_motion/ascii/__init__.py,sha256=9RFjxHOckdwD6DlAvmVfpWhR1U9-lWyU1t3EE0C2Glc,4921
20
20
  zaber_motion/ascii/all_axes.py,sha256=KEynCocZ6wPUur7xgA7KUyyLWgsCqrsx7zDoMfVYeRM,11135
21
21
  zaber_motion/ascii/axis.py,sha256=O5nZ0xIG_vRYMLZcEB_yV7UWi0XHtn4NmfBlh0QFtkQ,59284
@@ -469,7 +469,7 @@ zaber_motion/gcode/__init__.py,sha256=mzkbRF4WtC2j1jiyxWkLOLVFjDZZP2GXiGG8Y4dtjo
469
469
  zaber_motion/gcode/offline_translator.py,sha256=z1-0Dz1QoeSnDp47b5xGc6esIs0KVheoOY2nM7o34mU,12519
470
470
  zaber_motion/gcode/translator.py,sha256=DpS0H1uU9hI55auXh_P8wv8luu7vmmkKLQuq3YudX_4,13259
471
471
  zaber_motion/microscopy/__init__.py,sha256=B1nfWsalhZC2iZZR65YCu-v1gzI0_A0mpebMEgexnf8,1030
472
- zaber_motion/microscopy/autofocus.py,sha256=Dsj5zFx5IPFJbFpgMMle8-LnGUuhRD_n8Y6xdltbLmg,22760
472
+ zaber_motion/microscopy/autofocus.py,sha256=t8hQJuLv7QBnvLIRHLsCqjuGMw_gKT4wU_B8cPSBeEA,24360
473
473
  zaber_motion/microscopy/camera_trigger.py,sha256=62gjhmN1bkmyDguiXIx3Ur35OZz_KHzDLahBnpeaX3A,3570
474
474
  zaber_motion/microscopy/filter_changer.py,sha256=puV-jVg7PrtHT2ixWQFR1jW2HNRRrnJdHOjnd3ffv9k,4818
475
475
  zaber_motion/microscopy/illuminator.py,sha256=w63vgAmZlZmse_bIsEmglg899WkqbrvD_y6j5Pz7ATQ,4290
@@ -480,9 +480,9 @@ zaber_motion/microscopy/wdi_autofocus_provider.py,sha256=bg5MaP1cvvPGX8kFMqfXROv
480
480
  zaber_motion/product/__init__.py,sha256=ZGZzfMmsd1ZWwLk0SZ3Ac1Une88SZQHuuzEFGgd6ork,538
481
481
  zaber_motion/product/process.py,sha256=IRHDUcQZItJSGIhW20KTiG4KoHxgzheqLUYSn-rwNnQ,28276
482
482
  zaber_motion/product/process_controller.py,sha256=89s_7EQ5RWPjXZ1krDbOt7oc87wSB-2SRHDoiVCE-L0,4319
483
- zaber_motion-7.9.1.dist-info/licenses/LICENSE.txt,sha256=H7YIgjgmcE_L-pfvZTWUoLrk7p0LiiKQh5_oeIWux-k,111363
484
- zaber_motion_bindings/zaber-motion-core-windows-arm64.dll,sha256=0WQMzFNS3LKs5uT6ypuZvlzKvF9e56IIvyoAlaF9s8c,14420480
485
- zaber_motion-7.9.1.dist-info/METADATA,sha256=YHaH5DfqGRX-YS1RRh8xtSnZF9vitch5I1zV5ssroeY,129838
486
- zaber_motion-7.9.1.dist-info/WHEEL,sha256=PtZ7_1TP6Cu1E5x_voSGj5l6q0pu2rBD8e6tfv65a50,97
487
- zaber_motion-7.9.1.dist-info/top_level.txt,sha256=ypgkPvPad6Oge50CT6unnvxCEliKUB6olL6CUUER1SA,51
488
- zaber_motion-7.9.1.dist-info/RECORD,,
483
+ zaber_motion-7.10.0.dist-info/licenses/LICENSE.txt,sha256=H7YIgjgmcE_L-pfvZTWUoLrk7p0LiiKQh5_oeIWux-k,111363
484
+ zaber_motion_bindings/zaber-motion-core-windows-arm64.dll,sha256=ohkdsr3wxWXG2_E4kKDLCjEzF3jFp00UQ7B8JCxhvgI,14422016
485
+ zaber_motion-7.10.0.dist-info/METADATA,sha256=sQwM6Obk7HtseebHCUfeqnkCPlhDmsywpLBulN7dsyg,129839
486
+ zaber_motion-7.10.0.dist-info/WHEEL,sha256=PtZ7_1TP6Cu1E5x_voSGj5l6q0pu2rBD8e6tfv65a50,97
487
+ zaber_motion-7.10.0.dist-info/top_level.txt,sha256=ypgkPvPad6Oge50CT6unnvxCEliKUB6olL6CUUER1SA,51
488
+ zaber_motion-7.10.0.dist-info/RECORD,,