simplify proc generation for virtual slit motors

r1670 | dcl | 2007-03-19 14:55:27 +1100 (Mon, 19 Mar 2007) | 2 lines
This commit is contained in:
Douglas Clowes
2007-03-19 14:55:27 +11:00
parent 613793a782
commit f15aed00ab

View File

@@ -1,5 +1,5 @@
# $Revision: 1.13 $ # $Revision: 1.14 $
# $Date: 2007-03-19 03:08:13 $ # $Date: 2007-03-19 03:55:27 $
# Author: Ferdi Franceschini (ffr@ansto.gov.au) # Author: Ferdi Franceschini (ffr@ansto.gov.au)
# Last revision by: $Author: dcl $ # Last revision by: $Author: dcl $
@@ -677,27 +677,23 @@ proc set_gap_offset {m1 m2 val} {
# make_gap_motors virt_width_motor virt_offset_motor real_high_motor real_low_motor # make_gap_motors virt_width_motor virt_offset_motor real_high_motor real_low_motor
proc make_gap_motors {vm1 vm2 m1 m2} { proc make_gap_motors {vm1 vm2 m1 m2} {
uplevel #0 "proc get_$vm1 {} { get_gap_width $m1 $m2 }" eval "proc get_$vm1 {} { get_gap_width $m1 $m2 }"
set v {$var} set v {$var}
set s "proc set_$vm1 {var} { set_gap_width $m1 $m2 $v }" eval "proc set_$vm1 {var} { set_gap_width $m1 $m2 $v }"
puts $s MakeConfigurableMotor $vm1
uplevel #0 $s $vm1 readscript get_$vm1
uplevel #0 "MakeConfigurableMotor $vm1" $vm1 drivescript set_$vm1
uplevel #0 "$vm1 readscript get_$vm1" publish get_$vm1 user
uplevel #0 "$vm1 drivescript set_$vm1" publish set_$vm1 user
uplevel #0 "publish get_$vm1 user"
uplevel #0 "publish set_$vm1 user"
uplevel #0 "proc get_$vm2 {} { get_gap_offset $m1 $m2 }" eval "proc get_$vm2 {} { get_gap_offset $m1 $m2 }"
set v {$var} set v {$var}
set s "proc set_$vm2 {var} { set_gap_offset $m1 $m2 $v }" eval "proc set_$vm2 {var} { set_gap_offset $m1 $m2 $v }"
puts $s MakeConfigurableMotor $vm2
uplevel #0 $s $vm2 readscript get_$vm2
uplevel #0 "MakeConfigurableMotor $vm2" $vm2 drivescript set_$vm2
uplevel #0 "$vm2 readscript get_$vm2" publish get_$vm2 user
uplevel #0 "$vm2 drivescript set_$vm2" publish set_$vm2 user
uplevel #0 "publish get_$vm2 user"
uplevel #0 "publish set_$vm2 user"
} }
make_gap_motors ss1vg ss1vo ss1u ss1d make_gap_motors ss1vg ss1vo ss1u ss1d