Revert scan config changes made for Dingo. They broke the bmonscan and hmscan objects.

This commit is contained in:
Ferdi Franceschini
2013-07-02 08:23:05 +10:00
parent 65103ef607
commit 1486481a4c

View File

@@ -76,25 +76,6 @@ proc ::scan::hmm_scan_collect {sobj uobj point} {
clientput "Monitor $bmn [SplitReply [$bmon getcounts]]"
}
}
proc ::scan::cm_scan_collect {sobj uobj point} {
set vlist [split [$sobj getvarpar 0] = ];
set w(NP) $point
set sv [string trim [lindex [split [lindex $vlist 0] . ] 1]]
set header [format "%-4.4s %-9.9s %-14s %-7.7s" NP $sv Counts Time]
set varval [SplitReply [$sv]]
set counts [SplitReply [::histogram_memory::total_counts]]
set time [SplitReply [::histogram_memory::time]]
set data [format "%-4d %-9.3f %-14d %-7.2f" $point $varval $counts $time]
clientput $header
clientput $data
for {set bmn 1} {$bmn <= $::counter::isc_numchannels} {incr bmn} {
set bmon bm$bmn
clientput "Monitor $bmn [SplitReply [$bmon getcounts]]"
}
}
proc ::scan::hmscanend_event {} {
::scan::runscan_cmd -set feedback status IDLE
}
@@ -105,11 +86,6 @@ proc ::scan::bmonscanend_event {} {
}
publish ::scan::bmonscanend_event user
proc ::scan::cmscanend_event {} {
#::scan::iscan_cmd -set feedback status IDLE
}
publish ::scan::cmscanend_event user
proc ::scan::ic_initialize {} {
if [ catch {
variable ic_runscanpar
@@ -117,9 +93,8 @@ proc ::scan::ic_initialize {} {
set ic_hmm_datatype HISTOGRAM_XYT
#MakeScanCommand hmscan bm $::cfPath(scan)/scan_common_1.hdd recover.bin
#MakeScanCommand bmonscan bm $::cfPath(scan)/scan_common_1.hdd recover.bin
#MakeScanCommand iscan cm1 $::cfPath(scan)/scan_common_1.hdd recover.bin
MakeScanCommand hmscan bm $::cfPath(scan)/scan_common_1.hdd recover.bin
MakeScanCommand bmonscan bm $::cfPath(scan)/scan_common_1.hdd recover.bin
bmonscan configure script
bmonscan function writeheader ::scan::donothing
@@ -129,6 +104,7 @@ proc ::scan::ic_initialize {} {
bmonscan function prepare ::scan::bm_scan_prepare
bmonscan function finish ::scan::bm_scan_finish
hmscan configure script
hmscan function writeheader ::scan::donothing
hmscan function writepoint ::scan::hmm_writepoint
@@ -137,14 +113,6 @@ proc ::scan::ic_initialize {} {
hmscan function prepare ::scan::hmm_scan_prepare
hmscan function finish ::scan::hmm_scan_finish
#iscan configure script
#iscan function writeheader ::scan::donothing
#iscan function writepoint ::scan:cm_writepoint
#iscan function count ::scan::cm_count
#iscan function collect ::scan::cm_scan_collect
#iscan function prepare ::scan::cm_scan_prepare
#iscan function finish ::scan::cm_scan_finish
# TODO Use ic_runscanpar to create the ::scan::runscan command and
# to validate the "runscan" proc parameters.
array set ic_runscanpar [subst {
@@ -158,9 +126,8 @@ proc ::scan::ic_initialize {} {
savetype text=save,nosave
force boolean
}]
#scriptcallback connect hmscan SCANEND ::scan::hmscanend_event
#scriptcallback connect bmonscan SCANEND ::scan::bmonscanend_event
scriptcallback connect iscan SCANEND ::scan::cmscanend_event
scriptcallback connect hmscan SCANEND ::scan::hmscanend_event
scriptcallback connect bmonscan SCANEND ::scan::bmonscanend_event
} message ] {
if {$::errorCode=="NONE"} {return $message}
return -code error $message
@@ -360,7 +327,7 @@ proc ::scan::bm_scan_prepare {sobj uobj} {
}
if [catch {
#TODO Parameterise varindex in some way
#TODO Parameterise varindex in some way
set varindex 0;
set numpoints [SplitReply [$sobj np]]
@@ -389,87 +356,9 @@ proc ::scan::bm_scan_prepare {sobj uobj} {
} else {
return -code error "BMONSCAN ABORTED: Instrument not ready"
}
}
proc ::scan::cm_count {sobj uobj point mode preset} {
# send "clear meta" command to the camera server
clientput "sending clear meta"
set cmd "clear meta\r\n"
cm1 send $cmd
# send motor position
set cmd "set meta"
foreach m [sicslist type motor] {
append cmd "," "[$m]"
}
append cmd "\r\n"
clientput $cmd
cm1 send $cmd
}
proc ::scan::cm_scan_prepare {sobj uobj} {
variable save_filetype
variable check_instrument_ready
variable force_scan
if {$force_scan || $check_instrument_ready && [::plc::inst_ready]} {
set force_scan false
if [catch {
::scan::check_scanvar $sobj $uobj
::scan::pre_hmm_scan_prepare
}] {
return -code error "ISCAN ABORTED: $::errorInfo"
}
# send "shutter auto" command over
clientput "shutter auto"
shutter auto
# send "focusflight off" command over
clientput "focuslight off"
focuslight off
# send "clear meta" command to the camera server
clientput "sending clear meta"
set cmd "clear meta\r\n"
cm1 send $cmd
# send motor position
set cmd "set meta"
foreach m [sicslist type motor] {
append cmd "," "[$m]"
}
append cmd "\r\n"
clientput $cmd
cm1 send $cmd
if [catch {
#TODO Parameterise varindex in some way
set varindex 0;
set numpoints [SplitReply [$sobj np]]
set vlist [split [$sobj getvarpar $varindex] = ]
set scanstart [lindex $vlist 1]
set scanstep [lindex $vlist 2]
#::scan::iscan_cmd -set NP $numpoints
#::scan::iscan_cmd -set scan_variable [string trim [lindex [split [lindex $vlist 0] . ] 1]];
#::scan::iscan_cmd -set scan_start $scanstart
#::scan::iscan_cmd -set scan_increment $scanstep
set scanvar_pts [SplitReply [$sobj getvardata $varindex]]
#::scan::iscan_cmd -set feedback status BUSY
clientput "run_mode iscan"
run_mode "iscan"
#::nexus::newfile BEAM_MONITOR $save_filetype
stdscan prepare $sobj $uobj;
clientput "Scan start: $scanstart, Scan step: $scanstep, Number of points: $numpoints"
}] {
run_mode "normal"
return -code error $::errorInfo
}
} else {
return -code error "ISCAN ABORTED: Instrument not ready"
}
}
Publish ::scan::hmm_count user
Publish ::scan::hmm_scan_prepare user
@@ -484,9 +373,6 @@ Publish ::scan::bm_scan_collect user
Publish ::scan::bm_writepoint user
Publish ::scan::bm_count user
publish ::scan::cm_count user
publish ::scan::cm_scan_prepare user
namespace eval scan {
namespace export runscan
VarMake ::scan::runscan_reset_position Text internal