The following lines which are part of /online_dir/TkIrc.pl create a widget to operate analyzer at P09.
$Spc::res_h{ blsc} = "analyzer";
#
# analyzer
#
$Spc::res_h{ analyzer_title} = { text => "Analyzer"};
$Spc::res_h{ analyzer_help} = sub
{
Util::display_text( "Help Analyzer",
'
n.n.
'
)};
$Spc::res_h{ analyzer_io1} = {
label => { name => "Dhkl",
unit => "u",
get => sub { sprintf( "%g", Spectra::tng_attrDoubleRd( "analyzer", "Dhkl"));}},
entry => { set => sub { Spectra::tng_attrDoubleWrt( "analyzer", "Dhkl", $_[0]);}}};
$Spc::res_h{ analyzer_io2} = {
label => { name => "ThanaOffset",
unit => "u",
get => sub { sprintf( "%g", Spectra::tng_attrDoubleRd( "analyzer", "ThanaOffset"));}},
entry => { set => sub { Spectra::tng_attrDoubleWrt( "analyzer", "ThanaOffset", $_[0]);}}};
$Spc::res_h{ analyzer_io3} = {
label => { name => "UnitLimitMin",
unit => "u",
get => sub { sprintf( "%g", Spectra::tng_attrDoubleRd( "analyzer", "UnitLimitMin"));}},
entry => { set => sub { Spectra::tng_attrDoubleWrt( "analyzer", "UnitLimitMin", $_[0]);}}};
$Spc::res_h{ analyzer_io4} = {
label => { name => "UnitLimitMax",
unit => "u",
get => sub { sprintf( "%g", Spectra::tng_attrDoubleRd( "analyzer", "UnitLimitMax"));}},
entry => { set => sub { Spectra::tng_attrDoubleWrt( "analyzer", "UnitLimitMax", $_[0]);}}};