From 1486481a4c0289aa921deaa5cb8404d32625458b Mon Sep 17 00:00:00 2001 From: Ferdi Franceschini Date: Tue, 2 Jul 2013 08:23:05 +1000 Subject: [PATCH] Revert scan config changes made for Dingo. They broke the bmonscan and hmscan objects. --- .../instrument/config/scan/scan_common_1.tcl | 130 ++---------------- 1 file changed, 8 insertions(+), 122 deletions(-) diff --git a/site_ansto/instrument/config/scan/scan_common_1.tcl b/site_ansto/instrument/config/scan/scan_common_1.tcl index a3df771c..a3747156 100644 --- a/site_ansto/instrument/config/scan/scan_common_1.tcl +++ b/site_ansto/instrument/config/scan/scan_common_1.tcl @@ -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