public interface MicroscopeInternal
Modifier and Type | Method and Description |
---|---|
void |
addConfigurationListener(MicroscopeConfigurationListener listener)
Adds a listener which gets informed if the configuration of the microscope changes.
|
void |
addMessageListener(MessageListener listener)
Adds a listener which gets informed when the state of the microscope
changes.
|
void |
applyDeviceSetting(DeviceSetting setting,
int accessID)
Sets the given device property to the given value.
|
void |
applyDeviceSettingAsync(DeviceSetting setting,
int accessID)
Sets the given device property to the given value.
|
void |
applyDeviceSettings(DeviceSetting[] settings,
int accessID)
Sets the given device properties to the given values.
|
void |
applyDeviceSettingsAsync(DeviceSetting[] settings,
int accessID)
Sets the given device properties to the given values.
|
void |
emergencyStop()
Stops the XY stage of the microscope and prevents ASAP any other thread
to obtain access to the microscope.
|
AutoFocusDeviceInternal |
getAutoFocusDevice()
Returns the current default auto-focus device.
|
AutoFocusDeviceInternal |
getAutoFocusDevice(java.lang.String deviceID)
Returns the auto-focus device with the given name.
|
AutoFocusDeviceInternal[] |
getAutoFocusDevices()
Returns a list of all installed auto-focus devices.
|
CameraDeviceInternal |
getCameraDevice()
Returns the current default camera device.
|
CameraDeviceInternal |
getCameraDevice(java.lang.String name)
Returns the camera device with the given name.
|
CameraDeviceInternal[] |
getCameraDevices()
Returns all currently installed camera devices.
|
DeviceInternal |
getDevice(java.lang.String name)
Returns the device of this microscope with the given name.
|
DeviceLoaderInternal |
getDeviceLoader()
Returns a class with which the device driver settings of the microscope can be modified.
|
DeviceInternal[] |
getDevices()
Returns a list of all devices of this microscope, or an empty list if this microscope does not have any devices.
|
DeviceInternal[] |
getDevices(DeviceType type)
Returns a list of all devices of the given type, or an empty list if no such device is configured.
|
FocusDeviceInternal |
getFocusDevice()
Returns the current default focus device.
|
FocusDeviceInternal |
getFocusDevice(java.lang.String deviceID)
Returns the focus device with the given name.
|
FocusDeviceInternal[] |
getFocusDevices()
Returns a list of all installed focus devices.
|
MicroscopeConfigurationInternal |
getMicroscopeConfiguration()
Returns an interface with which general configuration settings of the microscope can be changed.
|
ShutterDeviceInternal |
getShutterDevice()
Returns the current default shutter device.
|
ShutterDeviceInternal |
getShutterDevice(java.lang.String deviceID)
Returns the shutter device with the given name.
|
ShutterDeviceInternal[] |
getShutterDevices()
Returns a list of all installed shutter devices.
|
StageDeviceInternal |
getStageDevice()
Returns the current default stage device.
|
StageDeviceInternal |
getStageDevice(java.lang.String deviceID)
Returns the stage device with the given name.
|
StageDeviceInternal[] |
getStageDevices()
Returns all installed stage devices.
|
StateDeviceInternal |
getStateDevice(java.lang.String name)
Returns the state device with the given name.
|
StateDeviceInternal[] |
getStateDevices()
Returns a list of all installed state devices.
|
void |
initializeMicroscope(int accessID)
Initializes the microscope.
|
boolean |
isEmergencyStopped()
Returns true if microscope is currently in the emergency-stop state.
|
void |
lockExclusiveWrite(int accessID)
Locks the microscope for a longer time (e.g.
|
void |
removeConfigurationListener(MicroscopeConfigurationListener listener)
Removes a previously added listener
|
void |
removeMessageListener(MessageListener listener)
Removes a previously added listener.
|
void |
resetEmergencyStop()
Resets the emergency-stop state, such that microscope can be accessed
again.
|
void |
setAutoFocusDevice(java.lang.String deviceID,
int accessID)
Sets the default auto-focus device.
|
void |
setCameraDevice(java.lang.String cameraDevice,
int accessID)
Sets the current default camera device.
|
void |
setFocusDevice(java.lang.String deviceID,
int accessID)
Sets the default focus device.
|
void |
setShutterDevice(java.lang.String deviceID,
int accessID)
Sets the default shutter device.
|
void |
setStageDevice(java.lang.String deviceID,
int accessID)
Sets the default stage device.
|
void |
uninitializeMicroscope(int accessID)
Uninitializes the microscope.
|
void |
unlockExclusiveWrite(int accessID)
Unlocks the previously acquired lock.
|
DeviceLoaderInternal getDeviceLoader() throws java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
- If modifying device driver settings is not supported.MicroscopeConfigurationInternal getMicroscopeConfiguration()
DeviceInternal[] getDevices()
DeviceInternal[] getDevices(DeviceType type)
type
- Type of the devices to query for.DeviceInternal getDevice(java.lang.String name) throws DeviceException
name
- Name of the device.DeviceException
- Thrown if the given device could not be found.FocusDeviceInternal getFocusDevice() throws DeviceException
DeviceException
FocusDeviceInternal[] getFocusDevices()
FocusDeviceInternal getFocusDevice(java.lang.String deviceID) throws DeviceException
deviceID
- Name of focus device.DeviceException
AutoFocusDeviceInternal getAutoFocusDevice() throws DeviceException
DeviceException
AutoFocusDeviceInternal[] getAutoFocusDevices()
AutoFocusDeviceInternal getAutoFocusDevice(java.lang.String deviceID) throws DeviceException
deviceID
- ID of the auto-focus device.DeviceException
void setFocusDevice(java.lang.String deviceID, int accessID) throws DeviceException, MicroscopeLockedException
deviceID
- Name of focus device.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.DeviceException
MicroscopeLockedException
void setAutoFocusDevice(java.lang.String deviceID, int accessID) throws DeviceException, MicroscopeLockedException
deviceID
- Name of auto-focus device.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.DeviceException
MicroscopeLockedException
void setShutterDevice(java.lang.String deviceID, int accessID) throws DeviceException, MicroscopeLockedException
deviceID
- Name of shutter device.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.DeviceException
MicroscopeLockedException
ShutterDeviceInternal getShutterDevice() throws DeviceException
DeviceException
ShutterDeviceInternal[] getShutterDevices()
ShutterDeviceInternal getShutterDevice(java.lang.String deviceID) throws DeviceException
deviceID
- Name of shutter device.DeviceException
StageDeviceInternal getStageDevice() throws DeviceException
DeviceException
StageDeviceInternal[] getStageDevices()
StageDeviceInternal getStageDevice(java.lang.String deviceID) throws DeviceException
deviceID
- Name of stage device.DeviceException
void setStageDevice(java.lang.String deviceID, int accessID) throws DeviceException, MicroscopeLockedException
deviceID
- Name of stage device.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.DeviceException
MicroscopeLockedException
CameraDeviceInternal getCameraDevice() throws DeviceException
DeviceException
void setCameraDevice(java.lang.String cameraDevice, int accessID) throws DeviceException, MicroscopeLockedException
cameraDevice
- Name of the camera device which should be the default device.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.DeviceException
MicroscopeLockedException
CameraDeviceInternal[] getCameraDevices()
CameraDeviceInternal getCameraDevice(java.lang.String name) throws DeviceException
name
- Name of the camera device.DeviceException
void applyDeviceSetting(DeviceSetting setting, int accessID) throws SettingException, MicroscopeLockedException, MicroscopeException, java.lang.InterruptedException
setting
- Structure containing device, property and value configuration.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.SettingException
MicroscopeLockedException
MicroscopeException
java.lang.InterruptedException
void applyDeviceSettings(DeviceSetting[] settings, int accessID) throws SettingException, MicroscopeLockedException, MicroscopeException, java.lang.InterruptedException
settings
- Array of structures containing device, property and value
configurations.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.SettingException
MicroscopeLockedException
MicroscopeException
java.lang.InterruptedException
void applyDeviceSettingAsync(DeviceSetting setting, int accessID) throws SettingException, MicroscopeLockedException, MicroscopeException, java.lang.InterruptedException
setting
- Structure containing device, property and value configuration.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.SettingException
MicroscopeLockedException
MicroscopeException
java.lang.InterruptedException
void applyDeviceSettingsAsync(DeviceSetting[] settings, int accessID) throws SettingException, MicroscopeLockedException, MicroscopeException, java.lang.InterruptedException
settings
- Array of structures containing device, property and value
configurations.accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.SettingException
MicroscopeLockedException
MicroscopeException
java.lang.InterruptedException
void lockExclusiveWrite(int accessID) throws MicroscopeLockedException
accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.MicroscopeLockedException
- Thrown if microscope is already locked for a longer time by
somebody else.void unlockExclusiveWrite(int accessID) throws MicroscopeLockedException
accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID or not locked at all, a MicroscopeLockedException is thrown.MicroscopeLockedException
- Thrown if this microscope object is not the owner of the exclusive write lock.void initializeMicroscope(int accessID) throws MicroscopeException, MicroscopeLockedException, java.lang.InterruptedException
accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.MicroscopeException
MicroscopeLockedException
java.lang.InterruptedException
void uninitializeMicroscope(int accessID) throws MicroscopeException, MicroscopeLockedException, java.lang.InterruptedException
accessID
- The access ID of the current microscope object. If the microscope is locked with a different accessID, a MicroscopeLockedException is thrown.MicroscopeException
MicroscopeLockedException
java.lang.InterruptedException
void emergencyStop()
void resetEmergencyStop()
boolean isEmergencyStopped()
void addMessageListener(MessageListener listener)
listener
- The listener.void removeMessageListener(MessageListener listener)
listener
- The listener.StateDeviceInternal getStateDevice(java.lang.String name) throws DeviceException
name
- Name of state device.DeviceException
StateDeviceInternal[] getStateDevices()
void addConfigurationListener(MicroscopeConfigurationListener listener)
listener
- Listener to add.void removeConfigurationListener(MicroscopeConfigurationListener listener)
listener
- Listener to remove.