Package gda.device
Interface XmapDetector
- All Superinterfaces:
Configurable,Detector,Device,Findable,gda.observable.IObservable,Scannable
- All Known Subinterfaces:
HardwareTriggeredNexusXmap
- All Known Implementing Classes:
CallableXmap,DummyHardwareTriggeredNexusXmap,HardwareTriggeredNexusXmapImpl,NexusXmap,Xmap,XmapDetectorFromEpicsMca,XmapwithSlaveMode
Interface to control the Vortex XMAP detector. This detector has a
collection of MCAs which can all be triggered at the same time.
-
Field Summary
Fields inherited from interface gda.device.Scannable
ATTR_NEXUS_CATEGORY, ATTR_NX_CLASS, DEFAULT_INPUT_NAME, VALUE_UNAVAILABLE -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()Clear all MCA'svoidClears all MCAs and starts data collectiondoubleReturns the time for which the detector is set to acquire dataLightly to be only implemented on the server.int[][]getData()Returns the data array of all the MCAsint[]getData(int mcaNumber) Returns the data array of the specified MCAintReturns current number of Bins/channels for spectrum acquisition in each MCAintReturns the number of MCAs currently connected to the XMap detectorintReturns the total number of ROIs currently setdoubleReturns the current rate at which data is read in the Epics interfacedoubleReturns the elapsed real time after a read status operationdouble[]getROICounts(int iRoi) Gets the count for each mca for a given ROI.double[]Returns the sum of the corresponding ROIs of all the MCA.intReturns the status of the detectordoubleReturns the current set rate at which status is read in the Epics interfacedoubleReads out the scaler data of the roi counts, corrects for deadtime and returns the sum.voidsetAcquisitionTime(double time) Tells the detector for how many seconds to acquire datavoidsetNthROI(double[][] rois, int roiIndex) Sets a ROI for all of the MCAsvoidsetNumberOfBins(int numberOfBins) Sets maximum numbers of bins/channels to use for spectrum acquisition in each MCAvoidsetReadRate(double readRate) Sets the rate at which data is read in the Epics interfacevoidsetROIs(double[][] rois) Sets the ROIs of all the MCA.voidsetStatusRate(double statusRate) Sets the rate at which status is read in the Epics interfacevoidstart()Start data acquisition in all MCA'svoidstop()Stop data acquisition in all MCA'sMethods inherited from interface gda.factory.Configurable
configure, isConfigureAtStartup, isConfigured, reconfigureMethods inherited from interface gda.device.Detector
collectData, createsOwnFiles, endCollection, getCollectionTime, getDataDimensions, getDescription, getDetectorID, getDetectorType, getFileStructure, prepareForCollection, readout, setCollectionTime, waitWhileBusyMethods inherited from interface gda.device.Device
close, getAttribute, getProtectionLevel, setAttribute, setProtectionLevelMethods inherited from interface gda.observable.IObservable
addIObserver, deleteIObserver, deleteIObserversMethods inherited from interface gda.device.Scannable
asynchronousMoveTo, atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, atScanStart, checkPositionValid, getExtraNames, getInputNames, getLevel, getOutputFormat, getPosition, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, isAt, isBusy, moveTo, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, toFormattedString
-
Method Details
-
clearAndStart
Clears all MCAs and starts data collection- Throws:
DeviceException
-
clear
Clear all MCA's- Throws:
DeviceException
-
start
Start data acquisition in all MCA's- Throws:
DeviceException
-
stop
Stop data acquisition in all MCA's- Specified by:
stopin interfaceScannable- Throws:
DeviceException
-
setNumberOfBins
Sets maximum numbers of bins/channels to use for spectrum acquisition in each MCA- Parameters:
numberOfBins-- Throws:
DeviceException
-
getNumberOfBins
Returns current number of Bins/channels for spectrum acquisition in each MCA- Returns:
- numberOfBins
- Throws:
DeviceException
-
setStatusRate
Sets the rate at which status is read in the Epics interface- Parameters:
statusRate-- Throws:
DeviceException
-
getStatusRate
Returns the current set rate at which status is read in the Epics interface- Returns:
- status rate
- Throws:
DeviceException
-
setReadRate
Sets the rate at which data is read in the Epics interface- Parameters:
readRate-- Throws:
DeviceException
-
getReadRate
Returns the current rate at which data is read in the Epics interface- Returns:
- readRate
- Throws:
DeviceException
-
getRealTime
Returns the elapsed real time after a read status operation- Returns:
- real time
- Throws:
DeviceException
-
getStatus
Returns the status of the detector- Specified by:
getStatusin interfaceDetector- Returns:
- Detector.IDLE/BUSY
- Throws:
DeviceException
-
setAcquisitionTime
Tells the detector for how many seconds to acquire data- Parameters:
time-- Throws:
DeviceException
-
getAcquisitionTime
Returns the time for which the detector is set to acquire data- Returns:
- time
- Throws:
DeviceException
-
getData
Returns the data array of the specified MCA- Parameters:
mcaNumber-- Returns:
- data array
- Throws:
DeviceException
-
getData
Returns the data array of all the MCAs- Returns:
- array of data arrays
- Throws:
DeviceException
-
getROIsSum
Returns the sum of the corresponding ROIs of all the MCA. For e.g if the MCAs have three ROIs each say R0, R1 and R2. This method sums up the R0 of all the MCA R1 of all the MCAs and so on- Returns:
- ROI sum array
- Throws:
DeviceException
-
setROIs
Sets the ROIs of all the MCA. Use this method only if you want to set all the MCA with the same ROIs.To set different ROI for each of the MCA use setNthROI method.- Parameters:
rois- array. Each roi should have a low and high value.- Throws:
DeviceException
-
getNumberOfROIs
Returns the total number of ROIs currently set- Returns:
- number of ROIs
- Throws:
DeviceException
-
getNumberOfMca
Returns the number of MCAs currently connected to the XMap detector- Returns:
- number of MCA
- Throws:
DeviceException
-
setNthROI
Sets a ROI for all of the MCAs- Parameters:
rois- This array length should be same as the number of MCAsroiIndex-- Throws:
DeviceException
-
getChannelLabels
Lightly to be only implemented on the server.- Returns:
- the labels for the channels defined by the user.
-
getROICounts
Gets the count for each mca for a given ROI.- Parameters:
iRoi-- Returns:
- double[] of counts per mca for this roi
- Throws:
DeviceException
-
readoutScalerData
Reads out the scaler data of the roi counts, corrects for deadtime and returns the sum.- Returns:
- The FF data
- Throws:
DeviceException
-