Interface IPositionListenable
- All Known Subinterfaces:
IPositioner,IScanDevice
- All Known Implementing Classes:
AbstractScannable,BeamScannable,CalibrationFrameCollector,CompositeNexusScannable,CountableScannable,DetectorCollectionScannable,FrameCollectingScannable,JythonScannableNexusWrapper,MockBeamOnMonitor,MockCountingPositionScannable,MockNeXusScannable,MockNeXusSlit,MockPausingMonitor,MockScannable,MockStringNexusScannable,MockStringScannable,MockTopupScannable,NexusSlitsWrapper,ScannableNexusWrapper
public interface IPositionListenable
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddPositionListener(IPositionListener listener) Use to be notified as levels / positions are reached.default IPositionerIf there is a current IPositioner available, this is returned.voidremovePositionListener(IPositionListener listener) Use to be notified as levels / positions are reached.default voidsetPositioner(IPositioner positioner) If there is a current IPositioner available, this is returned.
-
Method Details
-
addPositionListener
Use to be notified as levels / positions are reached. Not usually necessary as setPosition is blocking until the position is reached but useful for other objects which need to change when new positions are reached.- Parameters:
listener-
-
removePositionListener
Use to be notified as levels / positions are reached.- Parameters:
listener-
-
getPositioner
If there is a current IPositioner available, this is returned. Often an IPositionListenable will not implement getPositioner() or may not be back by an object directly moving position.Use with Caution!
- Returns:
-
setPositioner
If there is a current IPositioner available, this is returned. Often an IPositionListenable will not implement getPositioner() or may not be back by an object directly moving position.Use with Caution!
- Throws:
IllegalArgumentException- if there is no positioner
-