From 2605d22eecf471723c04d6ee3865ec7f36f87a29 Mon Sep 17 00:00:00 2001
From: "FR@29iduser" <rodolakis@anl.gov>
Date: Mon, 26 Sep 2022 09:33:23 -0500
Subject: [PATCH] fixed scan clearing,  scanXAS still doesn't move ID

---
 build/lib/iexcode/instruments/scanRecord.py | 7 +++----
 iexcode/instruments/scanRecord.py           | 7 +++----
 2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/build/lib/iexcode/instruments/scanRecord.py b/build/lib/iexcode/instruments/scanRecord.py
index b836c16..bbf6676 100644
--- a/build/lib/iexcode/instruments/scanRecord.py
+++ b/build/lib/iexcode/instruments/scanRecord.py
@@ -411,7 +411,7 @@ class ScanRecord:
         kwargs.setdefault('scan_dim',1)
 
         scan_pv = self.ioc+"scan"+str(kwargs['scan_dim'])
-        caput(scan_pv+".CMND",3)        # Clear all Positionners
+        caput(scan_pv+".CMND",4)        # Clear all Positioners,etc
         
         if verbose:
             print("\nAll extra positionners cleared")    
@@ -479,9 +479,6 @@ class ScanRecord:
         kwargs.setdefault('positioner_settling_time',default_positioner_settling_time)
         kwargs.setdefault('debug',False)
 
-        if 'trigger_dictionary' in kwargs:
-            self.trigger_dictionary = kwargs['trigger_dictionary']
-
         self.progress(kwargs['scan_dim'])
     
         scan_pv = self.ioc+"scan"+str(kwargs['scan_dim'])
@@ -505,6 +502,8 @@ class ScanRecord:
         self.detector_settling_time(**kwargs)
         self.positioner_settling_time(**kwargs)
         
+        if 'trigger_dictionary' in kwargs:
+            self.trigger_dictionary = kwargs['trigger_dictionary']
         self.triggers_set(kwargs['scan_dim'],self.trigger_dictionary)
 
         #checking that PVs and positioner limits are good
diff --git a/iexcode/instruments/scanRecord.py b/iexcode/instruments/scanRecord.py
index 9196ee2..bbf6676 100644
--- a/iexcode/instruments/scanRecord.py
+++ b/iexcode/instruments/scanRecord.py
@@ -411,7 +411,7 @@ class ScanRecord:
         kwargs.setdefault('scan_dim',1)
 
         scan_pv = self.ioc+"scan"+str(kwargs['scan_dim'])
-        #caput(scan_pv+".CMND",3)        # Clear all Positionners
+        caput(scan_pv+".CMND",4)        # Clear all Positioners,etc
         
         if verbose:
             print("\nAll extra positionners cleared")    
@@ -479,9 +479,6 @@ class ScanRecord:
         kwargs.setdefault('positioner_settling_time',default_positioner_settling_time)
         kwargs.setdefault('debug',False)
 
-        if 'trigger_dictionary' in kwargs:
-            self.trigger_dictionary = kwargs['trigger_dictionary']
-
         self.progress(kwargs['scan_dim'])
     
         scan_pv = self.ioc+"scan"+str(kwargs['scan_dim'])
@@ -505,6 +502,8 @@ class ScanRecord:
         self.detector_settling_time(**kwargs)
         self.positioner_settling_time(**kwargs)
         
+        if 'trigger_dictionary' in kwargs:
+            self.trigger_dictionary = kwargs['trigger_dictionary']
         self.triggers_set(kwargs['scan_dim'],self.trigger_dictionary)
 
         #checking that PVs and positioner limits are good
-- 
GitLab