Package gda.device.detector.countertimer
Class TFGTriggeredScaler
java.lang.Object
gda.factory.ConfigurableBase
gda.factory.FindableConfigurableBase
gda.device.DeviceBase
gda.device.scannable.ScannableBase
gda.device.detector.DetectorBase
gda.device.detector.countertimer.CounterTimerBase
gda.device.detector.countertimer.TFGCounterTimer
gda.device.detector.countertimer.TfgScaler
gda.device.detector.countertimer.TfgScalerWithDarkCurrent
gda.device.detector.countertimer.TfgScalerWithLogValues
gda.device.detector.countertimer.TFGTriggeredScaler
- All Implemented Interfaces:
CounterTimer,Detector,DarkCurrentDetector,HardwareTriggeredDetector,Device,Scannable,PositionCallableProvider<double[]>,Configurable,Findable,gda.observable.IObservable,Serializable
public class TFGTriggeredScaler
extends TfgScalerWithLogValues
implements HardwareTriggeredDetector, PositionCallableProvider<double[]>
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class gda.device.detector.countertimer.TfgScalerWithDarkCurrent
TfgScalerWithDarkCurrent.DarkCurrentBean -
Field Summary
Fields inherited from class gda.device.detector.countertimer.TfgScalerWithLogValues
LNI0IT_LABEL, LNITIREF_LABELFields inherited from class gda.device.detector.countertimer.TfgScaler
numChannelsToRead, scaler, timeChannelRequiredFields inherited from class gda.device.detector.countertimer.TFGCounterTimer
isTFGv2Fields inherited from class gda.device.detector.countertimer.CounterTimerBase
slave, timerFields 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.Scannable
ATTR_NEXUS_CATEGORY, ATTR_NX_CLASS, DEFAULT_INPUT_NAME, VALUE_UNAVAILABLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidHook to be used by Scan and pos commands to inform the Scannable that an exception, such as a DeviceExcpetion, has occurred.voidCalled for every Scannable at the start of every scanvoidvoidTells the detector to begin to collect a set of data, then returns immediately.Get theHardwareTriggerProviderthat represents the controller this Detector is wired to.intCallable<double[]> intbooleanDetectors that sample some value at the time of a trigger should return False.booleanisBusy()Check if the Scannable is moving/operating.Object[]readFrames(int startFrame, int finalFrame) double[]readout()Returns the latest data collected.voidsetDaserver(DAServer daserver) voidsetHardwareTriggerProvider(HardwareTriggerProvider triggerProvider) voidsetIntegrateBetweenPoints(boolean integrateBetweenPoints) voidsetNumberImagesToCollect(int numberImagesToCollect) Tell the detector how many scan points to collect.voidsetReturnCountRates(Boolean returnCountRates) voidsetTtlSocket(int ttlSocket) voidMethods inherited from class gda.device.detector.countertimer.TfgScalerWithLogValues
addScalerOutputConfig, appendLogValues, clearScalerOutputConfig, configureScalerOutputProcessor, getI0ScalerChannel, getiRefScalerChannel, getItScalerChannel, getScalerOutputConfig, getScalerOutputProcessor, getTimeChannelName, getTotalChans, getUseCustomisedOutput, isOutputLogValues, performCorrections, readFrame, restoreExtraNamesFormats, saveExtraNamesFormats, setI0ScalerChannel, setiRefScalerChannel, setItScalerChannel, setOutputLogValues, setScalerOutputConfig, setTimeChannelName, setUseCustomisedOutputMethods inherited from class gda.device.detector.countertimer.TfgScalerWithDarkCurrent
acquireDarkCurrent, adjustChannelForDarkCurrent, adjustForDarkCurrent, atScanEnd, atScanStart, getDarkCurrent, getDarkCurrentCollectionTime, getDarkCurrentResults, isDarkCurrentRequired, isUseReset, setDarkCurrent, setDarkCurrentCollectionTime, setDarkCurrentRequired, setUseResetMethods inherited from class gda.device.detector.countertimer.TfgScaler
addFrameSet, addFrameSet, clearFrameSets, configure, countAsync, createsOwnFiles, getAttribute, getDescription, getDetectorID, getDetectorType, getFirstDataChannel, getInputNames, getMinimumReadoutDelay, getNumChannelsToRead, getScaler, getScalerName, isTimeChannelRequired, readChannel, readChans, readFrame, readoutCurrentFrame, readoutFrames, setAttribute, setFirstDataChannel, setMinimumReadoutDelay, setNumChannelsToRead, setScaler, setScalerName, setTimeChannelRequired, start, stopMethods inherited from class gda.device.detector.countertimer.TFGCounterTimer
isTFGv2, setTFGv2Methods inherited from class gda.device.detector.countertimer.CounterTimerBase
getCurrentCycle, getCurrentFrame, getMaximumFrames, getStatus, getTimer, getTimerName, isSlave, loadFrameSets, restart, setCycles, setSlave, setTimer, setTimerNameMethods inherited from class gda.device.detector.DetectorBase
asynchronousMoveTo, checkPositionValid, endCollection, getCollectionTime, getDataDimensions, getPosition, prepareForCollection, setCollectionTime, toFormattedStringMethods inherited from class gda.device.scannable.ScannableBase
__call__, __call__, __doc__, __getitem__, __len__, __repr__, __str__, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanLineEnd, externalToInternal, getExtraNames, 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, getName, getProtectionLevel, isBeingObserved, isConfigureAtStartup, notifyIObservers, setConfigureAtStartup, setName, setProtectionLevelMethods inherited from class gda.factory.ConfigurableBase
isConfigured, reconfigure, setConfiguredMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gda.factory.Configurable
configure, isConfigureAtStartup, isConfigured, reconfigureMethods inherited from interface gda.device.Detector
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.Scannable
asynchronousMoveTo, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanStart, checkPositionValid, getExtraNames, getInputNames, getLevel, getOutputFormat, getPosition, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, isAt, moveTo, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, stop, toFormattedString
-
Constructor Details
-
TFGTriggeredScaler
public TFGTriggeredScaler()
-
-
Method Details
-
setHardwareTriggerProvider
-
getHardwareTriggerProvider
Description copied from interface:HardwareTriggeredDetectorGet theHardwareTriggerProviderthat represents the controller this Detector is wired to.- Specified by:
getHardwareTriggerProviderin interfaceHardwareTriggeredDetector- Returns:
- the trigger provider
-
setIntegrateBetweenPoints
public void setIntegrateBetweenPoints(boolean integrateBetweenPoints) -
clearMemory
- Throws:
DeviceException
-
getNumberFrames
- Throws:
DeviceException
-
readFrames
- Throws:
DeviceException
-
setReturnCountRates
-
waitForReadoutCompletion
- Throws:
InterruptedException
-
atCommandFailure
Description copied from class:ScannableBaseHook to be used by Scan and pos commands to inform the Scannable that an exception, such as a DeviceExcpetion, has occurred. However not called when the command is aborted using an InterruptionException. If a Scan is aborted then onlyScannable.stop()will be called by the Scan or pos command.Useful for telling Scannables which hold state during a scan for example, to reset themselves. Used for example by CoordinatedMotionScannables. This hook should be used not in the same way as the stop hook. Default behaviour is to do nothing. Inheriting classes have the option to implement this if their specific behaviour requires it.
- Specified by:
atCommandFailurein interfaceScannable- Overrides:
atCommandFailurein classTfgScaler- Throws:
DeviceException- See Also:
-
readout
Description copied from interface:DetectorReturns the latest data collected. The size of the Object returned must be consistent with the values returned by getDataDimensions and getExtraNames.If
LocalProperties.GDA_SCAN_CONCURRENTSCAN_READOUT_CONCURRENTLYis true then motors may be moved while the detector readouts. The value returned must not be effected by any concurrent motor or shutter movements. SeeDetector.waitWhileBusy()andConcurrentScan. Readout must block until the detector is ready to respond quickly toDetector.collectData()again.- Specified by:
readoutin interfaceDetector- Overrides:
readoutin classTfgScalerWithLogValues- Returns:
- the data collected
- Throws:
DeviceException- See Also:
-
isBusy
Description copied from class:DetectorBaseCheck if the Scannable is moving/operating. default implementation is to call the getStatus method- Specified by:
isBusyin interfaceScannable- Overrides:
isBusyin classDetectorBase- Returns:
- true - if operation carried out by moveTo has not completed yet
- Throws:
DeviceException- See Also:
-
getPositionCallable
- Specified by:
getPositionCallablein interfacePositionCallableProvider<double[]>- Throws:
DeviceException
-
integratesBetweenPoints
public boolean integratesBetweenPoints()Description copied from interface:HardwareTriggeredDetectorDetectors that sample some value at the time of a trigger should return False. Detectors such as counter timers should return True. If true ,TrajectoryScanLine will generate a trigger half a point before the motor reaches a demanded point such that the resulting bin of data is centred on the demand position. Area detectors that will be triggered by the first pulse should also return true.- Specified by:
integratesBetweenPointsin interfaceHardwareTriggeredDetector- Returns:
- true for detectors that integrates b
-
setNumberImagesToCollect
public void setNumberImagesToCollect(int numberImagesToCollect) Description copied from interface:HardwareTriggeredDetectorTell the detector how many scan points to collect. (Unfortunately named images).- Specified by:
setNumberImagesToCollectin interfaceHardwareTriggeredDetector- Parameters:
numberImagesToCollect-
-
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- Overrides:
collectDatain classTfgScaler- Throws:
DeviceException
-
atScanLineStart
Description copied from class:ScannableBaseCalled for every Scannable at the start of every scan Default behaviour is to do nothing. Inheriting classes have the option to implement this if their specific behaviour requires it.- Specified by:
atScanLineStartin interfaceScannable- Overrides:
atScanLineStartin classTfgScaler- Throws:
DeviceException- See Also:
-
getDaserver
-
setDaserver
-
getTtlSocket
public int getTtlSocket() -
setTtlSocket
public void setTtlSocket(int ttlSocket)
-