Package gda.device.detector
Interface EdeDetector
- All Superinterfaces:
Configurable,Detector,Device,Findable,gda.observable.IObservable,NexusDetector,Scannable
- All Known Subinterfaces:
FrelonDetector,StripDetector,XCHIPDetector
- All Known Implementing Classes:
EdeDetectorBase,EdeDummyDetector,EdeFrelon,XhDetector
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final intstatic final StringFields inherited from interface gda.device.Scannable
ATTR_NEXUS_CATEGORY, ATTR_NX_CLASS, DEFAULT_INPUT_NAME, VALUE_UNAVAILABLE -
Method Summary
Modifier and TypeMethodDescriptionvoidconfigureDetectorForROI(int verticalBinning, int ccdLineBegin) voidorg.eclipse.january.dataset.DoubleDatasetvoidto pull detector setting from detector server to synchronise theDetectorDataobjectdoubleReturns the function used to convert channel number to energy.double[]Integer[]intintintintintintintintgetNumberScansInFrame(double frameTime, double scanTime, int numberOfFrames) Integer[]intgetRoiFor(int elementIndex) Roi[]getRois()Returns the regions in use, as defined by calls to setRois or setNumberRoisintbooleanintbooleanbooleanvoidprepareDetectorwithScanParameters(EdeScanParameters newParameters) readFrames(int startFrame, int finalFrame) int[]readoutFrames(int startFrame, int finalFrame) implements the read out of frames from the actual detector used.voidsetAccumulationReadoutTime(double timeSecs) Set the accumulation readout timevoidsetDetectorSetupType(DetectorSetupType detectorSetupType) voidsetEnergyCalibration(CalibrationDetails calibrationDetails) Set the energy calibration.voidsetExcludedPixels(Integer[] excludedStrips) The numbers of the strips which should be excluded when returning the data and creating region totals.voidsetLowerChannel(int channel) voidsetNumberRois(int numberOfRois) Set evenly sized regions of interest, ignoring channels outside of the lower and upper channel limits.voidsetNumberScansInFrame(int numScansInFrame) voidsetOrbitWaitMethod(String methodString) voidIgnoring the lower and upper channel properties, explicitly set the regions in use.voidsetSynchroniseBeamOrbitDelay(int synchroniseBeamOrbitDelay) voidsetSynchroniseToBeamOrbit(boolean synchroniseToBeamOrbit) voidsetUpperChannel(int channel) voidMethods 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, getStatus, prepareForCollection, 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.detector.NexusDetector
readoutMethods 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, stop, toFormattedString
-
Field Details
-
CALIBRATION_PROP_KEY
- See Also:
-
INITIAL_NO_OF_ROIS
static final int INITIAL_NO_OF_ROIS- See Also:
-
ROIS_PROP_NAME
- See Also:
-
EXCLUDED_PIXELS_PROP_NAME
- See Also:
-
-
Method Details
-
readFrames
- Parameters:
startFrame-finalFrame-- Returns:
- read a range of frames
- Throws:
DeviceException
-
createDatasetForPixel
org.eclipse.january.dataset.DoubleDataset createDatasetForPixel() -
writeLiveDataFile
- Throws:
DeviceException
-
getEnergyForChannels
double[] getEnergyForChannels() -
getPixels
Integer[] getPixels() -
getDetectorData
DetectorData getDetectorData() -
getNumberOfSpectra
- Throws:
DeviceException
-
getTemperatures
- Throws:
DeviceException
-
fetchStatus
- Throws:
DeviceException
-
getNumberScansInFrame
int getNumberScansInFrame(double frameTime, double scanTime, int numberOfFrames) throws DeviceException - Throws:
DeviceException
-
getMaxPixel
int getMaxPixel() -
prepareDetectorwithScanParameters
- Throws:
DeviceException
-
fetchDetectorSettings
void fetchDetectorSettings()to pull detector setting from detector server to synchronise theDetectorDataobject -
isDropFirstFrame
boolean isDropFirstFrame() -
getEnergyCalibration
CalibrationDetails getEnergyCalibration()Returns the function used to convert channel number to energy. If not calibrated it should return a simple y = x function.- Returns:
- PolynomialFunction
-
setEnergyCalibration
Set the energy calibration. The detector object should persist this between GDA server restarts.- Parameters:
calibrationDetails-
-
isEnergyCalibrationSet
boolean isEnergyCalibrationSet() -
getRois
Roi[] getRois()Returns the regions in use, as defined by calls to setRois or setNumberRois- Returns:
- the array of regions
-
setRois
Ignoring the lower and upper channel properties, explicitly set the regions in use.- Parameters:
rois-
-
setNumberRois
void setNumberRois(int numberOfRois) Set evenly sized regions of interest, ignoring channels outside of the lower and upper channel limits.- Parameters:
numberOfRois-
-
getNumberOfRois
int getNumberOfRois() -
setLowerChannel
void setLowerChannel(int channel) -
getLowerChannel
int getLowerChannel() -
setUpperChannel
void setUpperChannel(int channel) -
getUpperChannel
int getUpperChannel() -
setExcludedPixels
The numbers of the strips which should be excluded when returning the data and creating region totals.NB: these strips are still to be accounted for by the set/getChannelBiases methods.
- Parameters:
excludedStrips-
-
getExcludedPixels
Integer[] getExcludedPixels() -
getRoiFor
int getRoiFor(int elementIndex) -
getNumberScansInFrame
int getNumberScansInFrame() -
setNumberScansInFrame
void setNumberScansInFrame(int numScansInFrame) -
configureDetectorForTimingGroup
- Throws:
DeviceException
-
configureDetectorForROI
- Throws:
DeviceException
-
setSynchroniseToBeamOrbit
void setSynchroniseToBeamOrbit(boolean synchroniseToBeamOrbit) -
getSynchroniseToBeamOrbit
boolean getSynchroniseToBeamOrbit() -
setSynchroniseBeamOrbitDelay
- Throws:
DeviceException
-
getSynchroniseBeamOrbitDelay
int getSynchroniseBeamOrbitDelay() -
setOrbitWaitMethod
-
getOrbitWaitMethod
String getOrbitWaitMethod() -
setAccumulationReadoutTime
void setAccumulationReadoutTime(double timeSecs) Set the accumulation readout time- Parameters:
accumulationReadoutTime- (in seconds)
-
getAccumulationReadoutTime
double getAccumulationReadoutTime()- Returns:
- Accumulation readout time (in seconds)
-
getDetectorSetupType
DetectorSetupType getDetectorSetupType() -
setDetectorSetupType
-
readoutFrames
implements the read out of frames from the actual detector used.- Parameters:
startFrame-finalFrame-- Returns:
- an 1D integer array containing all frames concatenated from start frame to the final frame inclusively.
- Throws:
DeviceException
-
getLastImageAvailable
- Returns:
- Index of last image on the detector available for reading out using. (i.e. -1 = no image is ready, 0 = 1 image is ready)
- Throws:
DeviceException
-
getMaxNumFramesToRead
int getMaxNumFramesToRead()
-