Files
sics/site_ansto/instrument/sans/config/commands/commands.tcl
Ferdi Franceschini 0749b0effa Merging release 2.0 branch with CVS trunk
r2601 | ffr | 2008-05-30 10:26:57 +1000 (Fri, 30 May 2008) | 2 lines
2012-11-15 13:38:17 +11:00

66 lines
1.6 KiB
Tcl

source $cfPath(commands)/commands_common.tcl
namespace eval sample {
command select {int=0:8 sampid} {
SampleNum $sampid
}
}
namespace eval optics {
VarMake ::optics::select::section text user
VarMake ::optics::polarizer::in text user
VarMake ::optics::lens::selection text user
command rotary_attenuator {int=0,15,45,90,180 angle} {
AttRotDeg $angle
}
command entrance_aperture {
int=0,45,90,135,180,270 angle
text=circ,squ,open,rect shape
} {
RotApDeg $angle
RotApShape $shape
}
command sample_aperture {
int=25,50 size
text=circ,squ,open,rect shape
} {
SApXmm $size
SApZmm $size
SApShape $shape
}
##############################
##
# @brief set_guide uses a lookup table to setup the collimation system
# @param row, selects a row from the guide configuration table
#
# eg\n
# set_guide HIRES
command guide "
text=[join [array names ::optics::guide_configuration] , ] configuration
" {
variable guide_configuration
variable guide_configuration_columns
array set c1_map {G 1 MT 2 P 3}
array set c2_map {MT 1 G 2 A 3}
array set c3_map {MT 1 G 2 A 3}
array set c4_map {MT 1 G 2 A 3}
array set c5_map {MT 1 G 2 A 3}
array set c6_map {MT 1 G 2 A 3}
array set c7_map {MT 1 G 2 A 3}
array set c8_map {MT 1 G 2 A 3}
array set c9_map {LP 1 MT 2 G 3 A 4 L 5}
foreach el $guide_configuration($configuration) guide $guide_configuration_columns {
lappend to_config $guide
lappend to_config [set ${guide}_map($el)]
}
eval "drive $to_config"
}
}