Package gda.px.smargon
Class SmarGonXyzScannableGroup
java.lang.Object
gda.factory.ConfigurableBase
gda.factory.FindableConfigurableBase
gda.device.DeviceBase
gda.device.scannable.ScannableBase
gda.device.scannable.scannablegroup.ScannableGroup
gda.px.smargon.SmarGonXyzScannableGroup
- All Implemented Interfaces:
Device,Scannable,IScannableGroup,Configurable,Findable,gda.observable.IObservable,gda.observable.IObserver
@ServiceInterface(IScannableGroup.class)
public class SmarGonXyzScannableGroup
extends ScannableGroup
-
Field Summary
FieldsFields 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 internalPosition) Trigger a move/operation and return immediately.booleanisBusy()Check if the Scannable is moving/operating.voidTrigger a move/operation and block until completion.voidsetDeferredMoves(DeferredMoves deferredMoves) voidsetSmarGonController(SmarGonController smarGonController) voidReturns when operation carried out by moveTo has completedvoidwaitWhileBusyWithTimeout(int timeoutSeconds) Methods inherited from class gda.device.scannable.scannablegroup.ScannableGroup
__getattr__, addGroupMember, addGroupMember, atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, atScanStart, checkPositionValid, configure, extractPositionsFromObject, getExtraNames, getGroupMember, getGroupMemberNames, getGroupMembers, getGroupMembersAsArray, getInputNames, getOutputFormat, getPosition, getUnits, isDemandAllScannablePositions, removeGroupMemberByIndex, removeGroupMemberByScannable, setDemandAllScannablePositions, setExtraNames, setGroupMembers, setGroupMembersWithArray, setGroupMembersWithList, setInputNames, stop, toFormattedString, toString, updateMethods inherited from class gda.device.scannable.ScannableBase
__call__, __call__, __doc__, __getitem__, __len__, __repr__, __str__, externalToInternal, getLevel, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, internalToExternal, isAt, rawAsynchronousMoveTo, rawGetPosition, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, throwExceptionIfInvalidTarget, validateScannable, valueUnavailableString, 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, reconfigure, setConfiguredMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gda.factory.Configurable
isConfigureAtStartup, isConfigured, reconfigureMethods 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
getLevel, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, isAt, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes
-
Field Details
-
moveTimeout
public final int moveTimeout
-
-
Constructor Details
-
SmarGonXyzScannableGroup
public SmarGonXyzScannableGroup()
-
-
Method Details
-
setSmarGonController
-
setDeferredMoves
-
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 classScannableGroup- Parameters:
internalPosition- Position to move to should have an element for each input field.- Throws:
DeviceException
-
moveTo
Description copied from class:ScannableBaseTrigger a move/operation and block until completion. If this is overridden, asynchronousMoveTo must also be valid, and the externalToInternal conversion must be applied.- Specified by:
moveToin interfaceScannable- Overrides:
moveToin classScannableBase- Parameters:
position-- Throws:
DeviceException
-
isBusy
Description copied from interface:ScannableCheck if the Scannable is moving/operating.- Specified by:
isBusyin interfaceScannable- Overrides:
isBusyin classScannableGroup- Returns:
- true - if operation carried out by moveTo has not completed yet
- Throws:
DeviceException
-
waitWhileBusy
Description copied from class:ScannableBaseReturns when operation carried out by moveTo has completed If this is to be overriden, isBusy must also be valid. Although the pos and scan command currently use this method to determine if the Scannable is busy, this must not be relied upon.- Specified by:
waitWhileBusyin interfaceScannable- Overrides:
waitWhileBusyin classScannableGroup- Throws:
DeviceExceptionInterruptedException
-
waitWhileBusyWithTimeout
public void waitWhileBusyWithTimeout(int timeoutSeconds) throws DeviceException, InterruptedException, TimeoutException
-