The functions that are explained in this section operate the XIA DXP-XMAP in mapping mode. The word pixel is a set of MCA spectra ( 1 - 4) which are taken during a single gating period.
start_mca_mapping( name => $name, nMca => $nmca, nPixel => $npixel, mask => $mask)
starts a thread that controls the measurement. The status of the thread can be tested with the function test_mca_mapping(). The thread terminates when the current pixel number reaches $nPixel. Normally the pixel number advances by the leading edge of a gate signal. |
$name: the device name of the MCA |
$nPca: the number of bins in a MCA, e.g.: 1024. Applies for all 4 channels. |
$mask: selects the channels of the module: '1' selects channel 0, '3' selects channel 0 and 1, '15' select all 4 channels. |
read_mca_mapping( name => $name, dirName => $dirName, sweepNo => $sweepNo)
reads the buffer of the Tango server that operates the XMAP.
Every MCA spectrum is stored in a separate file.
The device name, $name,
is the first part of the file name. It is followed by
a number that contains the sweep number and the
MCA number within a sweep. If several channels
are selected by $mask, their device names are
automatically created, e.g.: suppose $name is MCA10 (channel 0).
Then MCA11 is assigned to the next channel.
$dirName specifies the directory where the MCA files are stored. If it does not exist, it is created. |
$name: the device name of the MCA |
$dirName: the name of the directory where the MCAs are stored. |
$sweepNo The sweep no. will be part of the file name |
stop_mca_mapping( name => $name)
Normally there is no need to use this function because the sequence is terminated after the XMAP created as many pixels as have been requested. |
test_mca_mapping( name => $name)
Returns 1, if the thread is busy. |
read_mca_mapping_current_pixel( name => $name)
Returns the current pixel. This number is less than $npixel. |
advance_mca_mapping( name => $name)
Debugging feature: advances the pixel using host control. This is normally done by a gate signal. |