Class PlateSampleChangerBase
java.lang.Object
gda.factory.ConfigurableBase
gda.factory.FindableConfigurableBase
gda.device.DeviceBase
uk.ac.gda.devices.insitu.samplechanger.PlateSampleChangerBase
- All Implemented Interfaces:
Device,Stoppable,Configurable,Findable,gda.observable.IObservable,gda.observable.IObserver,BlockedPositions,SampleChanger
public class PlateSampleChangerBase
extends DeviceBase
implements SampleChanger, gda.observable.IObserver
-
Field Summary
Fields inherited from class gda.device.DeviceBase
DEFAULT_PROTECTION_LEVEL_PROPERTYFields inherited from interface gda.px.sampleChanger.SampleChanger
APPROVERNAME, ATTRIBUTE_IS_SOAKING, EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionFor SampleChangers which are set to read barcodes, returns as a string the barcode of the sample mounted during the last load operation.intReturns the number of the holder of the current loaded sample.Returns a string representing the type of puck in useintReturns the number of holders (pucks) over all available dewars to load from.booleanintGet the position in its holder of the currently loaded sample.intgetSamplesInHolder(int holder) Returns the number of samples in the specified holder (puck).Returns a string of the Java class of the type of this sample changer.booleanReturnstrueif the user needs to centre the crystal.booleanReturns true if this sample changer is in use for loading samples.booleanisPositionBlocked(int holder, int sample) booleanReturns true if a sample is in the sample position on the beamline.booleanisSampleLoaded(int holder, int sample) Returns true if loaded sample has the specified index.voidload(int holder, int sample) Load a sample.voidsetActionApproverName(String actionApproverName) voidsetCentreRequired(boolean centringRequired) Sets the centre required flag.voidsetController(PlateController controller) voidsetEnabled(boolean isEnabled) Sets if the sample changer is currently in use.voidsetHolderType(String puckType) Sets a string representing the type of puck in use e.g.voidsetInventory(PlateInventory inventory) voidsetLoadedSample(int holder, int sample) Sets the holder and sample numbers of the loaded sample.voidsetNumberOfHolders(int numberOfHolders) Sets the number of total holders (pucks/magazines/plates etc.) that the sample changer can load fromvoidsetReadingBarcodes(boolean readDuringLoad) Sets whether to read barcodes during each load operationvoidsetSamplesInHolder(int holder, int samples) Sets the number of samples in the specified holder.voidstop()Stops the current operation.voidunload()Unloads the current sample without loading a new one.voidbooleanReturns when the sample changer has finished its current operation.Methods 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, toString, wait, wait, waitMethods inherited from interface gda.factory.Configurable
configure, isConfigureAtStartup, isConfigured, reconfigureMethods inherited from interface gda.device.Device
close, getAttribute, getProtectionLevel, setAttribute, setProtectionLevelMethods inherited from interface gda.observable.IObservable
addIObserver, deleteIObserver, deleteIObservers
-
Constructor Details
-
PlateSampleChangerBase
public PlateSampleChangerBase()
-
-
Method Details
-
getActionApproverName
- Specified by:
getActionApproverNamein interfaceSampleChanger- Returns:
- name of the action approver object in the top-level Jython namespace
- Throws:
DeviceException
-
getBarcode
Description copied from interface:SampleChangerFor SampleChangers which are set to read barcodes, returns as a string the barcode of the sample mounted during the last load operation.- Specified by:
getBarcodein interfaceSampleChanger- Returns:
- the barcode of the currently mounted sample
- Throws:
DeviceException
-
getController
-
getHolder
Description copied from interface:SampleChangerReturns the number of the holder of the current loaded sample.- Specified by:
getHolderin interfaceSampleChanger- Returns:
- int
- Throws:
DeviceException
-
getHolderType
Description copied from interface:SampleChangerReturns a string representing the type of puck in use- Specified by:
getHolderTypein interfaceSampleChanger- Returns:
- string
- Throws:
DeviceException
-
getInventory
-
getNumberOfHolders
Description copied from interface:SampleChangerReturns the number of holders (pucks) over all available dewars to load from.- Specified by:
getNumberOfHoldersin interfaceSampleChanger- Returns:
- int
- Throws:
DeviceException
-
getReadingBarcodes
- Specified by:
getReadingBarcodesin interfaceSampleChanger- Returns:
- true if the samplechanger will read barcodes during loading.
- Throws:
DeviceException
-
getSample
Description copied from interface:SampleChangerGet the position in its holder of the currently loaded sample.- Specified by:
getSamplein interfaceSampleChanger- Returns:
- int
- Throws:
DeviceException
-
getSamplesInHolder
Description copied from interface:SampleChangerReturns the number of samples in the specified holder (puck).- Specified by:
getSamplesInHolderin interfaceSampleChanger- Parameters:
holder- the holder number (starting from 1)- Returns:
- the number of samples in that holder
- Throws:
DeviceException
-
getStatus
- Specified by:
getStatusin interfaceSampleChanger- Returns:
- the current status of the sample changer as a SampleChangerStatus object
- Throws:
DeviceException
-
getTypeString
Description copied from interface:SampleChangerReturns a string of the Java class of the type of this sample changer.- Specified by:
getTypeStringin interfaceSampleChanger- Returns:
- java.lang.String
- Throws:
DeviceException
-
isCentreRequired
Description copied from interface:SampleChangerReturnstrueif the user needs to centre the crystal.- Specified by:
isCentreRequiredin interfaceSampleChanger- Throws:
DeviceException
-
isEnabled
Description copied from interface:SampleChangerReturns true if this sample changer is in use for loading samples.- Specified by:
isEnabledin interfaceSampleChanger- Returns:
- boolean
- Throws:
DeviceException
-
isSampleLoaded
Description copied from interface:SampleChangerReturns true if a sample is in the sample position on the beamline.- Specified by:
isSampleLoadedin interfaceSampleChanger- Returns:
- boolean
- Throws:
DeviceException
-
isSampleLoaded
Description copied from interface:SampleChangerReturns true if loaded sample has the specified index.- Specified by:
isSampleLoadedin interfaceSampleChanger- Parameters:
holder- the holder index (≥1)sample- the sample index (≥1)- Returns:
- boolean
- Throws:
DeviceException
-
load
Description copied from interface:SampleChangerLoad a sample.- Specified by:
loadin interfaceSampleChanger- Parameters:
holder- the holder number (≥1)sample- the sample number (≥1)- Throws:
DeviceException
-
setActionApproverName
- Specified by:
setActionApproverNamein interfaceSampleChanger- Parameters:
actionApproverName-- Throws:
DeviceException
-
setCentreRequired
Description copied from interface:SampleChangerSets the centre required flag. This enables the detector to be told when manual centring has been successfully completed.- Specified by:
setCentreRequiredin interfaceSampleChanger- Parameters:
centringRequired-- Throws:
DeviceException
-
setController
-
setEnabled
Description copied from interface:SampleChangerSets if the sample changer is currently in use.- Specified by:
setEnabledin interfaceSampleChanger- Parameters:
isEnabled-- Throws:
DeviceException
-
setHolderType
Description copied from interface:SampleChangerSets a string representing the type of puck in use e.g. "Rigaku"- Specified by:
setHolderTypein interfaceSampleChanger- Parameters:
puckType-- Throws:
DeviceException
-
setInventory
-
setLoadedSample
Description copied from interface:SampleChangerSets the holder and sample numbers of the loaded sample. To be used if a sample is manually mounted onto the sample changer.- Specified by:
setLoadedSamplein interfaceSampleChanger- Parameters:
holder- the holder numbersample- the sample number- Throws:
DeviceException
-
setNumberOfHolders
Description copied from interface:SampleChangerSets the number of total holders (pucks/magazines/plates etc.) that the sample changer can load from- Specified by:
setNumberOfHoldersin interfaceSampleChanger- Parameters:
numberOfHolders-- Throws:
DeviceException
-
setReadingBarcodes
Description copied from interface:SampleChangerSets whether to read barcodes during each load operation- Specified by:
setReadingBarcodesin interfaceSampleChanger- Parameters:
readDuringLoad-- Throws:
DeviceException
-
setSamplesInHolder
Description copied from interface:SampleChangerSets the number of samples in the specified holder. Used when changing the puck type mid-experiment.- Specified by:
setSamplesInHolderin interfaceSampleChanger- Parameters:
holder- the holder number (starting from 1)samples- the number of samples in that holder- Throws:
DeviceException
-
stop
Description copied from interface:StoppableStops the current operation.- Specified by:
stopin interfaceSampleChanger- Specified by:
stopin interfaceStoppable- Throws:
DeviceException
-
unload
Description copied from interface:SampleChangerUnloads the current sample without loading a new one.- Specified by:
unloadin interfaceSampleChanger- Throws:
DeviceException
-
update
- Specified by:
updatein interfacegda.observable.IObserver
-
waitForIdle
Description copied from interface:SampleChangerReturns when the sample changer has finished its current operation.- Specified by:
waitForIdlein interfaceSampleChanger- Returns:
- true if the current operation was successful
- Throws:
DeviceException
-
isPositionBlocked
public boolean isPositionBlocked(int holder, int sample) - Specified by:
isPositionBlockedin interfaceBlockedPositions
-
getBlockedPositions
- Specified by:
getBlockedPositionsin interfaceBlockedPositions
-