BBN-Q / PyQLab

A python library for instrument control and superconducting QIP experiments.
Apache License 2.0
25 stars 11 forks source link

Initial implementation of object based drivers #68

Closed bcdonovan closed 9 years ago

bcdonovan commented 9 years ago

This PR factors out existing hardware drivers into their own directory. Driver model is now object based rather than multimethod based. Additional drivers may be implemented by creating a new subclass of AWGDriver & AWG and implementing a Pattern file.

The *Pattern files may be merged into the driver classes if we like but this is a pretty minimal set of changes relative to the existing develop baseline.

The new instruments/drivers directory is searched looking for classes which are instances of AWG. These classes are automatically registered in the AWGList and then populated in the GUI.

I have purposefully separated the AWGDriver class from the AWG class to make it clear which methods are intended to be overridden by new drivers.

blakejohnson commented 9 years ago

This looks great, thanks.