Package gda.device.detector.frelon
Class EdeFrelon
- All Implemented Interfaces:
Detector,EdeDetector,FrelonDetector,NexusDetector,Device,Scannable,Configurable,Findable,gda.observable.IObservable,Serializable
@ServiceInterface(FrelonDetector.class)
public class EdeFrelon
extends EdeDetectorBase
implements FrelonDetector
- See Also:
-
Field Summary
Fields inherited from class gda.device.detector.EdeDetectorBase
currentDetector, currentScanParameter, detectorData, dropFirstFrameFields inherited from class gda.device.detector.DetectorBase
collectionTimeFields inherited from class gda.device.scannable.ScannableBase
__doc__, DEFAULT_INPUT_NAME, DEFAULT_OUTPUT_FORMAT, extraNames, inputNames, level, outputFormatFields inherited from class gda.device.DeviceBase
DEFAULT_PROTECTION_LEVEL_PROPERTYFields inherited from interface gda.device.detector.EdeDetector
CALIBRATION_PROP_KEY, EXCLUDED_PIXELS_PROP_NAME, INITIAL_NO_OF_ROIS, ROIS_PROP_NAMEFields inherited from interface gda.device.Scannable
ATTR_NEXUS_CATEGORY, ATTR_NX_CLASS, DEFAULT_INPUT_NAME, VALUE_UNAVAILABLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidTells the detector to begin to collect a set of data, then returns immediately.voidDefault implementation for classes that do not have to do any specific configuration.
Classes that do their own configuration should *not* call this superclass function, as it may cause the object to appear configured before it really is.voidSet kinetic ROI mode on the detector.voidconfigureDetectorForROI(int verticalBinning, int ccdLineBegin) voidbooleanReturns a value which indicates whether the detector creates its own files.voidto pull detector setting from detector server to synchronise theDetectorDataobjectfetch detector status from hardware.doubleReturns the time, in seconds, the detector collects for during the next call to collectData()String[]intintdetector's maximum pixel size in energy direction.intintintgetNumberScansInFrame(double expoTime, double accTime, int numberOfImages) retrieve calculated accumulation number of frames per image from the detector.intintintbooleanprotected voidreadout()Reads the first frame only.int[]readoutFrames(int startFrame, int finalFrame) implements the read out of frames from the actual detector used.voidRe-initialisation of values and states.voidreset()reset the camera to factory settingvoidprotected voidvoidsetAccumulationReadoutTime(double timeSec) Set the accumulation readout timevoidsetCollectionTime(double collectionTime) Sets the collection time, in seconds, to be used during the next call of collectData.voidvoidApply kinetic ROI mode and default vertical binning parameters to the Frelon.voidsetLimaCcd(LimaCCD limaCcd) voidsetNumberScansInFrame(int numScansInFrame) voidsetOrbitWaitMethod(String methodString) voidsetRoiMode(Frelon.ROIMode roiMode) Set ROI mode on the DetectorData object along with other defaults : Spb2Config = Speed ImageMode = Full frame, Input channels = I3_4, Trigger mode = internal Horizontal binning = 1voidsetRoiVerticalBinning(int verticalBinning) voidsetRoiVerticalStart(int roiVerticalStart) voidsetSynchroniseBeamOrbitDelay(int synchroniseBeamOrbitDelay) voidsetSynchroniseToBeamOrbit(boolean synchroniseToBeamOrbit) voidstop()Stop the current move/operation.Methods inherited from class gda.device.detector.EdeDetectorBase
atScanStart, createDatasetForPixel, getAccumulationReadoutTime, getCompressionLevel, getDetectorData, getDetectorSetupType, getEnergyCalibration, getEnergyForChannels, getExcludedPixels, getLowerChannel, getMaxNumFramesToRead, getNumberOfRois, getPixels, getRoiFor, getRois, getStatus, getUpperChannel, isCheckForExcludedStrips, isDropFirstFrame, isEnergyCalibrationSet, prepareDetectorwithScanParameters, readFrames, setCheckForExcludedStrips, setCompressionLevel, setDetectorData, setDetectorSetupType, setDropFirstFrame, setEnergyCalibration, setEnergyCalibrationSet, setExcludedPixels, setLowerChannel, setMaxNumFramesToRead, setNumberRois, setRois, setUpperChannel, unpackRawDataToFrames, writeLiveDataFileMethods inherited from class gda.device.detector.DetectorBase
asynchronousMoveTo, checkPositionValid, endCollection, getDataDimensions, getPosition, isBusy, prepareForCollection, toFormattedStringMethods inherited from class gda.device.scannable.ScannableBase
__call__, __call__, __doc__, __getitem__, __len__, __repr__, __str__, atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, externalToInternal, getExtraNames, getInputNames, getLevel, getOutputFormat, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, internalToExternal, isAt, moveTo, rawAsynchronousMoveTo, rawGetPosition, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, throwExceptionIfInvalidTarget, toString, validateScannable, valueUnavailableString, waitWhileBusy, waitWhileBusyMethods inherited from class gda.device.DeviceBase
addIObserver, close, deleteIObserver, deleteIObservers, getAttribute, getName, getProtectionLevel, isBeingObserved, isConfigureAtStartup, notifyIObservers, setAttribute, setConfigureAtStartup, setName, setProtectionLevelMethods inherited from class gda.factory.ConfigurableBase
isConfigured, setConfiguredMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gda.factory.Configurable
isConfigureAtStartup, isConfiguredMethods inherited from interface gda.device.Detector
endCollection, getDataDimensions, getFileStructure, getStatus, prepareForCollection, waitWhileBusyMethods inherited from interface gda.device.Device
close, getAttribute, getProtectionLevel, setAttribute, setProtectionLevelMethods inherited from interface gda.device.detector.EdeDetector
createDatasetForPixel, getAccumulationReadoutTime, getDetectorData, getDetectorSetupType, getEnergyCalibration, getEnergyForChannels, getExcludedPixels, getLowerChannel, getMaxNumFramesToRead, getNumberOfRois, getPixels, getRoiFor, getRois, getUpperChannel, isDropFirstFrame, isEnergyCalibrationSet, prepareDetectorwithScanParameters, readFrames, setDetectorSetupType, setEnergyCalibration, setExcludedPixels, setLowerChannel, setNumberRois, setRois, setUpperChannel, writeLiveDataFileMethods 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
-
Constructor Details
-
EdeFrelon
public EdeFrelon() -
EdeFrelon
-
-
Method Details
-
configure
Description copied from class:ConfigurableBaseDefault implementation for classes that do not have to do any specific configuration.
Classes that do their own configuration should *not* call this superclass function, as it may cause the object to appear configured before it really is.- Specified by:
configurein interfaceConfigurable- Overrides:
configurein classEdeDetectorBase- Throws:
FactoryException- if there is an error in configuration e.g. required variable not set or cannot connect to device
-
reconfigure
Description copied from interface:ConfigurableRe-initialisation of values and states.Moved from Reconfigurable which has been deleted
- Specified by:
reconfigurein interfaceConfigurable- Overrides:
reconfigurein classConfigurableBase- Throws:
FactoryException
-
fetchDetectorSettings
public void fetchDetectorSettings()Description copied from interface:EdeDetectorto pull detector setting from detector server to synchronise theDetectorDataobject- Specified by:
fetchDetectorSettingsin interfaceEdeDetector
-
readout
Description copied from class:EdeDetectorBaseReads the first frame only.- Specified by:
readoutin interfaceDetector- Specified by:
readoutin interfaceNexusDetector- Overrides:
readoutin classEdeDetectorBase- Returns:
- the data collected
- Throws:
DeviceException
-
setKineticRoiMode
Apply kinetic ROI mode and default vertical binning parameters to the Frelon.- Throws:
DeviceException
-
readoutFrames
Description copied from class:EdeDetectorBaseimplements the read out of frames from the actual detector used.- Specified by:
readoutFramesin interfaceEdeDetector- Specified by:
readoutFramesin classEdeDetectorBase- Parameters:
startFrame-finalFrame-- Returns:
- an 1D integer array containing all frames concatenated from start frame to the final frame inclusively.
- Throws:
DeviceException
-
setCollectionTime
Description copied from interface:DetectorSets the collection time, in seconds, to be used during the next call of collectData.- Specified by:
setCollectionTimein interfaceDetector- Overrides:
setCollectionTimein classDetectorBase- Parameters:
collectionTime- the collection time in seconds- Throws:
DeviceException
-
getCollectionTime
Description copied from interface:DetectorReturns the time, in seconds, the detector collects for during the next call to collectData()- Specified by:
getCollectionTimein interfaceDetector- Overrides:
getCollectionTimein classDetectorBase- Returns:
- double
- Throws:
DeviceException
-
collectData
Description copied from interface:DetectorTells the detector to begin to collect a set of data, then returns immediately. Should cause the hardware to start collecting immediately: if there is any delay then detectors used in the same scan would collect over different times when beam conditions may differ.- Specified by:
collectDatain interfaceDetector- Throws:
DeviceException
-
setRoiMode
Set ROI mode on the DetectorData object along with other defaults :- Spb2Config = Speed
- ImageMode = Full frame, Input channels = I3_4,
- Trigger mode = internal
- Horizontal binning = 1
- Specified by:
setRoiModein interfaceFrelonDetector
-
configureDetectorForROI
- Specified by:
configureDetectorForROIin interfaceEdeDetector- Throws:
DeviceException
-
configureDetectorForTimingGroup
- Specified by:
configureDetectorForTimingGroupin interfaceEdeDetector- Throws:
DeviceException
-
stop
Description copied from class:ScannableBaseStop the current move/operation. Default behaviour is to do nothing. Inheriting classes have the option to implement this if their specific behaviour requires it.- Specified by:
stopin interfaceScannable- Overrides:
stopin classScannableBase- Throws:
DeviceException- See Also:
-
getNumberScansInFrame
public int getNumberScansInFrame(double expoTime, double accTime, int numberOfImages) throws DeviceException retrieve calculated accumulation number of frames per image from the detector. the third parameter is not used here. It is just API signature used by XH detector.- Specified by:
getNumberScansInFramein interfaceEdeDetector- Specified by:
getNumberScansInFramein classEdeDetectorBase- Parameters:
expoTime-accTime-numberOfImages-- Returns:
- number of accumulations.
- Throws:
DeviceException
-
getNumberScansInFrame
public int getNumberScansInFrame()- Specified by:
getNumberScansInFramein interfaceEdeDetector
-
setNumberScansInFrame
public void setNumberScansInFrame(int numScansInFrame) - Specified by:
setNumberScansInFramein interfaceEdeDetector
-
configureDetectorForCollection
Set kinetic ROI mode on the detector. Configuring detector for collection is split into 2 methods:configureDetectorForROI(int, int)which must be called once before collection from detector GUI; andconfigureDetectorForTimingGroup(TimingGroup)which handles timing group changes during collection.- Specified by:
configureDetectorForCollectionin classEdeDetectorBase- Throws:
DeviceException
-
fetchStatus
Description copied from class:EdeDetectorBasefetch detector status from hardware.- Specified by:
fetchStatusin interfaceEdeDetector- Specified by:
fetchStatusin classEdeDetectorBase- Returns:
DetectorStatus- Throws:
DeviceException
-
getMaxPixel
public int getMaxPixel()Description copied from class:EdeDetectorBasedetector's maximum pixel size in energy direction.- Specified by:
getMaxPixelin interfaceEdeDetector- Specified by:
getMaxPixelin classEdeDetectorBase- Returns:
- maximum pixels of camera in energy direction
-
createsOwnFiles
Description copied from interface:DetectorReturns a value which indicates whether the detector creates its own files. If it does (return true) the readout() method returns the name of the latest file created as a string. If it does not (return false) the readout() method will return the data directly.- Specified by:
createsOwnFilesin interfaceDetector- Returns:
- true if readout() returns filenames
- Throws:
DeviceException
-
getDescription
- Specified by:
getDescriptionin interfaceDetector- Overrides:
getDescriptionin classDetectorBase- Returns:
- A description of the detector.
- Throws:
DeviceException
-
getDetectorID
- Specified by:
getDetectorIDin interfaceDetector- Overrides:
getDetectorIDin classDetectorBase- Returns:
- A identifier for this detector.
- Throws:
DeviceException
-
getDetectorType
- Specified by:
getDetectorTypein interfaceDetector- Overrides:
getDetectorTypein classDetectorBase- Returns:
- The type of detector.
- Throws:
DeviceException
-
reset
reset the camera to factory setting- Throws:
DeviceException
-
getCurrentAttributesValues
- Throws:
DeviceException
-
resetLink
- Throws:
DeviceException
-
getLimaCcd
-
setLimaCcd
-
getFrelon
-
setFrelon
-
getTemperatures
- Specified by:
getTemperaturesin interfaceEdeDetector- Throws:
DeviceException
-
getNumberOfSpectra
- Specified by:
getNumberOfSpectrain interfaceEdeDetector- Throws:
DeviceException
-
getLastImageAvailable
- Specified by:
getLastImageAvailablein interfaceEdeDetector- 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
-
getCurrentTimingGroup
-
setSynchroniseToBeamOrbit
public void setSynchroniseToBeamOrbit(boolean synchroniseToBeamOrbit) - Specified by:
setSynchroniseToBeamOrbitin interfaceEdeDetector- Specified by:
setSynchroniseToBeamOrbitin classEdeDetectorBase
-
getSynchroniseToBeamOrbit
public boolean getSynchroniseToBeamOrbit()- Specified by:
getSynchroniseToBeamOrbitin interfaceEdeDetector- Specified by:
getSynchroniseToBeamOrbitin classEdeDetectorBase
-
setSynchroniseBeamOrbitDelay
- Specified by:
setSynchroniseBeamOrbitDelayin interfaceEdeDetector- Specified by:
setSynchroniseBeamOrbitDelayin classEdeDetectorBase- Throws:
DeviceException
-
getSynchroniseBeamOrbitDelay
public int getSynchroniseBeamOrbitDelay()- Specified by:
getSynchroniseBeamOrbitDelayin interfaceEdeDetector- Specified by:
getSynchroniseBeamOrbitDelayin classEdeDetectorBase
-
setOrbitWaitMethod
- Specified by:
setOrbitWaitMethodin interfaceEdeDetector- Specified by:
setOrbitWaitMethodin classEdeDetectorBase
-
getOrbitWaitMethod
- Specified by:
getOrbitWaitMethodin interfaceEdeDetector- Specified by:
getOrbitWaitMethodin classEdeDetectorBase
-
getRoiVerticalBinning
public int getRoiVerticalBinning() -
setRoiVerticalBinning
public void setRoiVerticalBinning(int verticalBinning) -
getRoiVerticalStart
public int getRoiVerticalStart() -
setRoiVerticalStart
public void setRoiVerticalStart(int roiVerticalStart) -
setAccumulationReadoutTime
public void setAccumulationReadoutTime(double timeSec) Description copied from interface:EdeDetectorSet the accumulation readout time- Specified by:
setAccumulationReadoutTimein interfaceEdeDetector- Overrides:
setAccumulationReadoutTimein classEdeDetectorBase
-
loadSettingsFromStore
protected void loadSettingsFromStore() -
saveSettingsToStore
protected void saveSettingsToStore()
-