Package org.eclipse.scanning.api.device
package org.eclipse.scanning.api.device
-
ClassDescriptionA device should create its own model when its constructor is called.TODO FIXME Is the idea of having request/response calls correct for exposing services on the server to the client? Disadvantages: 1.Deprecated, for removal: This API element is subject to removal in a future version.whether monitors (i.e.A device controller takes input from several clients and ensures that each of their preferences about pausing the device being controlled is taken into account.IDeviceWatchdog<T extends IDeviceWatchdogModel>A watchdog may be started to run with a scan.Welcome to WatchdogsAn IDevice is the runner for the whole scan but also for individual detectors.Anatomy of a CPU scan (non-malcolm)
_________
_| |________ collectData() Tell detector to collect
_________
_________| |_ readout() Tell detector to readout
_______
_________| |___ moveTo() Scannables move motors to new position
A MalcolmDevice is also an IScanner which may operate with an arbitrary model, usually driving hardware.
IParserService pservice = ...// OSGi
// Parse the scan command, throws an exception
IParserResultparser = pservice.createParser(...)
// e.g.A runnable device which also allows the ability to listen to when it will run and after it has run.AnIRunnableDevicethat performs a scan when itsIRunnableDevice.run()method is called.Clients do not need to consume this service, it is used to provide connection to devices which already exist, like those in GDA8.Anatomy of a CPU scan (non-malcolm) Making GDA8 Detectors work with GDA9 (org.eclipse.scanning) requires usage of the GDA8 IHardwareConnectionService.An enumeration of the roles that a device can have in a scan.