Added hmm_save function and refactored hmm_addnxscanentry to use it.

r1717 | ffr | 2007-03-24 19:17:54 +1100 (Sat, 24 Mar 2007) | 2 lines
This commit is contained in:
Ferdi Franceschini
2007-03-24 19:17:54 +11:00
committed by Douglas Clowes
parent 8ee21d58f4
commit 63fc628e89

View File

@ -67,23 +67,16 @@ proc det_height_arr {active_height_mm row_zero dim0} {
}
}
proc hmm_addnxscanentry {nxobj entryname scanVariable scanVarPos scanVarStep start_time} {
proc hmm_save {nxobj entryname} {
global dradius ndect angsep;
set dim0 [SplitReply [hmm configure dim0]]
set dim1 [SplitReply [hmm configure dim1]]
putcommon $nxobj $entryname $scanVariable
putcrystal $nxobj
putmonitor $nxobj
putsample $nxobj
set scanVar_value [string trim [lindex [split [$scanVariable] =] 1]]
$nxobj updatedictvar scanvar_name $scanVariable
$nxobj updatedictvar scanvar_units [SplitReply [$scanVariable units]]
$nxobj updatedictvar scanvar_longname $scanVariable
$nxobj putfloat scanvar $scanVar_value
$nxobj putfloat scanstep $scanVarStep
set dim0 [SplitReply [hmm configure dim0]];
set dim1 [SplitReply [hmm configure dim1]];
putcommon $nxobj $entryname;
putcrystal $nxobj;
putmonitor $nxobj;
putsample $nxobj;
$nxobj putfloat detangle_degrees [SplitReply [detector_angle_deg]]
$nxobj puttext estart $start_time
# putpolar_angle $nxobj $dim0 $dim1
put_det_height_arr $nxobj $dim0
$nxobj puttext dtype [SplitReply [detector_type]]
@ -91,23 +84,38 @@ proc hmm_addnxscanentry {nxobj entryname scanVariable scanVarPos scanVarStep sta
$nxobj putfloat dradius [SplitReply [detector_radius_mm]]
$nxobj puttext dlayout area
$nxobj puthm dcounts hmm [SplitReply [hmm_start]] [SplitReply [hmm_length]] [SplitReply [hmm_bank]]
#$nxobj puthm deff hmm
$nxobj makelink scandata dcounts
$nxobj makelink scanvertaxis dvaxis
# $nxobj makelink scandata dtheta
# $nxobj makelink scanvar $scanVariable
}
proc hmm_addnxscanentry {nxobj entryname scanVariable scanVarPos scanVarStep start_time} {
$nxobj puttext estart $start_time
$nxobj updatedictvar scan_variable $scanVariable
set scanVar_value [string trim [lindex [split [$scanVariable] =] 1]]
$nxobj updatedictvar scanvar_name $scanVariable
$nxobj updatedictvar scanvar_units [SplitReply [$scanVariable units]]
$nxobj updatedictvar scanvar_longname $scanVariable
$nxobj putfloat scanvar $scanVar_value
$nxobj putfloat scanstep $scanVarStep
hmm_save $nxobj $entryname;
$nxobj puttext eend [sicstime];
}
#TODO Refactor: Add bm_save command and use it here.
proc bm_addnxscanentry {nxobj entryname scanVariable scanVarPos scanVarStep start_time} {
global dradius ndect angsep;
putcommon $nxobj $entryname $scanVariable
$nxobj updatedictvar scan_variable $scanVariable;
putcommon $nxobj $entryname
putcrystal $nxobj
putmonitor $nxobj
putsample $nxobj
set scanVar_value [string trim [lindex [split [$scanVariable] =] 1]]
$nxobj updatedictvar scanvar_name $scanVariable
$nxobj updatedictvar scanvar_units [SplitReply [$scanVariable units]]
#TODO $nxobj updatedictvar scanvar_units [SplitReply [$scanVariable units]]
$nxobj updatedictvar scanvar_units "unknown"
$nxobj updatedictvar scanvar_longname $scanVariable
$nxobj putfloat scanvar $scanVar_value
$nxobj putfloat scanstep $scanVarStep
@ -160,9 +168,8 @@ proc putcrystal {nxobj} {
$nxobj puttext ctype [SplitReply [crystal_type]]
$nxobj putfloat clambda [SplitReply [crystal_wavelength_A]]
}
proc putcommon {nxobj entryName scanVariable} {
proc putcommon {nxobj entryName} {
$nxobj updatedictvar entryName $entryName
$nxobj updatedictvar scan_variable $scanVariable
$nxobj puttext etitle [getVal [Title]]
$nxobj puttext iname [getVal [Instrument]]
$nxobj puttext username [SplitReply [user]]