FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Rework reference level code to support readback and prevent clobbering · python-ivi/python-ivi@56beddb · GitHub

This repository was archived by the owner on Feb 2, 2026. It is now read-only.
/ python-ivi Public archive

Commit 56beddb

Browse files
committed
Rework reference level code to support readback and prevent clobbering
1 parent e31af7b commit 56beddb

1 file changed

Lines changed: 27 additions & 3 deletions

File tree

‎ivi/agilent/agilentBaseScope.py‎

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1388,44 +1388,68 @@ def _measurement_initiate(self):
13881388
self._write(":digitize")
13891389
self._set_cache_valid(False, 'trigger_continuous')
13901390

1391+
def _get_reference_levels(self):
1392+
if not self._driver_operation_simulate and not self._get_cache_valid():
1393+
thresh, mode, high, middle, low = self._ask(":measure:define? thresholds").split(',')
1394+
if mode == 'PERC':
1395+
self._reference_level_high = float(high)
1396+
self._reference_level_low = float(low)
1397+
self._reference_level_middle = float(middle)
1398+
self._set_cache_valid()
1399+
self._set_cache_valid('reference_level_high')
1400+
self._set_cache_valid('reference_level_low')
1401+
self._set_cache_valid('reference_level_middle')
1402+
13911403
def _get_reference_level_high(self):
1404+
if not self._driver_operation_simulate and not self._get_cache_valid():
1405+
self._get_reference_levels()
13921406
return self._reference_level_high
13931407

13941408
def _set_reference_level_high(self, value):
13951409
value = float(value)
13961410
if value < 5: value = 5
13971411
if value > 95: value = 95
1412+
if not self._driver_operation_simulate and not self._get_cache_valid():
1413+
self._get_reference_levels()
13981414
self._reference_level_high = value
13991415
if not self._driver_operation_simulate:
1400-
self._write(":measure:define thresholds, %e, %e, %e" %
1416+
self._write(":measure:define thresholds, percent, %e, %e, %e" %
14011417
(self._reference_level_high,
14021418
self._reference_level_middle,
14031419
self._reference_level_low))
14041420

14051421
def _get_reference_level_low(self):
1422+
if not self._driver_operation_simulate and not self._get_cache_valid():
1423+
self._get_reference_levels()
14061424
return self._reference_level_low
14071425

14081426
def _set_reference_level_low(self, value):
14091427
value = float(value)
14101428
if value < 5: value = 5
14111429
if value > 95: value = 95
1430+
if not self._driver_operation_simulate and not self._get_cache_valid():
1431+
self._get_reference_levels()
14121432
self._reference_level_low = value
14131433
if not self._driver_operation_simulate:
1414-
self._write(":measure:define thresholds, %e, %e, %e" %
1434+
self._write(":measure:define thresholds, percent, %e, %e, %e" %
14151435
(self._reference_level_high,
14161436
self._reference_level_middle,
14171437
self._reference_level_low))
14181438

14191439
def _get_reference_level_middle(self):
1440+
if not self._driver_operation_simulate and not self._get_cache_valid():
1441+
self._get_reference_levels()
14201442
return self._reference_level_middle
14211443

14221444
def _set_reference_level_middle(self, value):
14231445
value = float(value)
14241446
if value < 5: value = 5
14251447
if value > 95: value = 95
1448+
if not self._driver_operation_simulate and not self._get_cache_valid():
1449+
self._get_reference_levels()
14261450
self._reference_level_middle = value
14271451
if not self._driver_operation_simulate:
1428-
self._write(":measure:define thresholds, %e, %e, %e" %
1452+
self._write(":measure:define thresholds, percent, %e, %e, %e" %
14291453
(self._reference_level_high,
14301454
self._reference_level_middle,
14311455
self._reference_level_low))

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL