The following lines which are part of /online_dir/TkIrc.pl create a widget to operate the MARCCD.
$Spc::res_h{ marccd_title} = { text => "MAR-CCD"}; $Spc::res_h{ "marccd_io1"} = { label => { name => "File"}, entry => { set => sub { Spectra::marccd_writefile( $_[0]);}}}; $Spc::res_h{ "marccd_io2"} = { label => { name => "Get_state", get => sub { Spectra::marccd_get_state()}}}; $Spc::res_h{ marccd_b1} = { name => "Start", command => sub { Spectra::marccd_start();}}; $Spc::res_h{ marccd_b2} = { name => "Readout", command => sub { Spectra::marccd_readout();}}; $Spc::res_h{ marccd_b3} = { name => "Readout_bg", command => sub { Spectra::marccd_readout_bg();}}; $Spc::res_h{ marccd_b4} = { name => "Readout_mr", command => sub { Spectra::marccd_readout_mr();}}; $Spc::res_h{ marccd_b5} = { name => "Correct", command => sub { Spectra::marccd_correct();}}; $Spc::res_h{ marccd_b6} = { name => "Open Shutter", command => sub { Spectra::marccd_open_shutter();}}; $Spc::res_h{ marccd_b7} = { name => "Close Shutter", command => sub { Spectra::marccd_close_shutter();}}; $Spc::res_h{ marccd_b8} = { name => "Abort", command => sub { Spectra::marccd_abort(); Spectra::marccd_close_shutter(); }};