Ephus and ScanImage interface to a growing range of hardware devices. Frequently, custom software interfaces to these devices must be developed, allowing their capabilities to be accessed via scripting in Matlab.
Such device interfaces are developed as part of a growing Matlab package of devices classes called Dabs. (See list below.) The current version of this package is included with all recent and planned releases of ScanImage.
Some users may find some of these device interfaces useful in and of themselves – i.e. as a Matlab object-oriented scripting interface for these devices. Note that the interfaces are provided as-is and their distribution/maintenance is not presently a primary aim of the ScanImage/Ephus projects. (Any issues affecting ScanImage/Ephus operation, however, should be brought to the developers' attention (mailto:iyerv@janelia.hhmi.org?subject=\[ScanImage/Ephus Feedback\]).)
Help Wanted!
User-contributions to the Dabs package are encouraged and welcomed, as they may be of general benefit to the community. In some cases, abstract superclasses are included in the Dabs package to facilitate the development of device interfaces to a common standard. For instance a Linear Stage Controller superclass has been developed. Users can create custom subclasses for their particular stage controllers, allowing ScanImage to operate with these devices.
Please let us know (mailto:iyerv@janelia.hhmi.org?subject=\[ScanImage/Ephus Feedback\]) if you develop a device interface class, or package of classes, so we may include it in a future release.
Note that Ephus makes use of two earlier-style Matlab device interfaces: NiMex and QCamMex.