Package gda.device.currentamplifier
Class CurrentAmplifierBase
java.lang.Object
gda.factory.ConfigurableBase
gda.factory.FindableConfigurableBase
gda.device.DeviceBase
gda.device.scannable.ScannableBase
gda.device.currentamplifier.CurrentAmplifierBase
- All Implemented Interfaces:
CurrentAmplifier,Device,Scannable,Configurable,Findable,gda.observable.IObservable
- Direct Known Subclasses:
DummyCurrentAmplifier,DummyEpicsCurrAmpSingle,DummyStanfordScannable,EpicsCurrAmpSingle,EpicsFemtoAmplifier,EpicsStanfordAmplifer,StanfordScannable
@ServiceInterface(CurrentAmplifier.class)
public abstract class CurrentAmplifierBase
extends ScannableBase
implements CurrentAmplifier
Base class for the CurrentAmplifier interface
-
Nested Class Summary
Nested classes/interfaces inherited from interface gda.device.CurrentAmplifier
CurrentAmplifier.Status -
Field Summary
FieldsModifier and TypeFieldDescriptionFields 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 TypeMethodDescriptionvoidasynchronousMoveTo(Object position) Trigger a move/operation and return immediately.checkPositionValid(Object position) This default behaviour should be extended by most subclasses! This default behaviour should be extended by most subclasses! Tests if the given object is meaningful to this Scannable and so could be used by one of the move commands.String[]Returns an array of all possible gain positions which this device can be moved to.String[]Returns an array of all possible gain units which this device can be moved to.String[]Returns an array of all possible mode positions which this device can be set to.Returns the current position of the Scannable.booleanisBusy()Check if the Scannable is moving/operating.Methods inherited from class gda.device.scannable.ScannableBase
__call__, __call__, __doc__, __getitem__, __len__, __repr__, __str__, atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, atScanStart, externalToInternal, getExtraNames, getInputNames, getLevel, getOutputFormat, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, internalToExternal, isAt, moveTo, rawAsynchronousMoveTo, rawGetPosition, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, stop, throwExceptionIfInvalidTarget, toFormattedString, 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
configure, 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.CurrentAmplifier
getCurrent, getGain, getGainUnit, getMode, getStatus, listGains, setGain, setGainUnit, setModeMethods 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
atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, atScanStart, getExtraNames, getInputNames, getLevel, getOutputFormat, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, isAt, moveTo, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, stop, toFormattedString, waitWhileBusy
-
Field Details
-
gainPositions
-
gainUnits
-
modePositions
-
-
Constructor Details
-
CurrentAmplifierBase
public CurrentAmplifierBase()
-
-
Method Details
-
getGainPositions
Description copied from interface:CurrentAmplifierReturns an array of all possible gain positions which this device can be moved to.- Specified by:
getGainPositionsin interfaceCurrentAmplifier- Returns:
- an array of gain positions
- Throws:
DeviceException
-
getGainUnits
Description copied from interface:CurrentAmplifierReturns an array of all possible gain units which this device can be moved to.- Specified by:
getGainUnitsin interfaceCurrentAmplifier- Returns:
- an array of gain units
- Throws:
DeviceException
-
getModePositions
Description copied from interface:CurrentAmplifierReturns an array of all possible mode positions which this device can be set to.- Specified by:
getModePositionsin interfaceCurrentAmplifier- Returns:
- an array of mode positions
- Throws:
DeviceException
-
asynchronousMoveTo
Description copied from class:ScannableBaseTrigger a move/operation and return immediately. Implementations of this method should be non-blocking to allow concurrent motion; the isBusy method will be used to determine when the move has completed. Converts the external (user) position to an internal position and passes this to rawAsynchronousMoveTo.- Specified by:
asynchronousMoveToin interfaceScannable- Overrides:
asynchronousMoveToin classScannableBase- Parameters:
position- Position to move to should have an element for each input field.- Throws:
DeviceException
-
getPosition
Description copied from class:ScannableBaseReturns the current position of the Scannable. Called by ConcurentScan at the end of the point. Reads an internal (hardware) position from rawGetPosition, converts this to an external (user) position and returns it.- Specified by:
getPositionin interfaceScannable- Overrides:
getPositionin classScannableBase- Returns:
- Current position with an element for each input and extra field. null if their are no fields.
- Throws:
DeviceException
-
isBusy
public boolean isBusy()Description copied from interface:ScannableCheck if the Scannable is moving/operating. -
checkPositionValid
Description copied from class:ScannableBaseThis default behaviour should be extended by most subclasses! Tests if the given object is meaningful to this Scannable and so could be used by one of the move commands. May check limits and other things too. This is the method called by scans on all points before the scan is run.- Specified by:
checkPositionValidin interfaceScannable- Overrides:
checkPositionValidin classScannableBase- Parameters:
position-- Returns:
- null if position is valid, or returns a description if not.
- See Also:
-